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:
usage = client.get_usage(thread_id="your_thread_id")
print(f"Total cost: ${usage.total_cost:.4f}")
print(f"Input tokens: {usage.total_input_tokens}")
print(f"Output tokens: {usage.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.2.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.2.tar.gz.
File metadata
- Download URL: pylangdb-0.2.2.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 |
40ce3b1ed95f17ca3b6b216fff51b866075ca58500216684147f072762ff09c2
|
|
| MD5 |
46eb8b2df16f3813b0817b27e3985f2c
|
|
| BLAKE2b-256 |
3c9d7e4b96488cdbab71ff2ebd29d94807cd6fb5af1b24fd236e4b2a96a98878
|
File details
Details for the file pylangdb-0.2.2-py3-none-any.whl.
File metadata
- Download URL: pylangdb-0.2.2-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 |
705b22dcdf56076579ee88ccc3df5ec4557a894fa6b77f4cb4094522a104220a
|
|
| MD5 |
16f49774c659d72bf709d4faf25337dc
|
|
| BLAKE2b-256 |
05d1fbbc1373d1fb187039f98536cd017c7383b384ca3ab2aa8c4ef57832b554
|