-
Notifications
You must be signed in to change notification settings - Fork 61
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'development' into release
- Loading branch information
Showing
9 changed files
with
196 additions
and
65 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,24 +1,73 @@ | ||
# [Langtrace](https://www.langtrace.ai) | ||
|
||
Open Source Observability for LLM applications | ||
|
||
## 🌐 Open Source & Open Telemetry(OTEL) Observability for LLM applications | ||
|
||
![Static Badge](https://img.shields.io/badge/License-AGPL--3.0-blue) | ||
[![NPM Typescript SDK](https://img.shields.io/npm/v/%40langtrase%2Ftypescript-sdk?style=flat&logo=npm&label=%40langtrase%2Ftypescript-sdk&color=green&link=https%3A%2F%2Fgithub.com%2FScale3-Labs%2Flangtrace-typescript-sdk)](https://github.com/Scale3-Labs/langtrace-typescript-sdk) | ||
[![PyPI Python SDK](https://img.shields.io/pypi/v/langtrace-python-sdk?style=flat&logo=python&label=langtrace-python-sdk&color=green&link=https%3A%2F%2Fgithub.com%2FScale3-Labs%2Flangtrace-python-sdk)](https://github.com/Scale3-Labs/langtrace-python-sdk) | ||
[![Downloads](https://static.pepy.tech/badge/langtrace-python-sdk/month)](https://pepy.tech/project/langtrace-python-sdk) | ||
[![NPM Trace Attributes](https://img.shields.io/npm/v/%40langtrase%2Ftrace-attributes?style=flat&logo=npm&label=%40langtrase%2Ftrace-attributes&color=green&link=https%3A%2F%2Fgithub.com%2FScale3-Labs%2Flangtrace-trace-attributes)](https://github.com/Scale3-Labs/langtrace-trace-attributes) | ||
[![PyPI Trace Attributes](https://img.shields.io/pypi/v/trace-attributes?style=flat&logo=python&label=trace-attributes&color=green&link=https%3A%2F%2Fgithub.com%2FScale3-Labs%2Flangtrace-trace-attributes)](https://github.com/Scale3-Labs/langtrace-trace-attributes) | ||
![Static Badge](https://img.shields.io/badge/Development_status-Active-green) | ||
[![Deploy on Railway](https://railway.app/button.svg)](https://railway.app/template/8dNq1c?referralCode=MA2S9H) | ||
<div align="center"> | ||
<h1> | ||
<img src="https://github.com/Scale3-Labs/langtrace/assets/105607645/6825158c-39bb-4270-b1f9-446c36c066ee" alt="Langtrace" width="400"/> | ||
<br/> | ||
<a href="https://www.langtrace.ai">Langtrace</a> | ||
</h1> | ||
<h3>Open Source Observability for LLM Applications</h3> | ||
|
||
[![License](https://img.shields.io/badge/License-AGPL--3.0-blue?style=flat-square)](LICENSE) | ||
[![Development Status](https://img.shields.io/badge/Status-Active-success?style=flat-square)](https://github.com/Scale3-Labs/langtrace) | ||
[![Pull Requests](https://img.shields.io/github/issues-pr/Scale3-Labs/langtrace?style=flat-square)](https://github.com/Scale3-Labs/langtrace/pulls) | ||
[![NPM SDK](https://img.shields.io/npm/v/%40langtrase%2Ftypescript-sdk?style=flat-square&logo=npm&label=typescript-sdk&color=green)](https://github.com/Scale3-Labs/langtrace-typescript-sdk) | ||
[![NPM Downloads](https://img.shields.io/npm/dm/%40langtrase%2Ftypescript-sdk?style=flat-square&logo=npm)](https://www.npmjs.com/package/@langtrase/typescript-sdk) | ||
[![PyPI SDK](https://img.shields.io/pypi/v/langtrace-python-sdk?style=flat-square&logo=python&label=python-sdk&color=green)](https://github.com/Scale3-Labs/langtrace-python-sdk) | ||
[![Downloads](https://static.pepy.tech/badge/langtrace-python-sdk/month)](https://pepy.tech/project/langtrace-python-sdk) | ||
[![Deploy](https://railway.app/button.svg)](https://railway.app/template/8dNq1c?referralCode=MA2S9H) | ||
</div> | ||
|
||
--- | ||
|
||
## 📚 Table of Contents | ||
- [✨ Features](#-features) | ||
- [🚀 Quick Start](#-quick-start) | ||
- [🔗 Integrations](#-supported-integrations) | ||
- [🌐 Getting Started](#-getting-started) | ||
- [🏠 Self Hosting](#-langtrace-self-hosted) | ||
- [📐 Architecture](#-langtrace-system-architecture) | ||
- [🤝 Contributing](#-contributions) | ||
- [🔒 Security](#-security) | ||
- [❓ FAQ](#-frequently-asked-questions) | ||
- [👥 Contributors](#-contributors) | ||
- [📜 License](#-license) | ||
|
||
Langtrace is an open source observability software which lets you capture, debug and analyze traces and metrics from all your applications that leverages LLM APIs, Vector Databases and LLM based Frameworks. | ||
|
||
![image](/public/langtrace-tracing-ss.png) | ||
|
||
## ✨ Features | ||
|
||
- 📊 **Open Telemetry Support**: Built on OTEL standards for comprehensive tracing | ||
- 🔄 **Real-time Monitoring**: Track LLM API calls, vector operations, and framework usage | ||
- 🎯 **Performance Insights**: Analyze latency, costs, and usage patterns | ||
- 🔍 **Debug Tools**: Trace and debug your LLM application workflows | ||
- 📈 **Analytics**: Get detailed metrics and visualizations | ||
- 🏠 **Self-hosting Option**: Deploy on your own infrastructure | ||
|
||
## 🚀 Quick Start | ||
|
||
```bash | ||
# For TypeScript/JavaScript | ||
npm i @langtrase/typescript-sdk | ||
|
||
# For Python | ||
pip install langtrace-python-sdk | ||
``` | ||
|
||
Initialize in your code: | ||
```typescript | ||
// TypeScript | ||
import * as Langtrace from '@langtrase/typescript-sdk' | ||
Langtrace.init({ api_key: '<your_api_key>' }) // Get your API key at langtrace.ai | ||
``` | ||
```python | ||
# Python | ||
from langtrace_python_sdk import langtrace | ||
langtrace.init(api_key='<your_api_key>') # Get your API key at langtrace.ai | ||
``` | ||
|
||
For detailed setup instructions, see [Getting Started](#-getting-started). | ||
|
||
## 📊 Open Telemetry Support | ||
|
||
The traces generated by Langtrace adhere to [Open Telemetry Standards(OTEL)](https://opentelemetry.io/docs/concepts/signals/traces/). We are developing [semantic conventions](https://opentelemetry.io/docs/concepts/semantic-conventions/) for the traces generated by this project. You can checkout the current definitions in [this repository](https://github.com/Scale3-Labs/langtrace-trace-attributes/tree/main/schemas). Note: This is an ongoing development and we encourage you to get involved and welcome your feedback. | ||
|
@@ -138,36 +187,45 @@ If you prefer to disable telemetry, you can do so by setting TELEMETRY_ENABLED=f | |
|
||
--- | ||
|
||
## 🔗 Supported integrations | ||
|
||
Langtrace automatically captures traces from the following vendors: | ||
|
||
| Vendor | Type | Typescript SDK | Python SDK | | ||
| ------------ | --------------- | ------------------ | ------------------------------- | | ||
| OpenAI | LLM | :white_check_mark: | :white_check_mark: | | ||
| Anthropic | LLM | :white_check_mark: | :white_check_mark: | | ||
| Azure OpenAI | LLM | :white_check_mark: | :white_check_mark: | | ||
| Cohere | LLM | :white_check_mark: | :white_check_mark: | | ||
| xAI | LLM | :white_check_mark: | :white_check_mark: | | ||
| Groq | LLM | :white_check_mark: | :white_check_mark: | | ||
| Perplexity | LLM | :white_check_mark: | :white_check_mark: | | ||
| Gemini | LLM | :white_check_mark: | :white_check_mark: | | ||
| AWS Bedrock | LLM | :white_check_mark: | :x: | | ||
| Mistral | LLM | :x: | :white_check_mark: | | ||
| Langchain | Framework | :x: | :white_check_mark: | | ||
| LlamaIndex | Framework | :white_check_mark: | :white_check_mark: | | ||
| Langgraph | Framework | :x: | :white_check_mark: | | ||
| LiteLLM | Framework | :x: | :white_check_mark: | | ||
| DSPy | Framework | :x: | :white_check_mark: | | ||
| CrewAI | Framework | :x: | :white_check_mark: | | ||
| Ollama | Framework | :x: | :white_check_mark: | | ||
| VertexAI | Framework | :white_check_mark: | :white_check_mark: | | ||
| Vercel AI | Framework | :white_check_mark: | :x: | | ||
| Pinecone | Vector Database | :white_check_mark: | :white_check_mark: | | ||
| ChromaDB | Vector Database | :white_check_mark: | :white_check_mark: | | ||
| QDrant | Vector Database | :white_check_mark: | :white_check_mark: | | ||
| Weaviate | Vector Database | :white_check_mark: | :white_check_mark: | | ||
| PGVector | Vector Database | :white_check_mark: | :white_check_mark: (SQLAlchemy) | | ||
## 🔗 Supported Integrations | ||
|
||
Langtrace automatically captures traces from the following vendors and frameworks: | ||
|
||
### LLM Providers | ||
| Provider | TypeScript SDK | Python SDK | | ||
|----------|:-------------:|:----------:| | ||
| OpenAI | ✅ | ✅ | | ||
| Anthropic | ✅ | ✅ | | ||
| Azure OpenAI | ✅ | ✅ | | ||
| Cohere | ✅ | ✅ | | ||
| xAI | ✅ | ✅ | | ||
| Groq | ✅ | ✅ | | ||
| Perplexity | ✅ | ✅ | | ||
| Gemini | ✅ | ✅ | | ||
| AWS Bedrock | ✅ | ❌ | | ||
| Mistral | ❌ | ✅ | | ||
|
||
### LLM Frameworks | ||
| Framework | TypeScript SDK | Python SDK | | ||
|-----------|:-------------:|:----------:| | ||
| Langchain | ❌ | ✅ | | ||
| LlamaIndex | ✅ | ✅ | | ||
| Langgraph | ❌ | ✅ | | ||
| LiteLLM | ❌ | ✅ | | ||
| DSPy | ❌ | ✅ | | ||
| CrewAI | ❌ | ✅ | | ||
| Ollama | ❌ | ✅ | | ||
| VertexAI | ✅ | ✅ | | ||
| Vercel AI | ✅ | ❌ | | ||
|
||
### Vector Databases | ||
| Database | TypeScript SDK | Python SDK | | ||
|----------|:-------------:|:----------:| | ||
| Pinecone | ✅ | ✅ | | ||
| ChromaDB | ✅ | ✅ | | ||
| QDrant | ✅ | ✅ | | ||
| Weaviate | ✅ | ✅ | | ||
| PGVector | ✅ | ✅ (SQLAlchemy) | | ||
|
||
--- | ||
|
||
|
@@ -207,6 +265,36 @@ To report security vulnerabilities, email us at <[email protected]>. You c | |
- Langtrace application(this repository) is [licensed](https://github.com/Scale3-Labs/langtrace/blob/development/LICENSE) under the AGPL 3.0 License. You can read about this license [here](https://www.gnu.org/licenses/agpl-3.0.en.html). | ||
- Langtrace SDKs are licensed under the Apache 2.0 License. You can read about this license [here](https://www.apache.org/licenses/LICENSE-2.0). | ||
|
||
## 👥 Contributors | ||
|
||
<div align="center"> | ||
<table> | ||
<tr> | ||
<td align="center"><a href="https://github.com/karthikscale3"><img src="https://github.com/karthikscale3.png" width="100px;" alt="karthikscale3"/><br /><sub><b>karthikscale3</b></sub></a></td> | ||
<td align="center"><a href="https://github.com/dylanzuber-scale3"><img src="https://github.com/dylanzuber-scale3.png" width="100px;" alt="dylanzuber-scale3"/><br /><sub><b>dylanzuber-scale3</b></sub></a></td> | ||
<td align="center"><a href="https://github.com/darshit-s3"><img src="https://github.com/darshit-s3.png" width="100px;" alt="darshit-s3"/><br /><sub><b>darshit-s3</b></sub></a></td> | ||
<td align="center"><a href="https://github.com/rohit-kadhe"><img src="https://github.com/rohit-kadhe.png" width="100px;" alt="rohit-kadhe"/><br /><sub><b>rohit-kadhe</b></sub></a></td> | ||
</tr> | ||
<tr> | ||
<td align="center"><a href="https://github.com/yemiadej"><img src="https://github.com/yemiadej.png" width="100px;" alt="yemiadej"/><br /><sub><b>yemiadej</b></sub></a></td> | ||
<td align="center"><a href="https://github.com/alizenhom"><img src="https://github.com/alizenhom.png" width="100px;" alt="alizenhom"/><br /><sub><b>alizenhom</b></sub></a></td> | ||
<td align="center"><a href="https://github.com/obinnascale3"><img src="https://github.com/obinnascale3.png" width="100px;" alt="obinnascale3"/><br /><sub><b>obinnascale3</b></sub></a></td> | ||
<td align="center"><a href="https://github.com/Cruppelt"><img src="https://github.com/Cruppelt.png" width="100px;" alt="Cruppelt"/><br /><sub><b>Cruppelt</b></sub></a></td> | ||
</tr> | ||
<tr> | ||
<td align="center"><a href="https://github.com/Dnaynu"><img src="https://github.com/Dnaynu.png" width="100px;" alt="Dnaynu"/><br /><sub><b>Dnaynu</b></sub></a></td> | ||
<td align="center"><a href="https://github.com/jatin9823"><img src="https://github.com/jatin9823.png" width="100px;" alt="jatin9823"/><br /><sub><b>jatin9823</b></sub></a></td> | ||
<td align="center"><a href="https://github.com/MayuriS24"><img src="https://github.com/MayuriS24.png" width="100px;" alt="MayuriS24"/><br /><sub><b>MayuriS24</b></sub></a></td> | ||
<td align="center"><a href="https://github.com/NishantRana07"><img src="https://github.com/NishantRana07.png" width="100px;" alt="NishantRana07"/><br /><sub><b>NishantRana07</b></sub></a></td> | ||
</tr> | ||
<tr> | ||
<td align="center"><a href="https://github.com/obinnaokafor"><img src="https://github.com/obinnaokafor.png" width="100px;" alt="obinnaokafor"/><br /><sub><b>obinnaokafor</b></sub></a></td> | ||
<td align="center"><a href="https://github.com/heysagnik"><img src="https://github.com/heysagnik.png" width="100px;" alt="heysagnik"/><br /><sub><b>heysagnik</b></sub></a></td> | ||
<td align="center"><a href="https://github.com/dabiras3"><img src="https://github.com/dabiras3.png" width="100px;" alt="dabiras3"/><br /><sub><b>dabiras3</b></sub></a></td> | ||
</tr> | ||
</table> | ||
</div> | ||
|
||
--- | ||
|
||
## ❓Frequently Asked Questions | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.