Completions
Chat and text completions using PraisonAI capabilities
Overview
The completions capability provides access to chat and text completion APIs through LiteLLM, supporting multiple providers.
Python Usage
Chat Completion
from praisonai.capabilities import chat_completion
result = chat_completion(
messages=[
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "What is 2 + 2?"}
],
model="gpt-4o-mini",
max_tokens=100
)
print(result.content) # "4"
print(result.model) # "gpt-4o-mini-2024-07-18"
print(result.usage) # {'prompt_tokens': 30, 'completion_tokens': 2, ...}Text Completion (Legacy)
from praisonai.capabilities import text_completion
result = text_completion(
prompt="The capital of France is",
model="gpt-3.5-turbo-instruct",
max_tokens=10
)
print(result.content) # " Paris"Async Usage
import asyncio
from praisonai.capabilities import achat_completion
async def main():
result = await achat_completion(
messages=[{"role": "user", "content": "Hello"}],
model="gpt-4o-mini"
)
print(result.content)
asyncio.run(main())Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
messages | List[Dict] | Required | List of message objects |
model | str | “gpt-4o-mini” | Model to use |
temperature | float | 1.0 | Sampling temperature |
max_tokens | int | None | Maximum tokens to generate |
tools | List[Dict] | None | List of tools |
timeout | float | 600.0 | Request timeout in seconds |
api_key | str | None | API key override |
Result Object
The CompletionResult object contains:
id: Response IDcontent: Generated textrole: Message role (“assistant”)model: Model usedfinish_reason: Why generation stoppedusage: Token usage statisticstool_calls: Any tool calls made