aipim-api

Crates.ioaipim-api
lib.rsaipim-api
version0.1.1
sourcesrc
created_at2024-06-27 20:13:58.87862
updated_at2024-06-27 20:52:30.453216
descriptionExposes an API for the Aipim project
homepage
repositoryhttps://github.com/fcoury/aipim
max_upload_size
id1286116
size52,716
Felipe Coury (fcoury)

documentation

README

AI Primary Interface Module - AIPIM

AIPIM Icon

Build Status License: MIT Crates.io

AIPIM is a Rust library designed to provide a unified interface for interacting with various AI providers. It abstracts the complexities of different AI APIs, allowing developers to easily switch between providers without changing their codebase.

Features

  • Unified interface for multiple AI providers
  • Support for text and image messages
  • Asynchronous message sending
  • Error handling and response parsing

Installation

Add this to your Cargo.toml:

[dependencies]
aipim = "0.1.0"

Usage

Here's a simple example to get you started:

use aipim::client::Client;

#[tokio::main]
async fn main() -> anyhow::Result<()> {
    dotenv::dotenv().ok();

    let client = Client::new("gpt-4o");
    let response = client.message().text("Hello, world!").send().await?;
    println!("Response: {}", response.text);
    Ok(())
}

Modules

  • client: Contains the Client and MessageBuilder structs.
  • provider: Contains the AIProvider trait and implementations for different providers.

Contributing

We welcome contributions! Please see our CONTRIBUTING.md for more details.

License

This project is licensed under the MIT License. See the LICENSE file for details.

Commit count: 31

cargo fmt