#openai-api #api-client #text #gpt #response #access #content

openai_gpt_rs

A wrapper for OpenAI API written in Rust

9 unstable releases (3 breaking)

0.4.1 May 9, 2023
0.4.0 May 9, 2023
0.3.2 Apr 4, 2023
0.2.2 Apr 4, 2023
0.1.1 Mar 12, 2023

#47 in #gpt

Download history 1/week @ 2024-03-16 27/week @ 2024-03-30 9/week @ 2024-04-06 9/week @ 2024-05-11 6/week @ 2024-05-18

64 downloads per month

MIT license

30KB
701 lines

openai.rs

A wrapper for OpenAI API written in Rust

Rust rust-clippy analyze Crates.io Codacy Badge

Usage Example

First of all, you need to initialize a client.

use openai_gpt_rs::client::Client;

let client = Client::new("Your API key goes here");

Then you can use the methods to interact with the API:

let completion = client.create_completion(|args| {
    args.prompt("Say this is a test")
        .n(2)
})
    .await
    .unwrap();

This method returns the response returned from the API.

You can do the following to get the content from the response:

use openai_rs::response::Content;

// Get the text data from the response
let text = completion.get_content(0).unwrap(); // Get the first content

let text_by_range = completion.get_contents(0..2); // Get a vector of strings by a range

// Print the completion
for text in text_by_range {
    println!("{}", text);
}

Like in this example, you can get the content by index or by a range.

If you want to get the json, you can directly get access the json field:

let response = completion.json;

To see examples of other APIs you can look at the examples here.

Features to come

  • Chat API support
  • Embeddings API support
  • Audio API support
  • Fine tunes API support

Dependencies

~6–18MB
~270K SLoC