3 ms·
one of the cases we have observed is that Phoenix doesn't completely stick to OTel conventions. More specifically, one issue I observed is how it handles span
by pranay01 1y ago
one of the cases we have observed is that Phoenix doesn't completely stick to OTel conventions.
More specifically, one issue I observed is how it handles span kinds. If you send via OTel, the span Kinds are classified as unknown
e.g. The Phoneix screenshot here - https://signoz.io/blog/llm-observability-opentelemetry/#the-standards-problem https://signoz.io/blog/llm-observability-opentelemetry/#the-...
- CuriouslyC 1y agoIf it doesn't work for your use case that's cool, but in terms of interface for doing this kind of work it is the best. Tradeoffs.
- 7thpower 1y agoI’ve found phoenix to be a clunky experience and have been far happier with tools like langfuse. I don’t know how you can confidently say one is “the best”.
- a_khan 1y agoCurious what you prefer from langfuse over Phoenix!
- 7thpower 1y agoSorry for the delayed response! The main thing was wrestling with the instrumentation vs the out of the box langfuse python decorator that works pretty well for basic use cases. It’s been a while but I also recall that prompt management and other features in Phoenix weren’t really built out (probably not a goal for them, but I like having that functionality under the same umbrella).
- ijk 1y agoSpans labeled as 'unknown' when I definitely labeled them in the code is probably the most annoying part of Phoenix right now.
- pranay01 1y agoYes, it is happening because OpenInference assumes these span kind values https://github.com/Arize-ai/openinference/blob/b827f3dd659fc41d0002fc4d5d5f5fff2f8f5857/python/openinference-semantic-conventions/src/openinference/semconv/trace/__init__.py#L446 https://github.com/Arize-ai/openinference/blob/b827f3dd659fc... Anything which doesn't fall in other span kinds is classified as `unknown` For reference, these are span kinds which opentelemetry emits - https://github.com/open-telemetry/opentelemetry-python/blob/6f97ed8482610f70ad6c295d1c14a21af7bc3417/opentelemetry-api/src/opentelemetry/trace/__init__.py#L162 https://github.com/open-telemetry/opentelemetry-python/blob/...
- cephalization 1y agoPhoenix ingests any opentelemetry compliant spans into the platform, but the UI is geared towards displaying spans whose attributes adhere to “openinference” naming conventions. There are numerous open community standards for where to put llm information within otel spans but openinference predates most of em.