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.1.tar.gz (4.4 kB view details)

Uploaded Source

Built Distribution

uopenai-0.1.1-py3-none-any.whl (4.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: uopenai-0.1.1.tar.gz
  • Upload date:
  • Size: 4.4 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.1.tar.gz
Algorithm Hash digest
SHA256 ba7c62014e8ba7ef2179e873ba6779e010cd89602c9685e455d33ec8dd527e7e
MD5 d7072a2c996e74ade0900b19e080ba5b
BLAKE2b-256 27a52f27717571ffa2ad6339b3bba16b6a44c289c94632ab2a0e596df0b65228

See more details on using hashes here.

File details

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

File metadata

  • Download URL: uopenai-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 4.0 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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 93268ad5a09afa01e0ced62ac709b9ddee641a82f7f9bb1adf3f582fb18cd874
MD5 44bd5757debf3333e6abd95ecd9d122f
BLAKE2b-256 743bcacaf71e4b46c2e9fd32dbb80e2ac224a5cd021ef3c46e95fce4c6f933a8

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