3.6.4 • Published 8 months ago
@celljs/ai-core v3.6.4
Cell - AI Core Component
概览
AI Core 模块是一个用于与 AI 模型服务交互的库,提供了生成聊天响应和嵌入向量的功能。通过简单易用的 API 接口,支持消息的创建、请求的发送和响应的处理。是所有 AI 模块的基础,提供了 AI 模块通用的 API 接口。
特性
- 生成聊天响应
- 生成嵌入向量
- 支持流式响应
- 支持多种模型参数配置
安装
使用 npm 安装 AI Core 模块:
npm install @celljs/ai-core或者使用 yarn:
yarn add @celljs/ai-coreAI Core 模块是所有 AI 模块的基础,提供了 AI 模块通用的 API 接口,包括消息的创建、请求的发送和响应的处理。所以在使用 AI Core 模块之前,需要先安装厂商对应的模型服务适配模块。例如:@celljs/ai-ollama。
npm install @celljs/ai-ollama或者使用 yarn:
yarn add @celljs/ai-ollama快速开始
以下是一个简单的示例,展示如何使用 AI Ollama 模块生成聊天响应和嵌入向量:
import { AssistantMessage, PromptTemplate } from '@celljs/ai-core';
import { Component, Autowired } from '@celljs/core';
@Component()
export class OllamaDemo {
@Autowired(OllamChatModel)
private chatModel: ChatModel;
@Autowired(EmbeddingModel)
private embeddingModel: EmbeddingModel;
@Autowired(PromptTemplate)
private promptTemplate: PromptTemplate;
/**
* Chat with Ollama
*/
async chat() {
const prompt = await this.promptTemplate.create(
'Hello {name}',
{
chatOptions: { model: 'llama3.2' },
variables: { name: 'Ollama' }
}
);
const response = await this.chatModel.call(prompt);
console.log(response.result.output);
}
/**
* Stream chat response
*/
async stream() {
const prompt = await this.promptTemplate.create(
'Hello {name}',
{
chatOptions: { model: 'llama3.2' },
variables: { name: 'Ollama' }
}
);
const response$ = await this.chatModel.stream(prompt);
response$.subscribe({
next: response => console.log(response.result.output),
complete: () => console.log('Chat completed!')
});
}
/**
* Embed text to vector
*/
async embed() {
const response = await this.embeddingModel.call({
inputs: ['text to embed'],
options: { model: 'llama3.2' }
});
console.log(response.result.embeddings);
}
}另外也可以使用 ProxyChatModel 类统一调用所有的模型服务商的模型:
import { ProxyChatModel } from '@celljs/ai-core';
import { Component Autowired } from '@celljs/core';
@Component()
export class OllamaDemo {
@Autowired(ProxyChatModel)
private chatModel: ChatModel;
/**
* Chat with Ollama
*/
async chat() {
const response = await this.chatModel.call({
prompt: 'Hello {name}',
variables: { name: 'Ollama' },
chatOptions: { model: 'ollama:llama3.2' }
});
console.log(response.result.output);
}
}许可证
本项目采用 MIT 许可证。
3.5.14
9 months ago
3.5.13
9 months ago
3.5.12
9 months ago
3.5.11
9 months ago
3.5.10
9 months ago
3.5.7
10 months ago
3.5.6
10 months ago
3.6.4
8 months ago
3.5.5
10 months ago
3.6.3
8 months ago
3.5.4
10 months ago
3.5.9
9 months ago
3.5.8
9 months ago
3.4.0
1 year ago
3.3.0
1 year ago
3.2.0
1 year ago
3.6.2
8 months ago
3.5.3
10 months ago
3.4.4
10 months ago
3.6.1
9 months ago
3.5.2
10 months ago
3.4.3
11 months ago
3.6.0
9 months ago
3.5.1
10 months ago
3.4.2
1 year ago
3.4.1
1 year ago
3.1.1
1 year ago
3.1.0
1 year ago
3.0.0
1 year ago