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.3.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.3.tar.gz.
File metadata
- Download URL: pylangdb-0.2.3.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 |
42078786d505989cb29f001105e037584c1b42bfa6cb962d15d0ea3d8de98fc2
|
|
| MD5 |
50b58254247c2e70791b09c03fed525b
|
|
| BLAKE2b-256 |
dbad6ee127761a88e53c87bc7eb9bd234aeedf369f085e8c5456b0f82cef7608
|
File details
Details for the file pylangdb-0.2.3-py3-none-any.whl.
File metadata
- Download URL: pylangdb-0.2.3-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 |
0a6b33b51b47218d52931f084eba0720e8444d1d7377daf0b79b3da25aba952d
|
|
| MD5 |
0b9f784824c736b0feca7a760cf32a1d
|
|
| BLAKE2b-256 |
52089e659ab42d48c9ca522fea509541dec9b9053a5aa9c33e8d13c3ca1a96ed
|