@easbot/local-model-sdk
v0.3.19
Published
Complete local model SDK for EASBot - Transformers.js + ONNX implementation supporting both Language Model (text generation) and Embedding (text embedding) with full AI SDK v3 compatibility
Maintainers
Readme
English | 中文
Local Model SDK
基于 Transformers.js + ONNX 的本地模型 SDK,支持 Language Model(文本生成)和 Embedding(文本嵌入)功能,完全兼容 AI SDK 规范。
特性
- ✅ Language Model 支持:基于 Transformers.js 的文本生成能力
- ✅ Embedding 支持:高质量的文本嵌入向量生成
- ✅ 流式生成:支持实时流式文本输出
- ✅ 批量处理:高效的批量嵌入处理
- ✅ 模型缓存:自动管理模型文件缓存
- ✅ AI SDK 兼容:完全兼容 AI SDK v3 规范
- ✅ TypeScript:完整的类型定义支持
- ✅ 离线运行:无需网络连接,完全本地化
安装
pnpm add @easbot/local-model-sdk快速开始
Language Model - 文本生成
import { LocalModelProvider } from '@easbot/local-model-sdk';
import { generateText } from 'ai';
// 创建 Provider
const provider = new LocalModelProvider({
cacheDir: '.cache/models',
});
// 创建 Language Model
const model = provider.languageModel('qwen2.5-0.5b-instruct');
// 生成文本
const result = await generateText({
model,
prompt: 'What is the capital of France?',
});
console.log(result.text);Language Model - 流式生成
import { streamText } from 'ai';
const result = streamText({
model,
prompt: 'Write a short story about a robot.',
});
for await (const chunk of result.textStream) {
process.stdout.write(chunk);
}Embedding - 文本嵌入
import { embed, embedMany } from 'ai';
const result = await embed({
model: provider.embeddingModel('bge-small-zh-v1.5'),
value: 'Hello world',
});
console.log(result.embedding);
const batchResult = await embedMany({
model: provider.embeddingModel('bge-small-zh-v1.5'),
values: ['Text 1', 'Text 2', 'Text 3'],
});
console.log(batchResult.embeddings);支持的模型
Language Models
| 模型 ID | 描述 | 参数量 |
|---------|------|--------|
| qwen3-0.6b | Qwen3 0.6B 基础模型 | 0.6B |
| qwen2.5-0.5b-instruct | Qwen2.5 0.5B 指令模型 | 0.5B |
| qwen2.5-1.5b-instruct | Qwen2.5 1.5B 指令模型 | 1.5B |
| qwen2.5-3b-instruct | Qwen2.5 3B 指令模型 | 3B |
Embedding Models
| 模型 ID | 描述 | 维度 |
|---------|------|------|
| bge-small-zh-v1.5 | BGE Small 中文模型 | 512 |
| bge-base-zh-v1.5 | BGE Base 中文模型 | 768 |
| bge-large-zh-v1.5 | BGE Large 中文模型 | 1024 |
开发
# 安装依赖
pnpm install
# 构建
pnpm build
# 测试
pnpm test
# 类型检查
pnpm type-check许可证
MIT
