#studio #api-wrapper #server #model #lm #generate #lm-studio

rustylms

用于与 lm-studio 服务器通信的库

1 个不稳定版本

0.1.0 2024 年 6 月 22 日

#1814 in 网页编程

Apache-2.0

12KB
213

rustylms - 用 Rust 编写的 LM-Studio API 包装器

ℹ️ 如果你在寻找 ollama API 包装器,可以考虑查看 ollama-rs

⚠️ 此项目尚未完成!可能存在错误

此库为 LM Studio 服务器 提供支持。所有功能均根据 官方文档 制作。

功能列表

  • 使用聊天生成补全
  • 从服务器检索所有模型

待办事项列表

  • 生成补全
    • 支持作为响应的流
  • 创建嵌入

示例

检索模型

use rustylms::lmsserver::LMSServer;

#[tokio::main]
async fn main() {
    let server = LMSServer::new("https://127.0.0.1:1234");
    let models = server.get_models().await.expect("Unable to retrieve models");

    println!("{:#?}", models);
}

生成聊天补全

use rustylms::{chat::Chat, lmsserver::LMSServer};

#[tokio::main]
async fn main() {
    let server = LMSServer::new("https://127.0.0.1:1234");
    let chat = Chat::new("model-name")
        .system_prompt(
            "You are a helpful assistant that gives information to any programming-related topic.",
        )
        .user_prompt("what is rust?");

    let completion = chat
        .get_completions(&server)
        .await
        .expect("could not get completions");
    let message = completion.get_message().unwrap();

    println!("The assistant answered: {}", message.content);
}

依赖项

~4–15MB
~209K SLoC