这个JavaScript客户端受到cohere-typescript的启发
Mistral JavaScript客户端
你可以使用Mistral JavaScript客户端与Mistral AI API进行交互。
安装
你可以在项目中使用以下命令安装该库:
npm install @mistralai/mistralai
使用方法
你可以在这里观看一个关于使用Mistral JavaScript客户端的免费课程。
设置
import MistralClient from '@mistralai/mistralai';
const apiKey = process.env.MISTRAL_API_KEY || '你的API密钥';
const client = new MistralClient(apiKey);
列出模型
const listModelsResponse = await client.listModels();
const listModels = listModelsResponse.data;
listModels.forEach((model) => {
console.log('模型:', model);
});
使用流式传输进行聊天
const chatStreamResponse = await client.chatStream({
model: 'mistral-tiny',
messages: [{role: 'user', content: '最好的法国奶酪是什么?'}],
});
console.log('聊天流:');
for await (const chunk of chatStreamResponse) {
if (chunk.choices[0].delta.content !== undefined) {
const streamText = chunk.choices[0].delta.content;
process.stdout.write(streamText);
}
}
不使用流式传输进行聊天
const chatResponse = await client.chat({
model: 'mistral-tiny',
messages: [{role: 'user', content: '最好的法国奶酪是什么?'}],
});
console.log('聊天:', chatResponse.choices[0].message.content);
嵌入
const input = [];
for (let i = 0; i < 1; i++) {
input.push('最好的法国奶酪是什么?');
}
const embeddingsBatchResponse = await client.embeddings({
model: 'mistral-embed',
input: input,
});
console.log('嵌入批次:', embeddingsBatchResponse.data);
文件
// 创建新文件
const file = fs.readFileSync('file.jsonl');
const createdFile = await client.files.create({ file });
// 列出文件
const files = await client.files.list();
// 检索文件
const retrievedFile = await client.files.retrieve({ fileId: createdFile.id });
// 删除文件
const deletedFile = await client.files.delete({ fileId: createdFile.id });
微调作业
// 创建新作业
const createdJob = await client.jobs.create({
model: 'open-mistral-7B',
trainingFiles: [trainingFile.id],
validationFiles: [validationFile.id],
hyperparameters: {
trainingSteps: 10,
learningRate: 0.0001,
},
});
// 列出作业
const jobs = await client.jobs.list();
// 检索作业
const retrievedJob = await client.jobs.retrieve({ jobId: createdJob.id });
// 取消作业
const canceledJob = await client.jobs.cancel({ jobId: createdJob.id });
运行示例
你可以通过在本地安装来运行examples目录中的示例:
cd examples
npm install .
API密钥设置
运行示例需要Mistral AI API密钥。
获取你自己的Mistral API密钥:https://docs.mistral.ai/#api-access
运行示例
MISTRAL_API_KEY='你的API密钥' node chat_with_streaming.js
在环境中保存API密钥
将你的Mistral API密钥设置为环境变量。你只需要执行一次这个操作。
# 设置Mistral API密钥(以zsh为例)
$ echo 'export MISTRAL_API_KEY=[你的API密钥]' >> ~/.zshenv
# 重新加载环境(或者直接退出并打开一个新的终端)
$ source ~/.zshenv
然后你可以在不附加API密钥的情况下运行示例:
node chat_with_streaming.js
在环境变量设置完成后,客户端将自动找到MISTRAL_API_KEY
import MistralClient from '@mistralai/mistralai';
const client = new MistralClient();