No project description provided
Project description
pylangdb
pylangdb is a Python package for interacting with LangDb APIs. Please find out more at https://langdb.ai/.
Installation
To install pylangdb, use pip:
pip install pylangdb
Usage
Initialize LangDb Client
from pylangdb import LangDb
# Initialize with API key and project ID
client = LangDb(api_key="your_api_key", project_id="your_project_id")
Chat Completions
messages = [
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Say hello!"}
]
response = client.completion(
model="gemini-1.5-pro-latest",
messages=messages,
temperature=0.7,
max_tokens=100
)
Thread Operations
Get Messages
Retrieve messages from a specific thread:
messages = client.get_messages(thread_id="your_thread_id")
# Access message details
for message in messages:
print(f"Type: {message.type}")
print(f"Content: {message.content}")
if message.tool_calls:
for tool_call in message.tool_calls:
print(f"Tool: {tool_call.function.name}")
Get Thread Cost
Get cost and token usage information for a thread:
cost = client.get_cost(thread_id="your_thread_id")
print(f"Total cost: ${cost.total_cost:.4f}")
print(f"Input tokens: {cost.total_input_tokens}")
print(f"Output tokens: {cost.total_output_tokens}")
Analytics
Get analytics data for specific tags:
# Get raw analytics data
analytics = client.get_analytics(
tags="model1,model2",
start_time_us=None, # Optional: defaults to 24 hours ago
end_time_us=None # Optional: defaults to current time
)
# Get analytics as a pandas DataFrame
df = client.get_analytics_dataframe(
tags="model1,model2",
start_time_us=None,
end_time_us=None
)
Development
Setting up the environment
- Clone the repository
- Create a
.envfile with your credentials:
LANGDB_API_KEY="your_api_key"
LANGDB_PROJECT_ID="your_project_id"
Running Tests
python -m unittest tests/client.py -v
Publishing
poetry build
poetry publish
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
pylangdb-0.2.1.tar.gz
(5.2 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pylangdb-0.2.1.tar.gz.
File metadata
- Download URL: pylangdb-0.2.1.tar.gz
- Upload date:
- Size: 5.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.0.1 CPython/3.10.12 Linux/5.15.0-131-generic
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c5ba65284039e4ab52dfe37ede25d8483113f86cccb088d4118f907265c2ef66
|
|
| MD5 |
f27c512a6871ea2ee175ef8ef4be7b67
|
|
| BLAKE2b-256 |
e4c65a96d87eafeb88808b2b0c34ad1ea03f8fe6c9ca98be94d46980108a9bc4
|
File details
Details for the file pylangdb-0.2.1-py3-none-any.whl.
File metadata
- Download URL: pylangdb-0.2.1-py3-none-any.whl
- Upload date:
- Size: 6.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.0.1 CPython/3.10.12 Linux/5.15.0-131-generic
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bfcab9ac7d487e997d589d7787707026fe7491594bebd9acd4863418a0895ee8
|
|
| MD5 |
0993140cf55230abbe8066d7061d788e
|
|
| BLAKE2b-256 |
e5585fc71d5f988dd604af849f489a20b78d2e66acbe8860a09f7e1be3550a0a
|