Open Assistant API is an open-source, self-hosted AI intelligent assistant API, compatible with the official OpenAI interface. It can be used directly with the official OpenAI Client to build LLM applications.
It supports One API for integration with more commercial and private models.
Below is an example of using the official OpenAI Python openai
library:
import openai
client = openai.OpenAI(
base_url="http://127.0.0.1:8086/api/v1",
api_key="xxx"
)
assistant = client.beta.assistants.create(
name="demo",
instructions="You are a helpful assistant.",
model="gpt-4-1106-preview"
)
Feature | Open Assistant API | OpenAI Assistant API |
---|---|---|
Ecosystem Strategy | Open Source | Closed Source |
RAG Engine | Simple Implementation | Supported |
Internet Search | Supported | Not Supported |
Custom Functions | Supported | Supported |
Built-in Tool | Extendable | Not Extendable |
Code Interpreter | Under Development | Supported |
LLM Support | Supports More LLMs | Only GPT |
Message Streaming Output | Supports | Not Supported |
Local Deployment | Supported | Not Supported |
- LLM Support: Compared to the official OpenAI version, more models can be supported by integrating with One API.
- Tool: Currently supports online search; can easily expand more tools.
- RAG Engine: The currently supported file types are txt, pdf, html, markdown. We provide a preliminary implementation.
- Message Streaming Output: Support message streaming output for a smoother user experience.
- Ecosystem Strategy: Open source, you can deploy the service locally and expand the existing features.
The easiest way to start the Open Assistant API is to run the docker-compose.yml file. Make sure Docker and Docker Compose are installed on your machine before running.
Go to the project root directory, open docker-compose.yml
, fill in the openai api_key and bing search key (optional).
# openai api_key (supports OneAPI api_key)
OPENAI_API_KEY=<openai_api_key>
# bing search key (optional)
BING_SUBSCRIPTION_KEY=<bing_subscription_key>
docker compose up -d
Api Base URL: http://127.0.0.1:8086/api/v1
Interface documentation address: http://127.0.0.1:8086/docs
In this example, an AI assistant is created and run using the official OpenAI client library, including two built-in
tools, web_search and retrieval, and a custom function.
Before running, you need to run pip install openai
to install the Python openai
library.
# !pip install openai
python tests/e2e/index.py
-
Join the Slack channel to see new releases, discuss issues, and participate in community interactions.
-
Join the Discord channel to interact with other community members.
-
Join the WeChat group:
We mainly referred to and relied on the following projects:
- OpenOpenAI: Assistant API implemented in Node
- One API: Multi-model management tool
- OpenAI-Python: OpenAI Python Client
- OpenAI API: OpenAI interface definition
- LangChain: LLM application development library
- OpenGPTs: LangChain GPTs
Please read our contribution document to learn how to contribute.
This repository follows the MIT open source license. For more information, please see the LICENSE file.