{"exhaustive":{"nbHits":false,"typo":false},"exhaustiveNbHits":false,"exhaustiveTypo":false,"hits":[{"_highlightResult":{"author":{"matchLevel":"none","matchedWords":[],"value":"dot_treo"},"story_text":{"fullyHighlighted":false,"matchLevel":"full","matchedWords":["litellm"],"value":"About an hour ago new versions have been deployed to PyPI.<p>I was just setting up a new project, and things behaved weirdly. My laptop ran out of RAM, it looked like a forkbomb was running.<p>I've investigated, and found that a base64 encoded blob has been added to proxy_server.py.<p>It writes and decodes another file which it then runs.<p>I'm in the process of reporting this upstream, but wanted to give everyone here a headsup.<p>It is also reported in this issue:\n<a href=\"https://github.com/BerriAI/litellm/issues/24512\" rel=\"nofollow\">https://github.com/BerriAI/<em>litellm</em>/issues/24512</a>"},"title":{"fullyHighlighted":false,"matchLevel":"full","matchedWords":["litellm"],"value":"Tell HN: <em>Litellm</em> 1.82.7 and 1.82.8 on PyPI are compromised"},"url":{"fullyHighlighted":false,"matchLevel":"full","matchedWords":["litellm"],"value":"https://github.com/BerriAI/<em>litellm</em>/issues/24512"}},"_tags":["story","author_dot_treo","story_47501426"],"author":"dot_treo","children":[47501432,47501658,47501856,47501928,47501993,47502002,47502008,47502034,47502063,47502085,47502109,47502237,47502260,47502272,47502296,47502297,47502301,47502309,47502319,47502346,47502350,47502353,47502355,47502380,47502402,47502412,47502434,47502440,47502447,47502454,47502459,47502493,47502529,47502542,47502548,47502549,47502568,47502586,47502604,47502619,47502731,47502769,47502785,47502798,47502839,47502856,47502858,47502906,47502920,47502925,47502955,47502980,47503031,47503065,47503106,47503114,47503196,47503270,47503281,47503343,47503373,47503580,47503590,47503685,47503702,47503725,47503842,47504102,47504118,47504121,47504191,47504387,47504719,47504732,47504933,47505214,47505215,47505713,47505844,47505992,47506076,47506099,47506165,47506200,47506347,47506350,47506356,47506618,47506658,47506701,47506858,47506974,47507089,47507545,47507548,47507550,47507593,47507836,47508055,47508120,47508281,47508315,47508422,47508540,47509479,47510199,47510246,47510301,47510350,47510471,47510846,47511149,47511188,47511296,47511671,47511696,47511845,47511907,47512080,47512083,47512165,47512178,47512863,47513129,47513787,47513932,47514873,47515393,47515479,47515544,47515626,47516215,47516771,47517825,47518203,47518256,47519380,47519747,47522157,47522817,47526751,47529617,47529741,47530192,47595397],"created_at":"2026-03-24T12:06:29Z","created_at_i":1774353989,"num_comments":500,"objectID":"47501426","points":938,"story_id":47501426,"story_text":"About an hour ago new versions have been deployed to PyPI.<p>I was just setting up a new project, and things behaved weirdly. My laptop ran out of RAM, it looked like a forkbomb was running.<p>I&#x27;ve investigated, and found that a base64 encoded blob has been added to proxy_server.py.<p>It writes and decodes another file which it then runs.<p>I&#x27;m in the process of reporting this upstream, but wanted to give everyone here a headsup.<p>It is also reported in this issue:\n<a href=\"https:&#x2F;&#x2F;github.com&#x2F;BerriAI&#x2F;litellm&#x2F;issues&#x2F;24512\" rel=\"nofollow\">https:&#x2F;&#x2F;github.com&#x2F;BerriAI&#x2F;litellm&#x2F;issues&#x2F;24512</a>","title":"Tell HN: Litellm 1.82.7 and 1.82.8 on PyPI are compromised","updated_at":"2026-05-15T07:48:27Z","url":"https://github.com/BerriAI/litellm/issues/24512"},{"_highlightResult":{"author":{"matchLevel":"none","matchedWords":[],"value":"theanonymousone"},"title":{"fullyHighlighted":false,"matchLevel":"full","matchedWords":["litellm"],"value":"Malicious <em>litellm</em>_init.pth in <em>litellm</em> 1.82.8 PyPI package \u2013 credential stealer"},"url":{"fullyHighlighted":false,"matchLevel":"full","matchedWords":["litellm"],"value":"https://github.com/BerriAI/<em>litellm</em>/issues/24512"}},"_tags":["story","author_theanonymousone","story_47501729"],"author":"theanonymousone","children":[47507320,47508414],"created_at":"2026-03-24T12:36:20Z","created_at_i":1774355780,"num_comments":1,"objectID":"47501729","points":739,"story_id":47501729,"title":"Malicious litellm_init.pth in litellm 1.82.8 PyPI package \u2013 credential stealer","updated_at":"2026-04-24T17:45:46Z","url":"https://github.com/BerriAI/litellm/issues/24512"},{"_highlightResult":{"author":{"matchLevel":"none","matchedWords":[],"value":"Fibonar"},"story_text":{"fullyHighlighted":false,"matchLevel":"full","matchedWords":["litellm"],"value":"Related: <i>Tell HN: <em>Litellm</em> 1.82.7 and 1.82.8 on PyPI are compromised</i> - <a href=\"https://news.ycombinator.com/item?id=47501426\">https://news.ycombinator.com/item?id=47501426</a> (483 comments)"},"title":{"fullyHighlighted":false,"matchLevel":"full","matchedWords":["litellm"],"value":"My minute-by-minute response to the <em>LiteLLM</em> malware attack"},"url":{"fullyHighlighted":false,"matchLevel":"full","matchedWords":["litellm"],"value":"https://futuresearch.ai/blog/<em>litellm</em>-attack-transcript/"}},"_tags":["story","author_Fibonar","story_47531967"],"author":"Fibonar","children":[47531968,47532094,47532318,47532491,47532515,47532640,47532804,47532909,47532924,47533207,47533298,47533420,47533439,47533674,47534006,47534040,47534043,47534045,47534273,47534346,47534363,47534440,47534483,47534491,47534740,47534751,47534844,47534853,47534907,47535440,47535576,47536094,47536269,47536543,47536693,47536704,47537619,47537717,47537723,47538465,47538740,47538750,47538890,47539922,47540396,47541315,47542312,47542760,47544903,47546307,47546742,47549009,47559525],"created_at":"2026-03-26T15:48:40Z","created_at_i":1774540120,"num_comments":157,"objectID":"47531967","points":441,"story_id":47531967,"story_text":"Related: <i>Tell HN: Litellm 1.82.7 and 1.82.8 on PyPI are compromised</i> - <a href=\"https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=47501426\">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=47501426</a> (483 comments)","title":"My minute-by-minute response to the LiteLLM malware attack","updated_at":"2026-05-25T13:57:07Z","url":"https://futuresearch.ai/blog/litellm-attack-transcript/"},{"_highlightResult":{"author":{"matchLevel":"none","matchedWords":[],"value":"jackson-mcd"},"title":{"fullyHighlighted":false,"matchLevel":"full","matchedWords":["litellm"],"value":"Mercor says it was hit by cyberattack tied to compromise <em>LiteLLM</em>"},"url":{"fullyHighlighted":false,"matchLevel":"full","matchedWords":["litellm"],"value":"https://techcrunch.com/2026/03/31/mercor-says-it-was-hit-by-cyberattack-tied-to-compromise-of-open-source-<em>litellm</em>-project/"}},"_tags":["story","author_jackson-mcd","story_47596739"],"author":"jackson-mcd","children":[47610931,47611415,47611434,47611488,47611562,47611831,47612742,47613934,47614438,47614792,47617014,47618389,47618991,47622077,47622098],"created_at":"2026-04-01T04:14:41Z","created_at_i":1775016881,"num_comments":45,"objectID":"47596739","points":151,"story_id":47596739,"title":"Mercor says it was hit by cyberattack tied to compromise LiteLLM","updated_at":"2026-08-01T03:12:35Z","url":"https://techcrunch.com/2026/03/31/mercor-says-it-was-hit-by-cyberattack-tied-to-compromise-of-open-source-litellm-project/"},{"_highlightResult":{"author":{"matchLevel":"none","matchedWords":[],"value":"ij23"},"story_text":{"fullyHighlighted":false,"matchLevel":"full","matchedWords":["litellm"],"value":"Hello hacker news,<p>I\u2019m the maintainer of <em>liteLLM</em>() - package to simplify input/output to OpenAI, Azure, Cohere, Anthropic, Hugging face API Endpoints: <a href=\"https://github.com/BerriAI/litellm/\">https://github.com/BerriAI/<em>litellm</em>/</a><p>We\u2019re open sourcing our implementation of <em>liteLLM</em> proxy: <a href=\"https://github.com/BerriAI/litellm/blob/main/cookbook/proxy-server/readme.md\">https://github.com/BerriAI/<em>litellm</em>/blob/main/cookbook/proxy-...</a><p>TLDR: It has one API endpoint /chat/completions and standardizes input/output for 50+ LLM models + handles logging, error tracking, caching, streaming<p>What can <em>liteLLM</em> proxy do?\n- It\u2019s a central place to manage all LLM provider integrations<p>- Consistent Input/Output Format\n    - Call all models using the OpenAI format: completion(model, messages)\n    - Text responses will always be available at ['choices'][0]['message']['content']<p>- Error Handling Using Model Fallbacks (if GPT-4 fails, try llama2)<p>- Logging - Log Requests, Responses and Errors to Supabase, Posthog, Mixpanel, Sentry, Helicone<p>- Token Usage &amp; Spend - Track Input + Completion tokens used + Spend/model<p>- Caching - Implementation of Semantic Caching<p>- Streaming &amp; Async Support - Return generators to stream text responses<p>You can deploy <em>liteLLM</em> to your own infrastructure using Railway, GCP, AWS, Azure<p>Happy completion() !"},"title":{"fullyHighlighted":false,"matchLevel":"full","matchedWords":["litellm"],"value":"Show HN: <em>liteLLM</em> Proxy Server: 50+ LLM Models, Error Handling, Caching"},"url":{"fullyHighlighted":false,"matchLevel":"full","matchedWords":["litellm"],"value":"https://github.com/BerriAI/<em>litellm</em>/blob/main/cookbook/proxy-server/readme.md"}},"_tags":["story","author_ij23","story_37095542","show_hn"],"author":"ij23","children":[37096039,37096625,37096662,37096686,37096881,37097078,37097106,37098103,37099449,37100300,37105236,37128926],"created_at":"2023-08-12T00:08:13Z","created_at_i":1691798893,"num_comments":34,"objectID":"37095542","points":140,"story_id":37095542,"story_text":"Hello hacker news,<p>I\u2019m the maintainer of liteLLM() - package to simplify input&#x2F;output to OpenAI, Azure, Cohere, Anthropic, Hugging face API Endpoints: <a href=\"https:&#x2F;&#x2F;github.com&#x2F;BerriAI&#x2F;litellm&#x2F;\">https:&#x2F;&#x2F;github.com&#x2F;BerriAI&#x2F;litellm&#x2F;</a><p>We\u2019re open sourcing our implementation of liteLLM proxy: <a href=\"https:&#x2F;&#x2F;github.com&#x2F;BerriAI&#x2F;litellm&#x2F;blob&#x2F;main&#x2F;cookbook&#x2F;proxy-server&#x2F;readme.md\">https:&#x2F;&#x2F;github.com&#x2F;BerriAI&#x2F;litellm&#x2F;blob&#x2F;main&#x2F;cookbook&#x2F;proxy-...</a><p>TLDR: It has one API endpoint &#x2F;chat&#x2F;completions and standardizes input&#x2F;output for 50+ LLM models + handles logging, error tracking, caching, streaming<p>What can liteLLM proxy do?\n- It\u2019s a central place to manage all LLM provider integrations<p>- Consistent Input&#x2F;Output Format\n    - Call all models using the OpenAI format: completion(model, messages)\n    - Text responses will always be available at [&#x27;choices&#x27;][0][&#x27;message&#x27;][&#x27;content&#x27;]<p>- Error Handling Using Model Fallbacks (if GPT-4 fails, try llama2)<p>- Logging - Log Requests, Responses and Errors to Supabase, Posthog, Mixpanel, Sentry, Helicone<p>- Token Usage &amp; Spend - Track Input + Completion tokens used + Spend&#x2F;model<p>- Caching - Implementation of Semantic Caching<p>- Streaming &amp; Async Support - Return generators to stream text responses<p>You can deploy liteLLM to your own infrastructure using Railway, GCP, AWS, Azure<p>Happy completion() !","title":"Show HN: liteLLM Proxy Server: 50+ LLM Models, Error Handling, Caching","updated_at":"2026-03-08T20:37:54Z","url":"https://github.com/BerriAI/litellm/blob/main/cookbook/proxy-server/readme.md"},{"_highlightResult":{"author":{"matchLevel":"none","matchedWords":[],"value":"ij23"},"story_text":{"fullyHighlighted":false,"matchLevel":"full","matchedWords":["litellm"],"value":"I built this library because langchain was too bloated and I needed a simple abstraction to call multiple LLM APIs. <em>litellm</em> has two functions - completion(), embedding()"},"title":{"fullyHighlighted":false,"matchLevel":"full","matchedWords":["litellm"],"value":"Show HN: <em>Litellm</em> \u2013 Simple library to standardize OpenAI, Cohere, Azure LLM I/O"},"url":{"fullyHighlighted":false,"matchLevel":"full","matchedWords":["litellm"],"value":"https://github.com/BerriAI/<em>litellm</em>"}},"_tags":["story","author_ij23","story_36887711","show_hn"],"author":"ij23","children":[36888761,36889561,36890114,36892376,36892443,36896206,36900108],"created_at":"2023-07-27T01:31:35Z","created_at_i":1690421495,"num_comments":17,"objectID":"36887711","points":62,"story_id":36887711,"story_text":"I built this library because langchain was too bloated and I needed a simple abstraction to call multiple LLM APIs. litellm has two functions - completion(), embedding()","title":"Show HN: Litellm \u2013 Simple library to standardize OpenAI, Cohere, Azure LLM I/O","updated_at":"2026-04-08T23:29:44Z","url":"https://github.com/BerriAI/litellm"},{"_highlightResult":{"author":{"matchLevel":"none","matchedWords":[],"value":"ticktockten"},"story_text":{"fullyHighlighted":false,"matchLevel":"full","matchedWords":["litellm"],"value":"I've been working on Fast <em>LiteLLM</em> - a Rust acceleration layer for the popular <em>LiteLLM</em> library - and I had some interesting learnings that might resonate with other developers trying to squeeze performance out of existing systems.<p>My assumption was that <em>LiteLLM</em>, being a Python library, would have plenty of low-hanging fruit for optimization. I set out to create a Rust layer using PyO3 to accelerate the performance-critical parts: token counting, routing, rate limiting, and connection pooling.<p>The Approach<p>- Built Rust implementations for token counting using tiktoken-rs<p>- Added lock-free data structures with DashMap for concurrent operations<p>- Implemented async-friendly rate limiting<p>- Created monkeypatch shims to replace Python functions transparently<p>- Added comprehensive feature flags for safe, gradual rollouts<p>- Developed performance monitoring to track improvements in real-time<p>After building out all the Rust acceleration, I ran my comprehensive benchmark comparing baseline <em>LiteLLM</em> vs. the shimmed version:<p>Function             Baseline Time   Shimmed Time    Speedup    Improvement  Status<p>token_counter        0.000035s     0.000036s     0.99x          -0.6%<p>count_tokens_batch   0.000001s     0.000001s     1.10x          +9.1%<p>router               0.001309s     0.001299s     1.01x          +0.7%<p>rate_limiter         0.000000s     0.000000s     1.85x         +45.9%<p>connection_pool      0.000000s     0.000000s     1.63x         +38.7%<p>Turns out <em>LiteLLM</em> is already quite well-optimized! The core token counting was essentially unchanged (0.6% slower, likely within measurement noise), and the most significant gains came from the more complex operations like rate limiting and connection pooling where Rust's concurrent primitives made a real difference.<p>Key Takeaways<p>1. Don't assume existing libraries are under-optimized - The maintainers likely know their domain well\n2. Focus on algorithmic improvements over reimplementation - Sometimes a better approach beats a faster language\n3. Micro-benchmarks can be misleading - Real-world performance impact varies significantly\n4. The most gains often come from the complex parts, not the simple operations\n5. Even &quot;modest&quot; improvements can matter at scale - 45% improvements in rate limiting are meaningful for high-throughput applications<p>While the core token counting saw minimal improvement, the rate limiting and connection pooling gains still provide value for high-volume use cases. The infrastructure I built (feature flags, performance monitoring, safe fallbacks) creates a solid foundation for future optimizations.<p>The project continues as Fast <em>LiteLLM</em> on GitHub for anyone interested in the Rust-Python integration patterns, even if the performance gains were humbling.<p>Edit: To clarify - the negative performance for token_counter is likely in the noise range of measurement, suggesting that <em>LiteLLM</em>'s token counting is already well-optimized. The 45%+ gains in rate limiting and connection pooling still provide value for high-throughput applications."},"title":{"fullyHighlighted":false,"matchLevel":"full","matchedWords":["litellm"],"value":"Show HN: Optimizing <em>LiteLLM</em> with Rust \u2013 When Expectations Meet Reality"},"url":{"fullyHighlighted":false,"matchLevel":"full","matchedWords":["litellm"],"value":"https://github.com/neul-labs/fast-<em>litellm</em>"}},"_tags":["story","author_ticktockten","story_45968461","show_hn"],"author":"ticktockten","children":[45968997,45969313,45969316,45970456,45970680],"created_at":"2025-11-18T16:32:16Z","created_at_i":1763483536,"num_comments":9,"objectID":"45968461","points":27,"story_id":45968461,"story_text":"I&#x27;ve been working on Fast LiteLLM - a Rust acceleration layer for the popular LiteLLM library - and I had some interesting learnings that might resonate with other developers trying to squeeze performance out of existing systems.<p>My assumption was that LiteLLM, being a Python library, would have plenty of low-hanging fruit for optimization. I set out to create a Rust layer using PyO3 to accelerate the performance-critical parts: token counting, routing, rate limiting, and connection pooling.<p>The Approach<p>- Built Rust implementations for token counting using tiktoken-rs<p>- Added lock-free data structures with DashMap for concurrent operations<p>- Implemented async-friendly rate limiting<p>- Created monkeypatch shims to replace Python functions transparently<p>- Added comprehensive feature flags for safe, gradual rollouts<p>- Developed performance monitoring to track improvements in real-time<p>After building out all the Rust acceleration, I ran my comprehensive benchmark comparing baseline LiteLLM vs. the shimmed version:<p>Function             Baseline Time   Shimmed Time    Speedup    Improvement  Status<p>token_counter        0.000035s     0.000036s     0.99x          -0.6%<p>count_tokens_batch   0.000001s     0.000001s     1.10x          +9.1%<p>router               0.001309s     0.001299s     1.01x          +0.7%<p>rate_limiter         0.000000s     0.000000s     1.85x         +45.9%<p>connection_pool      0.000000s     0.000000s     1.63x         +38.7%<p>Turns out LiteLLM is already quite well-optimized! The core token counting was essentially unchanged (0.6% slower, likely within measurement noise), and the most significant gains came from the more complex operations like rate limiting and connection pooling where Rust&#x27;s concurrent primitives made a real difference.<p>Key Takeaways<p>1. Don&#x27;t assume existing libraries are under-optimized - The maintainers likely know their domain well\n2. Focus on algorithmic improvements over reimplementation - Sometimes a better approach beats a faster language\n3. Micro-benchmarks can be misleading - Real-world performance impact varies significantly\n4. The most gains often come from the complex parts, not the simple operations\n5. Even &quot;modest&quot; improvements can matter at scale - 45% improvements in rate limiting are meaningful for high-throughput applications<p>While the core token counting saw minimal improvement, the rate limiting and connection pooling gains still provide value for high-volume use cases. The infrastructure I built (feature flags, performance monitoring, safe fallbacks) creates a solid foundation for future optimizations.<p>The project continues as Fast LiteLLM on GitHub for anyone interested in the Rust-Python integration patterns, even if the performance gains were humbling.<p>Edit: To clarify - the negative performance for token_counter is likely in the noise range of measurement, suggesting that LiteLLM&#x27;s token counting is already well-optimized. The 45%+ gains in rate limiting and connection pooling still provide value for high-throughput applications.","title":"Show HN: Optimizing LiteLLM with Rust \u2013 When Expectations Meet Reality","updated_at":"2026-07-04T14:19:12Z","url":"https://github.com/neul-labs/fast-litellm"},{"_highlightResult":{"author":{"matchLevel":"none","matchedWords":[],"value":"Bullhorn9268"},"title":{"fullyHighlighted":false,"matchLevel":"full","matchedWords":["litellm"],"value":"<em>LiteLLM</em> PyPI has been compromised an hour ago, do not update"},"url":{"fullyHighlighted":false,"matchLevel":"full","matchedWords":["litellm"],"value":"https://futuresearch.ai/blog/<em>litellm</em>-pypi-supply-chain-attack/"}},"_tags":["story","author_Bullhorn9268","story_47501431"],"author":"Bullhorn9268","children":[47501506,47501567,47507343,47508084,47518522,47526525],"created_at":"2026-03-24T12:07:02Z","created_at_i":1774354022,"num_comments":5,"objectID":"47501431","points":27,"story_id":47501431,"title":"LiteLLM PyPI has been compromised an hour ago, do not update","updated_at":"2026-03-26T04:10:16Z","url":"https://futuresearch.ai/blog/litellm-pypi-supply-chain-attack/"},{"_highlightResult":{"author":{"matchLevel":"none","matchedWords":[],"value":"justinmsnider"},"story_text":{"fullyHighlighted":false,"matchLevel":"full","matchedWords":["litellm"],"value":"Following the discussions around the <em>LiteLLM</em> compromise and today's terrifying telnyx zero-day, my team and I wrote up a technical breakdown of how the TeamPCP actors are bypassing legacy SCA tools.<p>The tl;dr is that traditional scanners are looking for signatures, while the attackers are weaponizing context. By hiding an executable payload inside mathematically valid .wav audio frames, TeamPCP ensured that content filters and CVE databases waved the Telnyx payload right through.<p>We spent the weekend building an open-source CLI (wtmp) to hunt for this exact behavior. Instead of asking &quot;Is this package on a blacklist?&quot;, it maps your Node/Python dependency graph and uses a LangGraph process to actually read the code. It asks things like: &quot;Why is a telephony SDK running an XOR decryption loop on an audio file and piping it to a shell?&quot;<p>The reality check: Because it relies on LLMs to infer intent, expect false positives. It is not a deterministic CI/CD blocker; it\u2019s a flashlight to help you triage your blast radius during an active crisis like today.<p>I\u2019ll be hanging out in the comments. I\u2019d love for you to read the write-up, test the CLI against your local trees, and absolutely tear apart our prompt architecture and logic."},"title":{"fullyHighlighted":false,"matchLevel":"full","matchedWords":["litellm"],"value":"Catching the <em>LiteLLM</em> and Telnyx supply chain zero-days via semantic analysis"},"url":{"matchLevel":"none","matchedWords":[],"value":"https://point-wild.github.io/who-touched-my-packages/"}},"_tags":["story","author_justinmsnider","story_47564188"],"author":"justinmsnider","children":[47564195,47565503,47566138,47566525],"created_at":"2026-03-29T15:49:30Z","created_at_i":1774799370,"num_comments":5,"objectID":"47564188","points":10,"story_id":47564188,"story_text":"Following the discussions around the LiteLLM compromise and today&#x27;s terrifying telnyx zero-day, my team and I wrote up a technical breakdown of how the TeamPCP actors are bypassing legacy SCA tools.<p>The tl;dr is that traditional scanners are looking for signatures, while the attackers are weaponizing context. By hiding an executable payload inside mathematically valid .wav audio frames, TeamPCP ensured that content filters and CVE databases waved the Telnyx payload right through.<p>We spent the weekend building an open-source CLI (wtmp) to hunt for this exact behavior. Instead of asking &quot;Is this package on a blacklist?&quot;, it maps your Node&#x2F;Python dependency graph and uses a LangGraph process to actually read the code. It asks things like: &quot;Why is a telephony SDK running an XOR decryption loop on an audio file and piping it to a shell?&quot;<p>The reality check: Because it relies on LLMs to infer intent, expect false positives. It is not a deterministic CI&#x2F;CD blocker; it\u2019s a flashlight to help you triage your blast radius during an active crisis like today.<p>I\u2019ll be hanging out in the comments. I\u2019d love for you to read the write-up, test the CLI against your local trees, and absolutely tear apart our prompt architecture and logic.","title":"Catching the LiteLLM and Telnyx supply chain zero-days via semantic analysis","updated_at":"2026-03-30T14:54:22Z","url":"https://point-wild.github.io/who-touched-my-packages/"},{"_highlightResult":{"author":{"matchLevel":"none","matchedWords":[],"value":"billybuckwheat"},"title":{"fullyHighlighted":false,"matchLevel":"full","matchedWords":["litellm"],"value":"How to Deploy Lightweight Language Models on Embedded Linux with <em>LiteLLM</em>"},"url":{"fullyHighlighted":false,"matchLevel":"full","matchedWords":["litellm"],"value":"https://www.linux.com/news/how-to-deploy-lightweight-language-models-on-embedded-linux-with-<em>litellm</em>/"}},"_tags":["story","author_billybuckwheat","story_45520581"],"author":"billybuckwheat","created_at":"2025-10-08T20:58:11Z","created_at_i":1759957091,"num_comments":0,"objectID":"45520581","points":10,"story_id":45520581,"title":"How to Deploy Lightweight Language Models on Embedded Linux with LiteLLM","updated_at":"2026-03-05T22:48:10Z","url":"https://www.linux.com/news/how-to-deploy-lightweight-language-models-on-embedded-linux-with-litellm/"},{"_highlightResult":{"author":{"matchLevel":"none","matchedWords":[],"value":"Dylancouzon"},"title":{"fullyHighlighted":false,"matchLevel":"full","matchedWords":["litellm"],"value":"Claude Code Observability via <em>LiteLLM</em> and OpenInference"},"url":{"matchLevel":"none","matchedWords":[],"value":"https://github.com/Teraflop-Inc/dev-agent-lens"}},"_tags":["story","author_Dylancouzon","story_44985734"],"author":"Dylancouzon","children":[44985742],"created_at":"2025-08-22T15:23:11Z","created_at_i":1755876191,"num_comments":2,"objectID":"44985734","points":8,"story_id":44985734,"title":"Claude Code Observability via LiteLLM and OpenInference","updated_at":"2026-03-05T22:33:11Z","url":"https://github.com/Teraflop-Inc/dev-agent-lens"},{"_highlightResult":{"author":{"matchLevel":"none","matchedWords":[],"value":"vnorilo"},"title":{"fullyHighlighted":false,"matchLevel":"full","matchedWords":["litellm"],"value":"Supply Chain Attack in <em>litellm</em> 1.82.8 on PyPI"},"url":{"fullyHighlighted":false,"matchLevel":"full","matchedWords":["litellm"],"value":"https://futuresearch.ai/blog/<em>litellm</em>-pypi-supply-chain-attack/"}},"_tags":["story","author_vnorilo","story_47508561"],"author":"vnorilo","children":[47508676,47526539],"created_at":"2026-03-24T20:20:21Z","created_at_i":1774383621,"num_comments":1,"objectID":"47508561","points":8,"story_id":47508561,"title":"Supply Chain Attack in litellm 1.82.8 on PyPI","updated_at":"2026-03-28T05:18:10Z","url":"https://futuresearch.ai/blog/litellm-pypi-supply-chain-attack/"},{"_highlightResult":{"author":{"matchLevel":"none","matchedWords":[],"value":"havercosine"},"title":{"fullyHighlighted":false,"matchLevel":"full","matchedWords":["litellm"],"value":"Bitfrost \u2013 LLM gateway 90x faster than <em>Litellm</em> at p99"},"url":{"matchLevel":"none","matchedWords":[],"value":"https://github.com/maximhq/bifrost"}},"_tags":["story","author_havercosine","story_44820784"],"author":"havercosine","children":[44820785],"created_at":"2025-08-07T05:06:18Z","created_at_i":1754543178,"num_comments":1,"objectID":"44820784","points":8,"story_id":44820784,"title":"Bitfrost \u2013 LLM gateway 90x faster than Litellm at p99","updated_at":"2026-05-07T15:37:45Z","url":"https://github.com/maximhq/bifrost"},{"_highlightResult":{"author":{"matchLevel":"none","matchedWords":[],"value":"lackoftactics"},"title":{"fullyHighlighted":false,"matchLevel":"full","matchedWords":["litellm"],"value":"<em>LiteLLM</em> Migrates to Rust"},"url":{"fullyHighlighted":false,"matchLevel":"full","matchedWords":["litellm"],"value":"https://docs.<em>litellm</em>.ai/blog/<em>litellm</em>-rust-launch"}},"_tags":["story","author_lackoftactics","story_48644899"],"author":"lackoftactics","children":[48647423,48647489,48687727,48814315],"created_at":"2026-06-23T13:44:40Z","created_at_i":1782222280,"num_comments":4,"objectID":"48644899","points":6,"story_id":48644899,"title":"LiteLLM Migrates to Rust","updated_at":"2026-07-07T06:30:09Z","url":"https://docs.litellm.ai/blog/litellm-rust-launch"},{"_highlightResult":{"author":{"matchLevel":"none","matchedWords":[],"value":"billybuckwheat"},"title":{"fullyHighlighted":false,"matchLevel":"full","matchedWords":["litellm"],"value":"Popular <em>LiteLLM</em> PyPI package backdoored to steal credentials, auth tokens"},"url":{"fullyHighlighted":false,"matchLevel":"full","matchedWords":["litellm"],"value":"https://www.bleepingcomputer.com/news/security/popular-<em>litellm</em>-pypi-package-compromised-in-teampcp-supply-chain-attack/"}},"_tags":["story","author_billybuckwheat","story_47521564"],"author":"billybuckwheat","created_at":"2026-03-25T18:50:01Z","created_at_i":1774464601,"num_comments":0,"objectID":"47521564","points":6,"story_id":47521564,"title":"Popular LiteLLM PyPI package backdoored to steal credentials, auth tokens","updated_at":"2026-03-26T13:27:04Z","url":"https://www.bleepingcomputer.com/news/security/popular-litellm-pypi-package-compromised-in-teampcp-supply-chain-attack/"},{"_highlightResult":{"author":{"matchLevel":"none","matchedWords":[],"value":"ij23"},"story_text":{"fullyHighlighted":false,"matchLevel":"full","matchedWords":["litellm"],"value":"Needed a simple way to call multiple LLM providers. <em>LiteLLM</em> provides 2 functions - `completion` and `embedding`; and guarantees consistent input/output formats across all providers. That's it!"},"title":{"fullyHighlighted":false,"matchLevel":"full","matchedWords":["litellm"],"value":"Show HN: <em>LiteLLM</em> -Open-Source Library for Anthropic,Azure,OpenAI, etc. API Calls"},"url":{"fullyHighlighted":false,"matchLevel":"full","matchedWords":["litellm"],"value":"https://<em>litellm</em>.ai/"}},"_tags":["story","author_ij23","story_37048149","show_hn"],"author":"ij23","children":[37048973],"created_at":"2023-08-08T12:41:22Z","created_at_i":1691498482,"num_comments":1,"objectID":"37048149","points":5,"story_id":37048149,"story_text":"Needed a simple way to call multiple LLM providers. LiteLLM provides 2 functions - `completion` and `embedding`; and guarantees consistent input&#x2F;output formats across all providers. That&#x27;s it!","title":"Show HN: LiteLLM -Open-Source Library for Anthropic,Azure,OpenAI, etc. API Calls","updated_at":"2024-09-20T14:49:55Z","url":"https://litellm.ai/"},{"_highlightResult":{"author":{"matchLevel":"none","matchedWords":[],"value":"roshanshaik"},"title":{"fullyHighlighted":false,"matchLevel":"full","matchedWords":["litellm"],"value":"<em>LiteLLM</em> Supply Chain Attack: Defense in Depth Is the Only AI Security Strategy"},"url":{"fullyHighlighted":false,"matchLevel":"full","matchedWords":["litellm"],"value":"https://www.runtimeai.io/blog-<em>litellm</em>-attack.html"}},"_tags":["story","author_roshanshaik","story_47526954"],"author":"roshanshaik","children":[47527814],"created_at":"2026-03-26T05:38:32Z","created_at_i":1774503512,"num_comments":0,"objectID":"47526954","points":5,"story_id":47526954,"title":"LiteLLM Supply Chain Attack: Defense in Depth Is the Only AI Security Strategy","updated_at":"2026-04-15T03:35:39Z","url":"https://www.runtimeai.io/blog-litellm-attack.html"},{"_highlightResult":{"author":{"matchLevel":"none","matchedWords":[],"value":"PranayBatta"},"title":{"fullyHighlighted":false,"matchLevel":"full","matchedWords":["litellm"],"value":"50\u00d7 faster than <em>LiteLLM</em>: Bifrost is a Go-based LLM gateway built for scale."},"url":{"matchLevel":"none","matchedWords":[],"value":"https://github.com/maximhq/bifrost"}},"_tags":["story","author_PranayBatta","story_46196561"],"author":"PranayBatta","children":[46196562],"created_at":"2025-12-08T19:31:48Z","created_at_i":1765222308,"num_comments":0,"objectID":"46196561","points":5,"story_id":46196561,"title":"50\u00d7 faster than LiteLLM: Bifrost is a Go-based LLM gateway built for scale.","updated_at":"2026-03-05T23:10:23Z","url":"https://github.com/maximhq/bifrost"},{"_highlightResult":{"author":{"matchLevel":"none","matchedWords":[],"value":"Bluestein"},"title":{"fullyHighlighted":false,"matchLevel":"full","matchedWords":["litellm"],"value":"<em>LiteLLM</em> Python SDK Proxy Server LLM Gateway Call 100 LLM APIs in OpenAI Format"},"url":{"fullyHighlighted":false,"matchLevel":"full","matchedWords":["litellm"],"value":"https://github.com/BerriAI/<em>litellm</em>"}},"_tags":["story","author_Bluestein","story_44674162"],"author":"Bluestein","created_at":"2025-07-24T18:19:40Z","created_at_i":1753381180,"num_comments":0,"objectID":"44674162","points":5,"story_id":44674162,"title":"LiteLLM Python SDK Proxy Server LLM Gateway Call 100 LLM APIs in OpenAI Format","updated_at":"2025-07-24T20:17:18Z","url":"https://github.com/BerriAI/litellm"},{"_highlightResult":{"author":{"matchLevel":"none","matchedWords":[],"value":"santiago-pl"},"title":{"fullyHighlighted":false,"matchLevel":"full","matchedWords":["litellm"],"value":"Benchmarking AI Gateways: GoModel vs. <em>LiteLLM</em> vs. Portkey vs. Bifrost"},"url":{"fullyHighlighted":false,"matchLevel":"full","matchedWords":["litellm"],"value":"https://enterpilot.io/blog/benchmarking-ai-gateways-gomodel-<em>litellm</em>-portkey-bifrost-june-2026/"}},"_tags":["story","author_santiago-pl","story_48688213"],"author":"santiago-pl","children":[48688214],"created_at":"2026-06-26T16:04:02Z","created_at_i":1782489842,"num_comments":9,"objectID":"48688213","points":4,"story_id":48688213,"title":"Benchmarking AI Gateways: GoModel vs. LiteLLM vs. Portkey vs. Bifrost","updated_at":"2026-06-29T00:14:19Z","url":"https://enterpilot.io/blog/benchmarking-ai-gateways-gomodel-litellm-portkey-bifrost-june-2026/"}],"hitsPerPage":20,"nbHits":1774,"nbPages":50,"page":0,"params":"query=LiteLLM&advancedSyntax=true&analyticsTags=backend","processingTimeMS":8,"processingTimingsMS":{"_request":{"roundTrip":16},"fetch":{"query":5,"total":6},"total":8},"query":"LiteLLM","serverTimeMS":9}
