Enriching Your Agent's Knowledge with Personal Documents
In BrainSoup, agents are not just confined to their built-in knowledge or what they can learn from interactions. You have the power to expand their understanding and capabilities by incorporating your own documents. This feature is particularly useful for tailoring agents to specific tasks or industries.
BrainSoup supports the following types of documents:
- Text Documents: ".txt", ".pdf", ".docx" (Microsoft Word), ".md" (Markdown)
- Audio Files: ".wav", ".flac", ".mp3", ".mpga", ".m4a", ".ogg"
- Image Files: ".jpg", ".jpeg", ".png", ".bmp", ".gif"
- Source Code Files: ".py", ".js", ".java", ".cpp", ".c", ".cs", ".html", ".css", ".php", etc. (more than 100 programming languages are supported)
Here’s how you can leverage personal documents to enhance your agents' knowledge and performance.
Utilizing the Documents Folder
BrainSoup provides a dedicated Documents
folder where you can store text files, PDFs, images, and even audio files that you want your agents to learn from. To make these documents accessible:
- Place your relevant documents into the
C:\Users\<YourUsername>\AppData\Roaming\BrainSoup\Documents\
directory. - Within the agent or chat room settings, navigate to the Allowed Documents parameter.
- Specify which documents or folders your agent should have access to. You can select individual files for precise control or entire folders for broader knowledge scope.
This method is ideal for providing deep, static knowledge that your agent can draw upon when interacting with users.
Tips:
- You can quickly access the
Documents
folder from the BrainSoup interface by going to Settings > App Folders > Documents. - When a document is allowed at the chat room level, it is automatically available to all agents participating in that chat room.
Sharing Documents in the Sandboxed File System
Each chat room in BrainSoup has its own Sandboxed File System—a secure space where files related to ongoing conversations are stored. Documents placed here are immediately available for agents participating in the chat, enriching their responses and actions during the conversation.
To share documents in a chat room’s Sandboxed File System:
- Open the chat room where you want to share documents.
- Click on the Open directory button to access its Sandboxed File System.
- Copy or move the documents you wish to share into this directory.
Agents present in the chat room will now be able to use these documents to enhance their responses and interactions.
Tip: Alternatively, you can drag and drop files directly into the chat area to upload them to the Sandboxed File System.
Remembering Past Conversations
For agents configured with the ability to remember past conversations, any document shared in the Sandboxed File System not only influences current interactions but also future ones. This capability allows agents to build upon previous knowledge and context, making them increasingly effective over time.
To enable an agent's memory of past conversations:
- Go to the agent editor dialog by double-clicking on the agent's name in the left pane.
- Ensure that the Can remember past conversations toggle is enabled.
This setting is crucial for agents required to maintain continuity over multiple interactions, providing a more personalized and coherent experience for users.
Conclusion
By leveraging these features, you can significantly enhance your BrainSoup agents' effectiveness, making them more knowledgeable and capable of handling specialized tasks or industries.
How Documents are Processed in BrainSoup:
When you add documents to BrainSoup, they undergo a series of processing stages to make them as useful as possible for your agents. Here’s a closer look at what happens behind the scenes:
1. Transcription: For documents that are images or audio files, the first step is transcription. This process converts visual content and spoken words into text that can be processed further.
2. Pre-processing: Next, a Large Language Model (LLM) takes over to consolidate and structure the information from the transcribed text or original document. This step is crucial for organizing the data in a way that optimizes it for subsequent processing.
3. Indexing: After pre-processing, the document’s content is analyzed by a specialized LLM to extract embedding vectors. These vectors represent the semantic essence of the document in a format that machines can efficiently work with.
4. Storage: Finally, these embedding vectors are stored in a local vector database within BrainSoup. This database allows agents to quickly retrieve and utilize the knowledge contained in your documents when interacting with users. This process is called Retrieval Augmented Generation (RAG).
It's important to note that steps 2 and 3—pre-processing and indexing—consume a small amount of BrainSoup credits. However, this consumption is minimal and almost negligible, ensuring that enriching your agents' knowledge base remains cost-effective.