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.
The traces generated by Langtrace adhere to Open Telemetry Standards(OTEL). We are developing semantic conventions for the traces generated by this project. You can checkout the current definitions in this repository. Note: This is an ongoing development and we encourage you to get involved and welcome your feedback.
To use the managed SaaS version of Langtrace, follow the steps below:
- Sign up by going to this link.
- Create a new Project after signing up. Projects are containers for storing traces and metrics generated by your application. If you have only one application, creating 1 project will do.
- Generate an API key by going inside the project.
- In your application, install the Langtrace SDK and initialize it with the API key you generated in the step 3.
- The code for installing and setting up the SDK is shown below:
If your application is built using typescript/javascript:
npm i @langtrase/typescript-sdk
import { init } from '@langtrace-init/init';
init({ api_key: process.env.LANGTRACE_API_KEY });
If your application is built using python:
pip install langtrace-python-sdk
from langtrace_python_sdk import langtrace
langtrace.init(api_key=process.env.LANGTRACE_API_KEY)
Langtrace UI is built using NextJS. To self-host and use langtrace, you can use our Docker container:
# Clone the repository
git clone git@github.com:Scale3-Labs/langtrace.git
cd langtrace
# ⭐ Don't forget to star this repository ⭐
# Run the application and the databases locally
docker compose up
Install the langtrace SDK in your application by following the same instructions under the Langtrace Cloud section above for sending traces to your self hosted setup.
Langtrace automatically captures traces from the following vendors:
Vendor | Type | Typescript SDK | Python SDK |
---|---|---|---|
OpenAI | LLM | ✅ | ✅ |
Anthropic | LLM | ✅ | ✅ |
Azure OpenAI | LLM | ✅ | ✅ |
Langchain | Framework | ❌ | ✅ |
LlamaIndex | Framework | ✅ | ✅ |
Pinecone | Vector Database | ✅ | ✅ |
ChromaDB | Vector Database | ✅ | ✅ |
- To request for features, head over here to start a discussion.
- To raise an issue, head over here and create an issue.
We welcome contributions to this project. To get started, fork this repository and start developing. To get involved, join our Slack workspace.
To report security vulnerabilites, email us at security@scale3labs.com. You can read more on security here.
- Langtrace application(this repository) is licensed under the AGPL 3.0 License. You can read about this license here.
- Langtrace SDKs are licensed under the Apache 2.0 License. You can read about this license here.
1. Can I self host and run Langtrace in my own cloud? Yes, you can absolutely do that. Follow the self hosting setup instructions laid out above.
2. What is the pricing for Langtrace cloud? Currently, we are not charging anything for Langtrace cloud and we are primarily looking for feedback so we can continue to improve the project. We will inform our users when we decide to monetize it.
3. What is the tech stack of Langtrace? Langtrace uses NextJS for the frontend and APIs. It uses PostgresDB as a metadata store and Clickhouse DB for storing spans, metrics, logs and traces.
4. Can I contribute to this project? Absolutely! We love developers and welcome contributions. Get involved early by joining our slack workspace.
5. What skillset is required to contribute to this project? Programming Languages: Typescript and Python. Framework knowledge: NextJS. Database: Postgres and Prisma ORM. Nice to haves: Opentelemetry instrumentation framework, experience with distributed tracing.