In the realm of AI, language models like ChatGPT have revolutionized how we interact with machines. However, as efficient as these models are, they encounter certain limitations. One key hurdle is their inability to seamlessly integrate and reason with new, personalized, or up-to-date data, which is often critical for users.
Language models have a knowledge cut-off, beyond which they aren't informed about new world events, scientific discoveries, or technological breakthroughs. They may also lack depth in specific knowledge domains, struggle with real-time data, and produce outputs that might need fact-checking for accuracy. Additionally, users desire AI interactions tailored to their profiles and control over their data, which requires the AI to access user-specific data.
Enter "Gold Retriever", a powerful open-source tool powered by Jina and DocArray, that addresses these very needs.
It equips users to create custom plugins that enable ChatGPT to interact with their data, overcoming inherent limitations. Gold Retriever acts as a bridge linking ChatGPT with the vast and dynamic world of data, making AI interactions more meaningful, accurate, and personal.
Gold Retriever in Action: Study Assistant
To better illustrate how Gold Retriever works, let's consider a practical scenario. Imagine you're a student seeking assistance from ChatGPT with your coursework. However, your course materials exceed ChatGPT's prompt limit, preventing you from getting the help you need. That's exactly where Gold Retriever comes in handy.
In this example, we'll use resources from MIT's open course - Ecology I: The Earth System.
The first step is to gather all relevant text files in one directory, which will serve as your data source. Next, you'll need to create a Gold Retriever plugin. Here's how:
Install Gold Retriever via pip with the command:
pip install goldretriever
Now, deploy a plugin providing your OpenAI key:
goldretriever deploy --key <your openai key>
After deployment, make a note of the "Gateway (HTTP)" URL and the Bearer token, as you'll need them to incorporate the plugin into ChatGPT.
╭──────────────────────── 🎉 Flow is available! ────────────────────────╮
│ │
│ ID retrieval-plugin-<plugin id> │
│ Gateway (Http) https://retrieval-plugin-<plugin id>.wolf.jina.ai │
│ Dashboard https://dashboard.wolf.jina.ai/flow/<plugin id> │
│ │
╰───────────────────────────────────────────────────────────────────────╯
Bearer token: <your bearer token>
Next, let's index the data we've gathered:
goldretriever index --data <dir_name>
With the data indexed successfully, the plugin can now be integrated into ChatGPT. Navigate to plugins, choose "Develop your own plugin", and provide the "Gateway (HTTP)" URL and Bearer token from the deployment phase. Voila! Your plugin is now installed and ready for a test run!
With Gold Retriever at your disposal, there are numerous ways to use ChatGPT to assist with coursework. A fun and effective studying strategy is to create flashcards from course materials, and you can enlist ChatGPT's help for this task:
ChatGPT looks into your notes, extracts relevant material about the chosen topic (Thermodynamics, in this instance), and creates comprehensive flashcards based on the information. It can also provide further clarification on certain concepts:
ChatGPT first identifies the example you're seeking and then responds with a detailed explanation.
This case study showcases just one of the countless applications for Gold Retriever. If you have textual data that you'd like ChatGPT to remember and use, Gold Retriever is your go-to tool.
Be sure to watch the video for the full tutorial:
For more information, head over to the Gold Retriever repository and join the discussion on Discord. Happy coding!