<story><title>Show HN: Laminar – Open-Source DataDog + PostHog for LLM Apps, Built in Rust</title><url>https://github.com/lmnr-ai/lmnr</url><text>Hey HN, we’re Robert, Din and Temirlan from Laminar (&lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;www.lmnr.ai&quot;&gt;https:&amp;#x2F;&amp;#x2F;www.lmnr.ai&lt;/a&gt;), an open-source observability and analytics platform for complex LLM apps. It’s designed to be fast, reliable, and scalable. The stack is RabbitMQ for message queues, Postgres for storage, Clickhouse for analytics, Qdrant for semantic search - all powered by Rust.&lt;p&gt;How is Laminar different from the swarm of other “LLM observability” platforms?&lt;p&gt;On the observability part, we’re focused on handling full execution traces, not just LLM calls. We built a Rust ingestor for OpenTelemetry (Otel) spans with GenAI semantic conventions. As LLM apps get more complex (think Agents with hundreds of LLM and function calls, or complex RAG pipelines), full tracing is critical. With Otel spans, we can: 1. Cover the entire execution trace. 2. Keep the platform future-proof 3. Leverage an amazing OpenLLMetry (&lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;traceloop&amp;#x2F;openllmetry&quot;&gt;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;traceloop&amp;#x2F;openllmetry&lt;/a&gt;), open-source package for span production.&lt;p&gt;The key difference is that we tie text analytics directly to execution traces. Rich text data makes LLM traces unique, so we let you track “semantic metrics” (like what your AI agent is actually saying) and connect those metrics to where they happen in the trace. If you want to know if your AI drive-through agent made an upsell, you can design an LLM extraction pipeline in our builder (more on it later), host it on Laminar, and handle everything from event requests to output logging. Processing requests simply come as events in the Otel span.&lt;p&gt;We think it’s a win to separate core app logic from LLM event processing. Most devs don’t want to manage background queues for LLM analytics processing but still want insights into how their Agents or RAGs are working.&lt;p&gt;Our Pipeline Builder uses graph UI where nodes are LLM and util functions, and edges showing data flow. We built a custom task execution engine with support of parallel branch executions, cycles and branches (it’s overkill for simple pipelines, but it’s extremely cool and we’ve spent a lot of time designing a robust engine). You can also call pipelines directly as API endpoints. We found them to be extremely useful for iterating on and separating LLM logic. Laminar also traces pipeline directly, which removes the overhead of sending large outputs over the network.&lt;p&gt;One thing missing from all LLM observability platforms right now is an adequate search over traces. We’re attacking this problem by indexing each span in a vector DB and performing hybrid search at query time. This feature is still in beta, but we think it’s gonna be crucial part of our platform going forward.&lt;p&gt;We also support evaluations. We loved the “run everything locally, send results to a server” approach from Braintrust and Weights &amp;amp; Biases, so we did that too: a simple SDK and nice dashboards to track everything. Evals are still early, but we’re pushing hard on them.&lt;p&gt;Our goal is to make Laminar the Supabase for LLMOps - the go-to open-source comprehensive platform for all things LLMs &amp;#x2F; GenAI. In it’s current shape, Laminar is just few weeks old and developing rapidly, we’d love any feedback or for you to give Laminar a try in your LLM projects!</text></story><parent_chain></parent_chain><comment><author>findingMeaning</author><text>Everything is LLMs these days. LLMs this, LLMs that. Am I really missing out something from these muted models? Back when it was released, they were so much capable but now everything is muted to the point they are mostly autocomplete on steroids.&lt;p&gt;How can adding analytics to a system that is designed to act like humans produce any good? What is the goal here? Could you clarify why would some need to analyze LLMs out of all the things?&lt;p&gt;&amp;gt; Rich text data makes LLM traces unique, so we let you track “semantic metrics” (like what your AI agent is actually saying) and connect those metrics to where they happen in the trace&lt;p&gt;But why does it matter? Because at the current state these are muted LLMs overseen by the big company. We have very little to control the behavior and whatever we give it, it will mostly be &amp;#x27;politically&amp;#x27; correct.&lt;p&gt;&amp;gt; One thing missing from all LLM observability platforms right now is an adequate search over traces.&lt;p&gt;Again, why do we need to evaluate LLMs? Unless you are working in a security, I see no purpose because these models aren&amp;#x27;t as capable as they used to be. Everything is muted.&lt;p&gt;For context: I don&amp;#x27;t even need to prompt engineer these days because it just gives similar result by using the default prompt. My prompts these are literally three words because it gets more of the job done that way than giving elaborate prompt with precise example and context.</text></comment>
<story><title>Show HN: Laminar – Open-Source DataDog + PostHog for LLM Apps, Built in Rust</title><url>https://github.com/lmnr-ai/lmnr</url><text>Hey HN, we’re Robert, Din and Temirlan from Laminar (&lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;www.lmnr.ai&quot;&gt;https:&amp;#x2F;&amp;#x2F;www.lmnr.ai&lt;/a&gt;), an open-source observability and analytics platform for complex LLM apps. It’s designed to be fast, reliable, and scalable. The stack is RabbitMQ for message queues, Postgres for storage, Clickhouse for analytics, Qdrant for semantic search - all powered by Rust.&lt;p&gt;How is Laminar different from the swarm of other “LLM observability” platforms?&lt;p&gt;On the observability part, we’re focused on handling full execution traces, not just LLM calls. We built a Rust ingestor for OpenTelemetry (Otel) spans with GenAI semantic conventions. As LLM apps get more complex (think Agents with hundreds of LLM and function calls, or complex RAG pipelines), full tracing is critical. With Otel spans, we can: 1. Cover the entire execution trace. 2. Keep the platform future-proof 3. Leverage an amazing OpenLLMetry (&lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;traceloop&amp;#x2F;openllmetry&quot;&gt;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;traceloop&amp;#x2F;openllmetry&lt;/a&gt;), open-source package for span production.&lt;p&gt;The key difference is that we tie text analytics directly to execution traces. Rich text data makes LLM traces unique, so we let you track “semantic metrics” (like what your AI agent is actually saying) and connect those metrics to where they happen in the trace. If you want to know if your AI drive-through agent made an upsell, you can design an LLM extraction pipeline in our builder (more on it later), host it on Laminar, and handle everything from event requests to output logging. Processing requests simply come as events in the Otel span.&lt;p&gt;We think it’s a win to separate core app logic from LLM event processing. Most devs don’t want to manage background queues for LLM analytics processing but still want insights into how their Agents or RAGs are working.&lt;p&gt;Our Pipeline Builder uses graph UI where nodes are LLM and util functions, and edges showing data flow. We built a custom task execution engine with support of parallel branch executions, cycles and branches (it’s overkill for simple pipelines, but it’s extremely cool and we’ve spent a lot of time designing a robust engine). You can also call pipelines directly as API endpoints. We found them to be extremely useful for iterating on and separating LLM logic. Laminar also traces pipeline directly, which removes the overhead of sending large outputs over the network.&lt;p&gt;One thing missing from all LLM observability platforms right now is an adequate search over traces. We’re attacking this problem by indexing each span in a vector DB and performing hybrid search at query time. This feature is still in beta, but we think it’s gonna be crucial part of our platform going forward.&lt;p&gt;We also support evaluations. We loved the “run everything locally, send results to a server” approach from Braintrust and Weights &amp;amp; Biases, so we did that too: a simple SDK and nice dashboards to track everything. Evals are still early, but we’re pushing hard on them.&lt;p&gt;Our goal is to make Laminar the Supabase for LLMOps - the go-to open-source comprehensive platform for all things LLMs &amp;#x2F; GenAI. In it’s current shape, Laminar is just few weeks old and developing rapidly, we’d love any feedback or for you to give Laminar a try in your LLM projects!</text></story><parent_chain></parent_chain><comment><author>gitroom</author><text>How will you distinguish Laminar as &amp;quot;the Supabase for LLMOps&amp;quot; from the many LLM observability platforms already claiming similar aims? Is the integration of text analytics into execution traces your secret sauce? Or, could this perceived advantage just add complexity for developers who like their systems simple and their setups minimal?</text></comment>