EdgeChains 开源项目使用教程
1. 项目介绍
EdgeChains 是一个基于 Typescript/Javascript 的生产友好型生成式 AI 框架,使用 Jsonnet 作为基础,能够在任何支持 WebAssembly 的环境中运行。它支持声明式提示和配置,适用于 Kubernetes 和边缘计算环境,并且兼容 OpenAI GPT、Gemini、Llama2、Anthropic、Mistral 等多种模型。
EdgeChains 的核心优势包括:
- 自动并行化:自动将 LLM 链和链式思维任务并行化到 CPU、GPU 和 TPU 上。
- 故障容错:设计为故障容错,能够在系统部分请求失败时继续重试和回退。
- 可扩展性:适用于大规模的 API、提示长度和向量数据集。
- 提示版本控制:提示使用 Jsonnet 编写,易于版本控制和差异比较。
2. 项目快速启动
2.1 克隆项目
首先,克隆 EdgeChains 项目到本地:
git clone https://github.com/arakoodev/EdgeChains.git
cd EdgeChains
2.2 运行 ChatWithPdf 示例
进入 ChatWithPdf
示例目录:
cd JS/edgechains/examples/chat-with-pdf/
安装依赖包:
npm install
配置你的密钥信息:
local SUPABASE_API_KEY = "your supabase api key here";
local OPENAI_API_KEY = "your openai api key here";
local SUPABASE_URL = "your supabase url here";
[
"supabase_api_key": SUPABASE_API_KEY,
"supabase_url": SUPABASE_URL,
"openai_api_key": OPENAI_API_KEY
]
启动服务器:
npm run start
访问 http://localhost:3000/chatWithpdf?question=who is nirmala sitarama
进行测试。
3. 应用案例和最佳实践
3.1 自动并行化
EdgeChains 自动并行化 LLM 链和链式思维任务,适用于需要高性能计算的场景,如大规模数据处理和实时分析。
3.2 故障容错
在生产环境中,EdgeChains 的故障容错机制确保即使在部分请求失败的情况下,系统仍能继续运行,适用于高可用性要求的环境。
3.3 提示版本控制
通过 Jsonnet 编写提示,EdgeChains 支持提示的版本控制和差异比较,适用于需要频繁更新和测试提示的场景。
4. 典型生态项目
4.1 Kubernetes
EdgeChains 与 Kubernetes 兼容,适用于需要大规模部署和管理生成式 AI 应用的场景。
4.2 WebAssembly
EdgeChains 基于 WebAssembly 运行,适用于需要在浏览器或其他支持 WebAssembly 的环境中运行生成式 AI 应用的场景。
4.3 OpenAI GPT
EdgeChains 兼容 OpenAI GPT 模型,适用于需要使用 OpenAI 模型进行文本生成和分析的场景。
通过以上步骤,你可以快速上手 EdgeChains 项目,并根据实际需求进行定制和扩展。