Crates.io | jutella |
lib.rs | jutella |
version | 0.3.1 |
source | src |
created_at | 2024-09-19 08:19:46.208616 |
updated_at | 2024-09-24 07:39:49.461523 |
description | Chatbot API client library and CLI interface. |
homepage | |
repository | https://github.com/dmitry-markin/jutella |
max_upload_size | |
id | 1380052 |
size | 157,014 |
Chatbot API client library and CLI interface. Currently supports OpenAI chat API, including OpenAI and Azure endpoints.
To get started with CLI, put your API key and endpoint into ~/.config/jutella.toml
. See a config example.
Invoking the CLI with jutella -x
makes it copy every response to clipboard on X11.
Install cargo
from https://rustup.rs/.
Install the CLI from crates.io with cargo install jutella
.
Alternatively, clone the repo and build the CLI with cargo build --release
. The resulting executable will be target/release/jutella
.
To use the chat API, initialize ChatClient
with OPENAI_API_KEY
and ChatClientConfig
:
let mut chat = ChatClient::new(Auth::Token(api_key), ChatClientConfig::default())?;
Request replies via ChatClient::ask()
:
let answer = chat.ask("What is the highest point on Earth?".to_string()).await?;
println!("{answer}");
ChatClient
keeps the conversation context and uses it with every ask()
to generate the reply.