Adaline 网关
唯一一个完全本地生产级的Super SDK为调用超过200+LLMS提供简单,统一和强大的接口.
- 生产准备并被企业使用.
- 完全当地和 没有 一个代理。 你可以部署在任何地方.
- 配有分批,回试,缓存,回调,和OpenTeleometry支持.
- 支持用于缓存,日志,HTTP客户端的自定义插件等. 你可以像LEGO一样使用它,并让它与你的基础设施相配合.
- 支持插件和游戏提供者. 您可以运行完全自定义的提供者, 并仍然利用 Adaline Gateway 的所有好处 .
特征
- QQ 在类型脚本中严格输入
- Isomorphic - 到处工作
- 100%的本地和私营 没有 代理服务器
- QQ 工具调用所有兼容的 LLMS 支持
- QQ 用自定义队列支持处理所有请求
- QQ 自动重试, 有指数回放
- QQ 有自定义缓存插件支持的缓存
- QQ 完整定制仪器和钩子的回调
- QQ OpenTeleometry 将追踪插入您的现有基础设施
- 本地和自定义模型的插件和游戏自定义提供者
快速启动
安装软件包
npm install @adaline/gateway @adaline/types @adaline/openai @adaline/anthropic
创建网关对象
网关对象维护队列,缓存,回调,执行OpenTeleometry等等. 你应该在任何地方使用同一个Gateway对象来获得所有特性的好处.
import { Gateway } from "@adaline/gateway";
const gateway = new Gateway();
创建提供者对象
提供方对象存储该提供者内部所有模型的种类/信息. 它暴露了所有聊天的列表 openai.chatModelLiterals() 并嵌入 openai.embeddingModelLiterals() 模特们.
import { Anthropic } from "@adaline/anthropic";
import { OpenAI } from "@adaline/openai";
const openai = new OpenAI();
const anthropic = new Anthropic();
创建示范对象
模型对象从角色,到配置,到该模型所支持的不同模式,都强制实施类型. 您也可以提供其他密钥,如 baseUrl, (中文(简体) ), organization等 (中文(简体) ).
模型对象也会暴露功能:
transformModelRequest它需要为提供者格式化的请求并将其转换为Adaline超型.getStreamChatData然后用来制作其他提供者的电话。 例如,从贝德罗克调用Anthropic模型.- 以及更多可以进行深度堆肥 并提供运行时间验证.
const gpt4o = openai.chatModel({
modelName: "gpt-4o",
apiKey: "your-api-key",
});
const haiku = anthropic.chatModel({
modelName: "claude-3-haiku-20240307",
apiKey: "your-api-key",
});
创建配置对象
Cfig对象提供类型检查,并接受可用于每个模型添加最大值,分数等验证检查的通用.
import { Config } from "@adaline/types";
const config = Config().parse({
maxTokens: 200,
temperature: 0.9,
});
创建信件对象
Message对象是Adaline超型,支持200+LLMs的所有角色和模式.
import { MessageType } from "@adaline/types";
const messages: MessageType[] = [
{
role: "system",
content: [{
modality: "text",
value: "You are a helpful assistant. You are extremely concise.
}],
},
{
role: "user",
content: [{
modality: "text",
value: `What is ${Math.floor(Math.random() * 100) + 1} + ${Math.floor(Math.random() * 100) + 1}?`,
}],
},
];
使用网关流式聊天
await gateway.streamChat({
model: gpt4o,
config: config,
messages: messages,
});
使用 Gateway 完成聊天
await gateway.completeChat({
model: haiku,
config: config,
messages: messages,
});