-
-
Notifications
You must be signed in to change notification settings - Fork 2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: Assistant API #1273
Comments
|
In the effort to contribute on this, I started collecting the requirements and functionalities offered by the Assistant API. Assistant functionalities
Links |
First PR in that direction adding File API: #1703 |
I have a few ideas for vector search in order of my personal preference:
All could exist at once. I like the first one for the use-case where someone has a limited number of documents and/or search volume. Also for being the default choice in LocalAI without incurring a lot of maintenance or bloat. It should be relatively simple because:
So I went ahead and started an experiment external to LocalAI: https://github.com/richiejp/badger-cybertron-vector/blob/main/main.go It's probably really slow due to copying the keys, lack of parallel execution and such, but it works. I expect these things can be optimized. The question is whether to go with BadgerDB or a pure in memory implementation? BTW Cybertron is pretty cool, that could be a new backend. |
Perhaps instead of, or in addition to what I have done with the basic vector search. We could have a higher level API which is backed by https://github.com/bclavie/ragatouille as a starting point. The reason is that it seems colBERT v2 is far superior to basic cosine similarity search, but it is difficult to unpack it and get it to work with some arbitrary vector database. It's possibly the wrong level of abstraction for LocalAI to be working at even internally. Opinions on implementing Ragatouille or colBERT (https://github.com/stanford-futuredata/ColBERT) as a backend? |
I'm mainly thinking of the indexing and retrieval Ragatuille APIs https://github.com/bclavie/ragatouille?tab=readme-ov-file#%EF%B8%8F-indexing |
+1 for Ragatouille |
I just discovered Open Interpreter and OpenCodeInterpreter, which may be used as a OpenAI's Code Interpreter tool replacement for LocalAI Assistant API implementation |
I also discovered MY Local Assistant (myla) and astra-assistants-api two local implementations of OpenAI Assistants API. Maybe these projects can be integrated in LocalAI or, at least, help to develop the LocalAI implementation. |
OpenAI released the Assistant API. https://platform.openai.com/docs/assistants/overview
This thread is to collect thoughts on how to integrate this - it seems we have already all the needed pieces, but it's needed to stich things together to expose a similar API.
I didn't had a closer look at the API yet - not on my radar until #1126 is completed
For reference, the OpenAI API spec: https://github.com/openai/openai-openapi
The text was updated successfully, but these errors were encountered: