Skip to content

dmitry-markin/jutella

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

jutella

License crates.io docs.rs

Chatbot API client library and CLI interface. Currently supports OpenAI chat API, including OpenAI and Azure endpoints.

Command line interface

To get started with CLI, put your API key and endpoint into ~/.config/jutella.toml. See a config example.

Screenshot

Invoking the CLI with jutella -x makes it copy every response to clipboard on X11.

Installation

  1. Install cargo from https://rustup.rs/.
  2. Install the CLI from crates.io with cargo install jutella.
  3. Alternatively, clone the repo and build the CLI with cargo build --release. The resulting executable will be target/release/jutella.

Library

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.

About

Chatbot API client library and CLI interface

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages