Skip to main content

No project description provided

Project description

VAKLM - Versatile AI Knowledge Language Model

A Python client for interacting with OpenAI-compatible API endpoints with reasoning support.

Installation

pip install vaklm

Usage

Basic Usage

from vaklm import vaklm, VAKLMException

# Non-streaming response with reasoning
try:
    content, reasoning = vaklm(
        endpoint="http://localhost:11434/v1/chat/completions",
        model_name="llama3.2:latest",
        user_prompt="Explain quantum computing in simple terms",
        system_prompt="You are a helpful AI assistant",
        api_key="YOUR_API_KEY",
        temperature=0.7
    )
    print("Content:", content)
    print("Reasoning:", reasoning)
except VAKLMException as e:
    print(f"Error: {str(e)}")

Streaming Usage

from vaklm import vaklm

print("\nStreaming example:")
try:
    for content, reasoning in vaklm(
        endpoint="http://localhost:11434/v1/chat/completions",
        model_name="llama3.2:latest",
        user_prompt="Write a short story about a cat.",
        system_prompt="You are a creative writer.",
        api_key="YOUR_API_KEY",
        stream=True,
        temperature=0.7
    ):
        print(content, end='', flush=True)
        if reasoning:
            print(f"\n[Reasoning: {reasoning}]")
except VAKLMException as e:
    print(f"Error: {str(e)}")

Features

  • Supports both streaming and non-streaming responses
  • Includes reasoning content in responses
  • Automatic retry logic for failed requests
  • Configurable temperature and max tokens
  • System prompt support for context setting
  • Comprehensive error handling

Configuration

The vaklm function accepts the following parameters:

  • endpoint: API endpoint URL (required)
  • model_name: Model identifier (required)
  • user_prompt: User's input message (required)
  • system_prompt: Optional system context message
  • api_key: API key for authentication
  • stream: Whether to stream the response (default: False)
  • temperature: Sampling temperature (0-2, default: 1.0)
  • max_tokens: Maximum tokens to generate
  • timeout: Request timeout in seconds (default: 30)
  • max_retries: Maximum retry attempts (default: 3)
  • retry_delay: Base delay between retries (default: 1.0)

Error Handling

The client raises VAKLMException for general errors, with specific subclasses:

  • APIError: For API-specific errors
  • StreamingError: For streaming-specific errors

Always wrap calls in try/except blocks to handle potential errors.

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

vaklm-0.3.0.tar.gz (4.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

vaklm-0.3.0-py3-none-any.whl (4.7 kB view details)

Uploaded Python 3

File details

Details for the file vaklm-0.3.0.tar.gz.

File metadata

  • Download URL: vaklm-0.3.0.tar.gz
  • Upload date:
  • Size: 4.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for vaklm-0.3.0.tar.gz
Algorithm Hash digest
SHA256 f9f3794ec4872488c4ccf740aed2666ec81b8d244e3cadd3178fb6d870be1eff
MD5 c2d950fe958120dff4ad31442abcf2b6
BLAKE2b-256 f173fa3cb28b1cbb8f06272b956ff11265ed01827764b3ff6ba628f926bfb87e

See more details on using hashes here.

File details

Details for the file vaklm-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: vaklm-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 4.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for vaklm-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 50921157a2b8dbfc9385864855d39605bf2be460be295cb0283a49a76a601f34
MD5 71f81f51df05a5453206657d9df96eeb
BLAKE2b-256 28c2b1b18209bef823ea3df8f4b50a267a3454fc4fe1603106963fb50361d751

See more details on using hashes here.

Supported by

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