Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Execution Observability with OpenTelemetry #1668

Closed
nirga opened this issue May 9, 2024 · 13 comments
Closed

Execution Observability with OpenTelemetry #1668

nirga opened this issue May 9, 2024 · 13 comments
Labels
enhancement New feature or request severity:low Minor issues or affecting single user Stale Inactive for 30 days

Comments

@nirga
Copy link

nirga commented May 9, 2024

Summary
OpenTelemetry is a CNCF standard for cloud observability. It instruments HTTP calls, DB calls, etc as traces. Together with OpenLLMetry, which provides instrumentations for LLM providers like OpenA, vector DBs like Chroma and LLamaIndex - it gives a great way to view and debug agent exceutions.

It's natively supported by all major observability platforms like Datadog, Honeycomb, New Relic and others, so if we install the SDK in the repo it allows users to see and debug executions of OpenDevin.

Motivation

Debug and see executions of OpenDevin, including LLM calls, vector DB calls, HTTP calls, and others.

Technical Design

We can offer an option to initialize an SDK, like the one provided by OpenLLMetry so if the user enables it they can view execution traces.

Alternatives to Consider

None

Additional context

@yufansong yufansong added enhancement New feature or request severity:low Minor issues or affecting single user labels May 11, 2024
@li-boxuan
Copy link
Collaborator

We already have #1944 that tracks costs. We could incrementally build more, and eventually, refactor them to be OpenTelemetry compatible.

@yufansong
Copy link
Collaborator

Just curious, is there any other popular open source solution like OpenLLMetry?

@nirga
Copy link
Author

nirga commented May 29, 2024

@li-boxuan happy to contribute this if you give me the green light :)

@yufansong OpenLLMetry is the most popular one and is fully compliant with OpenTelemetry standards (I know that, because I'm defining them these days :) )

@li-boxuan
Copy link
Collaborator

li-boxuan commented May 29, 2024

@nirga that would be awesome, please go ahead!

Update: sorry I didn’t realize it’s a commercial product. Would you mind sharing some plans first before you start any dev work?

@yufansong
Copy link
Collaborator

yufansong commented May 29, 2024

@nirga that would be awesome, please go ahead!

Update: sorry I didn’t realize it’s a commercial product. Would you mind sharing some plans first before you start any dev work?

I test it locally, it seems require me to register and get the api_key before using sdk. If in this case, I think maybe not suitable to intergate into opendevin. Or at least I need to discuss with other core maintainers.

Also, if we try to add it into opendevin, it will collect prompts and response from user, which is also a large change need to discuss with other maintainers.

@nirga
Copy link
Author

nirga commented May 29, 2024

Hey @li-boxuan and @yufansong! it's not a commercial product. OpenLLMetry is completely open source Apache 2.0 project. The data it outputs can be connected to 20 different platforms for visualization, some of them oss (like signoz or hyperdx) and some not. Our platform, traceloop, is one of these.

See this list of integrations - https://www.traceloop.com/docs/openllmetry/integrations/introduction

The error you got @yufansong is basically asking you to connect it to some destination to see the traces.

@nirga
Copy link
Author

nirga commented Jun 3, 2024

@li-boxuan what are your thoughts on this?

@yufansong
Copy link
Collaborator

Hey @li-boxuan and @yufansong! it's not a commercial product. OpenLLMetry is completely open source Apache 2.0 project. The data it outputs can be connected to 20 different platforms for visualization, some of them oss (like signoz or hyperdx) and some not. Our platform, traceloop, is one of these.

See this list of integrations - https://www.traceloop.com/docs/openllmetry/integrations/introduction

The error you got @yufansong is basically asking you to connect it to some destination to see the traces.

Ah, sorry for the late reply. My previous problem is, when I run Traceloop.init(disable_batch=True), it will throw the following error:

Error: Missing Traceloop API key, go to https://app.traceloop.com/settings/api-keys to create one
Set the TRACELOOP_API_KEY environment variable to the key

Warning: Traceloop not initialized, make sure you call Traceloop.init()

Do you mean actually I don't need to register and can directly following like this way to avoid this initialization error?

@yufansong
Copy link
Collaborator

yufansong commented Jun 3, 2024

Update: I also find these two tools for LLM Observability, but it seems both of them are commercial products and no open source version can use.
https://www.helicone.ai/
https://www.langchain.com/

@nirga
Copy link
Author

nirga commented Jun 6, 2024

@yufansong exactly! There are 15 different platforms you can connect to, some of them (HyperDX and SigNoz) are completely OSS

Copy link
Contributor

github-actions bot commented Jul 7, 2024

This issue is stale because it has been open for 30 days with no activity. Remove stale label or comment or this will be closed in 7 days.

@github-actions github-actions bot added the Stale Inactive for 30 days label Jul 7, 2024
Copy link
Contributor

This issue was closed because it has been stalled for over 30 days with no activity.

@github-actions github-actions bot closed this as not planned Won't fix, can't repro, duplicate, stale Jul 14, 2024
@kripper
Copy link

kripper commented Dec 22, 2024

I'm trying Phoenix.
With LiteLLM and Vertex, I have this issue:
Arize-ai/phoenix#5813

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request severity:low Minor issues or affecting single user Stale Inactive for 30 days
Projects
None yet
Development

No branches or pull requests

4 participants