#ChatGPT #llm #ai #language-model #machine-learning #api-bindings #koboldai

kai-rs

使用KoboldAI通过Rust库使用大型语言模型

1个不稳定版本

0.1.0 2023年4月29日

#848 in 机器学习

LGPL-3.0-only

19KB
358

kai-rs

通过KoboldAI使用大型语言模型的实验性Rust库

安装

[dependencies]
# ...
kai-rs = { git = "https://github.com/Pyroglyph/kai-rs" }

⚠️ 重要提示 ⚠️

除非你使用 我的KoboldAI分支,否则此库只能以CPU模式加载模型。如果你愿意,仍然可以通过官方GUI加载模型到你的GPU(s),无需我的分支。

我已提交一个 拉取请求,以在官方仓库中修复此问题。

用法

用法应该相当简单。以下是一般思路

  1. 创建一个 KoboldClient
  2. 加载一个 Model 并设置你的GPU层。本地模型目前必须以 ./ 开头。自动设置GPU层尚未实现,所以只需使用KoboldAI GUI提供的值,或者将其设置为 vec![0] 以使用CPU。
  3. 填充 GenerationSettings 或使用合理的默认值。
  4. 将提示和设置传递给 generate 并等待结果!

示例

use kai_rs::prelude::*;

let kai = KoboldClient::new("https://127.0.0.1:5000", APIVersion::V1);
kai.load_model(Model::from("PygmalionAI/pygmalion-6b"), vec![28]).await?;

let settings = GenerationSettings::default();

let prompt = "You: Hi. How are you?";
let response = kai.generate(prompt, settings).await?;

// response => [ "Me: I'm good. I just got back from the gym. What about you?" ]

贡献

欢迎任何贡献,只需打开一个问题或PR!

依赖关系

~6–17MB
~261K SLoC