Skip to main content

An LLM wrapper for Humans

Project description

python-llm: A LLM API for Humans

Tests

The vision is to be as simple as python-requests, but for LLMs. This library supports models from OpenAI and Anthropic, with more coming soon.

Usage

import llm
llm.set_api_key(openai="sk-...", anthropic="sk-...")

# Chat
llm.chat(["what is 2+2"]) # 4. Uses GPT-3 by default if key is provided.
llm.chat(["what is 2+2"], engine="anthropic:claude-instant-v1") # 4.
llm.stream_chat(["what is 2+2"]) # 4. 
llm.multi_stream_chat(["what is 2+2"], engines=["anthropic:claude-instant-v1", 
                      "openai:gpt-3.5-turbo"])

# Completion
llm.complete("hello, I am") # A GPT model.
llm.complete("hello, I am", engine="openai:gpt-4") # A big GPT model.
llm.complete("hello, I am ", engine="anthropic:claude-instant-v1") # Claude.

# Back-and-forth chat [human, assistant, human]
llm.chat(["hi", "hi there, how are you?", "good, tell me a joke"]) # Why did chicken cross road?

# Engines are in the provider:model format, as in openai:gpt-4, or anthropic:claude-instant-v1.

Installation

To install python-llm, use pip: pip install python-llm.

Configuration

You can set API keys in a few ways:

  1. Through environment variables (you can also set a .env file).
export OPENAI_API_KEY=sk_...
export ANTHROPIC_API_KEY=sk_...
  1. By calling the method manually:
import llm
llm.set_api_key(openai="sk-...", anthropic="sk-...")
  1. By passing a JSON file like this:
llm.set_api_key("path/to/api_keys.json")

The JSON should look like:

{
  "openai": "sk-...",
  "anthropic": "sk-..."
}

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

python-llm-0.1.5.tar.gz (9.3 kB view hashes)

Uploaded Source

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