Building an AI assistant for RFP responses

Bernardo Aceituno

Bernardo Aceituno

@bernaceituno

Building an AI assistant for RFP responses

Leverage AI to draft effective RFP responses

Crafting compelling responses to Request for Proposals (RFPs) can make the difference between winning and losing valuable opportunities. Stack AI, a no-code orchestration tool designed for building applications with large language models, puts the power of AI in your hands, enabling you to create an RFP assistant to transforms your response process.

With Stack AI, you can develop an intelligent assistant that analyzes RFP documents, extracts crucial information, and generates high-quality, tailored responses. This AI-powered approach streamlines your workflow, saves time and resources, and ensures consistency across all your RFP submissions.

As you connect your knowledge bases to Stack AI, your AI assistant will adapt to your company's unique value proposition and writing style. Your assistant will produce increasingly persuasive and polished responses that showcase your organization's strengths and capabilities.

In this blog post, we will walk you through the process of building an AI-driven RFP assistant using Stack AI. We will explore the features and benefits of this no-code tool and provide a step-by-step guide on integrating your AI assistant seamlessly into your existing RFP workflow. By the end of this post, you will have the knowledge and tools to harness the power of AI and gain a competitive advantage in winning new business through impactful RFP responses.

Architecting a solution

Image Alt Text

The key requirements for a solution are as follows:

  • Inputs: the system must receive an RFP, as a document, and a user request on what section to draft.
  • Knowledge Base: the system must connect to existing business knowledge on previous RFP responses, company overview, and company talent.
  • Reasoning: the solution must find the relevant information from the knowledge base and reason over the RFP to fulfill the user task. User tasks can include: finding the right leadership for a project, listing previous example projects, or draft the introduction to a response.

These requirements must be bundled into a user interface that can be privately shared with the RFP response drafting team. These requirements translate into the following components:

  • Document Parsing: the ability to process the RFP document and extract text for downstream processing.
  • Semantic Search: a mechanism to surface all the relevant information from the company knowledge base in order to fulfill user requests.
  • Large Language Model: the core of the system is an AI model that can aggregate information from the semantic search engine and the parsed RFP in order to synthesize responses to user requests.

Combining these components results in a reliable system to synthesize business knowledge into effective responses to RFPs.

Using Stack AI

The key requirements to implement this system are readily available as modules and settings inside of the Stack AI platform. More specifically, we need to leverage:

  1. Inputs:

    • Text Input: representing the user request.
    • Document Input: representing the incoming RFP. We configure this input to run Advanced Data Extraction and expose it to the user.
  2. Knowledge Bases: Three knowledge bases that store the different sources to run semantic search. Each knowledge base is configured to import data from Sharepoint, Google Drive, Onedrive, or directly upload the files to Stack AI. We will query each knowledge base based on the users request.

    • Resume Knowledge Base: a library of resumes with the talent of the company, uploaded in .pdf or .docx format.
    • RFP responses Knowledge Base: a collection of previous RFP responses uploaded in .pdf format.
    • Company Assets Knowledge Base: the set of documentation describing the company profile, mission, vision, history, and offerings.
  3. Large Language Model: An AI that can combine the context from the knowledge bases, the user request, and the incoming RFP. Since this language model must receive entire documents, we will require a model with a large context window. In this case, we select claude-3-opus from Anthropic, since it supports 200k tokens and offers top-tier reasoning capabilities. We configure the language model under:

    • Instructions: Three sentences describing the task. One sentence describing the different data sources involved. The context from the knowledge bases to answer the user request, demarked with xml tags for clarity.
You are an assistant that helps respond to RFPs.
In each request the user will provide you with an RFP and a request on it.
 
Use the following context to answer user requests:
 
- Relevant resumes for the RFP:
 
<resumes>
{knowledge-base-0}
</resumes>
 
- Previous RFP responses:
 
<responses>
{knowledge-base-1}
</responses>
 
- General information on the company:
 
<assets>
{knowledge-base-2}
</assets>
  • Prompt: A simple message with the incoming RFP and the user request to fulfill.
Incoming RFP:
 
<RFP>
{doc-0}
</RFP>
 
User request: {in-0}
  1. Output: The response of the language model streamed.

These components are connected under the workflow of:


Inputs ➡️ Knowledge Bases ➡️ Large Language Model ➡️ Output

Putting it together

We implement this workflow in Stack AI using the instructions above, using Sharepoint as our knowledge base, resulting in the following project:

Image Alt Text

Once we complete uploading all the relevant data to the knowledge bases, we can save the project and publish it! Then, we proceed to export it.

We recommend exporting this application under a Form interface

In the export section, we will:

  1. Select Form.
  2. Go to General and give a name to our assistant.
  3. Go to General > Inputs, and select in-0 and doc-0.

The access the URL to interact with our assistant as shown below:

Image Alt Text

Conclusion: A Smarter Way to Work

Congrats! now we have completed implementing an AI assistant to complete RFP responses. Example of tasks include:

  • Provide me with a leadership section for the project proposal.
  • Draft an intro section describing our company with a focus on this project.
  • Generate a table describing other long-span bridge projects.

However, this is not the end. You can further customize your AI assistant to assist you filling RFPs by leveraging more sources of data, e.g. Google Search, Snowflake data, or Internal documentation. You can also add additional Language Models to your workflow tasked with completing specific tasks, such as drafting different sections of the RFP or extracting key details from the RFP.