⚠️ README 已过时 (正在进行大规模重构) ⚠️
🤖 HAL-9100
构建不需要互联网的AI助手,使用OpenAI SDK,适用于生产环境。
100% 私密,节省75%的成本,速度快23倍。
✨ 主要功能
- 代码解释器:自动在沙盒环境中生成并运行Python代码。(测试版)
- 知识检索:自动检索外部知识或文档。
- 函数调用:自动定义和执行自定义函数。
- 行动:自动向外部API发送请求。
- 文件:支持多种文件格式。
- 兼容OpenAI:适用于OpenAI(助手)SDK。
😃 适用对象
- 您希望增加自定义(例如使用自己的模型,扩展API等)。
- 您在数据敏感环境中工作(医疗、物联网、军事、法律等)。
- 您的产品有较差或没有互联网接入(军事、物联网、边缘、极端环境等)。
- (非主要关注)您在大规模操作时希望降低成本。
- (非主要关注)您在大规模操作时希望提高速度。
🤖 我们对软件 3.0 的定义
首先,软件3.0的定义是涉及广泛的概念: 软件3.0连接了大型语言模型的认知能力和人类数字活动的实际需求。它是一种全面的方法,允许LLM:
- 在数字世界中执行和人类一样甚至更好的活动
- 一般来说,允许用户在无意识的情况下完成更多操作
📏 原则
HAL-9100 处于持续开发中,旨在始终提供更好的边缘软件3.0基础设施。为此,它基于若干定义其功能和范围的原则。
提示越少越好
基础设施中应尽可能少地硬编码提示内容,只需要足以弥合软件1.0和软件3.0之间的差距,并赋予客户尽可能多的提示控制权。
边缘优先
HAL-9100 专注于开源LLM,不需要互联网接入。这意味着您拥有您的数据和模型。它可以在树莓派上运行(包括LLM)。
兼容OpenAI
OpenAI投入了大量的顶尖智力来设计这个API,这为开发者提供了令人惊叹的体验。不过,支持OpenAI LLM并不是我们的优先事项。
可靠且确定性
HAL-9100 重点关注可靠性,并默认为尽可能确定性。因此,所有内容都必须经过测试和基准测试。
灵活
最少的硬编码提示和行为,广泛的模型、基础设施组件和部署选项,并且与开源生态系统兼容,只集成经过时间考验的项目。
快速启动
通过GitHub Codespaces在不到一分钟内开始:
或者:
git clone https://github.com/llm-edge/hal-9100
cd hal-9100
快速启动,让我们使用Anyscale API。获取Anyscale的API密钥。您可以在此处 获取密钥。在hal-9100.toml中将model_api_key
替换为您的API密钥。
使用ollama
- 使用
model_url = "http://localhost:11434/v1/chat/completions"
- 在examples/quickstart.js 中设置
gemma:2b
- 运行
ollama run gemma:2b & && docker compose --profile api -f docker/docker-compose.yml up
安装 OpenAI SDK: npm i openai
启动基础设施:
docker compose --profile api -f docker/docker-compose.yml up
运行快速启动:
node examples/quickstart.js
🤔 常见问题
有托管版本吗?
没有。HAL-9100 不是托管服务,它是您可以部署在自己基础设施上的软件。我们可以帮助您在自己的基础设施上部署。 联系我们。
哪些LLM API 我可以使用?
支持 OpenAI API 相似的 LLM API 示例:
- ollama
- MLC-LLM
- FastChat (适合拥有Mac的用户)
- vLLM (适合拥有现代GPU的用户)
- Perplexity API
- Mistral API
- anyscale
- together ai
推荐这些模型:
- mistralai/Mixtral-8x7B-Instruct-v0.1
- mistralai/mistral-7b
其他模型未经过广泛测试,可能无法预期正常工作,但您可以尝试。
与LangChain有何不同?
1. LangChain 涉及专有LLM和开源LLM之间的广泛内容,而 HAL-9100 专注于用于边缘的 软件3.0。- 您可以在较少代码(50行)内编写AI产品,而不是5000行代码并学习全新的抽象方法。