Skip to main content

Minimalistic library to call OpenAI API, with httpx and type-hinting

Project description

uOpenAI

uOpenAI is a lightweight, asynchronous Python library designed to interact with the OpenAI API. Leveraging the power of httpx for async HTTP requests and pydantic for data validation and settings management, it aims to provide a seamless and efficient way to access OpenAI's capabilities in modern async Python applications.

Features

  • Fully Asynchronous: Built from the ground up for asyncio compatibility.
  • Type-Hinted: Ensures robust code through comprehensive type annotations.
  • Simple and Intuitive: A straightforward API to access OpenAI's features with minimal boilerplate.

Installation

To install uOpenAI, run:

pip install uopenai

Quick Start

Here's a quick example to get you started:

import asyncio
from uopenai import OpenAI, Message

async def main():
    api = OpenAI("your-api-key")
    # Complete a prompt with options
    res = await api.complete([Message("system", "You are a chat bot"), Message("user", "What’s on your mind?")], max_tokens=50)
    print(res.choices[0].message.content)

    # easy version

    res = await api.easy_complete("What’s on your mind?", "You are a chat bot")

if __name__ == "__main__":
    asyncio.run(main())

Replace "your-api-key" with your actual OpenAI API key.

Requirements

  • Python 3.7+
  • OpenAI API key
  • httpx
  • pydantic

Contributing

Contributions are welcome! Feel free to open an issue or submit a pull request.

License

uOpenAI is released under the The Unlicense. See the LICENSE file for more details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

uopenai-0.1.3.tar.gz (4.5 kB view details)

Uploaded Source

Built Distribution

uopenai-0.1.3-py3-none-any.whl (4.2 kB view details)

Uploaded Python 3

File details

Details for the file uopenai-0.1.3.tar.gz.

File metadata

  • Download URL: uopenai-0.1.3.tar.gz
  • Upload date:
  • Size: 4.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: pdm/2.12.4 CPython/3.11.6

File hashes

Hashes for uopenai-0.1.3.tar.gz
Algorithm Hash digest
SHA256 cd012938734124a1eafbd1057250fc85fd1b1ac321f7495aa3be7e5442014c81
MD5 45102854cf6797f843f6cdd7816eaa88
BLAKE2b-256 0f8215a6c25b607e8add2c0ac9ce9cfcd10648c6132c43ece4f9194942307323

See more details on using hashes here.

File details

Details for the file uopenai-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: uopenai-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 4.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: pdm/2.12.4 CPython/3.11.6

File hashes

Hashes for uopenai-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 07a348fe997b10be0580b9e86159780a45defbf021957d29cb27660b70748452
MD5 9f21c0ca2382263aa5debd98cdbaaf6e
BLAKE2b-256 4289aa77f1ea4fc9cdf80bbe57f8aa06c3ebd664d488269a8b04822439d00952

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page