今日已更新 138 条资讯 | 累计 26942 条内容
关于我们

标签:#AI

找到 4795 篇相关文章

AI 资讯

The AI "Doom Loop": Why your autonomous coding agent is making things worse, and how to fix it

If you’ve spent any time working with autonomous AI coding agents recently, you know the drill. You give the agent a straightforward task: "Add a user profile page and link it to the navbar." The agent says, "I've got this." It writes some code. You run it, and it throws an import error. You paste the error back. The agent apologizes, rewrites the file, and now your routing is broken. You paste that error back. Ten iterations later, your config is mysteriously deleted, the navbar is entirely missing, and the agent is trying to install a deprecated version of React. This is the AI Agent Doom Loop. It happens because current agent frameworks mistake intelligence for discipline. We dump a 10,000-token SYSTEM_PROMPT.txt telling the agent everything about our project, hoping it remembers the architecture constraints on step 45 of its execution loop. It rarely does. I built Agent Rigor because I got tired of babysitting agents that code themselves into corners. The Root Cause: Context Rot When an agent starts a task, its context is pristine. But as it reads files, executes commands, and hits errors, its context window fills up with junk stack traces and previous failed attempts. By the time it's 20 steps deep, the original system prompt you carefully crafted is buried. The agent forgets the architecture guidelines. It starts prioritizing the immediate error in front of it over the overall goal. This is when it starts guessing, hallucinating, and making things worse. The Solution: Progressive Disclosure and Empirical Discipline Agent Rigor isn't a new LLM or a magic prompt wrapper. It's an operating system for agents that enforces strict empirical discipline . Instead of one massive prompt, Agent Rigor uses a 3-tier hierarchy: L1 (Apex Kernel): The absolute, non-negotiable laws. (e.g., "Never guess an API signature. Always grep or read the file first.") L2 (Phase Directors): Orchestration that only loads when the agent enters a specific phase (Planning, Execution, Verifica

2026-06-21 原文 →
AI 资讯

How I Built CarbonCompass with Google Antigravity — A Personal Sustainability Coach, Not Just a Calculator

Most carbon footprint apps do the same thing: Quiz → "Your footprint is 120 kg CO₂/week" → Generic tips → User never returns. That's not a coaching experience. That's a guilt trip with no follow-through. For PromptWars Virtual — Challenge 3 (Carbon Footprint Awareness & Reduction), I built CarbonCompass with a different premise: Not just measure. Guide. Live demo: https://prompt-wars-virtual-hackathon-8u1kxxwh1-mithunvisveshs-projects.vercel.app/ The Problem with Existing Carbon Tools I started by looking at what already exists — Capture, Klima, JouleBug. Each of them calculates a footprint accurately. But they all fail at the same step: the recommendation layer. "Install solar panels." "Buy an EV." "Go vegan." These are structurally correct but useless for a hostel student in Chennai who travels by bus and eats at the mess. They're recommendations designed for a demographic that already has money and flexibility. CarbonCompass is built around two real Indian users: Aditi — a college student in Chennai. Bus commute, hostel mess food, shared room electricity. Her biggest carbon lever is food waste, not transport. Rohan — a tech professional in Bengaluru. Petrol car + scooter commute, air-conditioned 2BHK, frequent food delivery. His biggest lever is home energy, not diet. The same app, two users with different lifestyles receive coaching tailored to their highest-impact opportunities. That's the core product promise. The Architectural Decision That Made Everything Work Before writing a single line of code, I ran this prompt in Google Antigravity's Plan Mode: You are a senior product architect. Before coding: Generate user personas Design a SINGLE shared calculation module that the Dashboard, Impact Simulator, and AI Coach all call with the same inputs Create the data schema Propose page architecture Flag risks for a one-week build Do not write code yet. Create an Implementation Plan. The agent produced a full Implementation Plan artifact — a structured document I cou

2026-06-21 原文 →
AI 资讯

TypeForge: Cracking the Code of Your Own Typing Mistakes

This is a submission for the June Solstice Game Jam TypeForge: Turing-Inspired Intelligent Typing Coach What I Built TypeForge is a premium typing coach aligned with Apple's Human Interface Guidelines, built to help typists build speed and accuracy through automated, localized error diagnostics. TypeForge analyzes keystroke performance to isolate specific character transitions that cause delay or accuracy drops, then generates custom, adaptive exercises targeting those weaknesses. Developed for the June Solstice Game Jam, the project celebrates the power of computing and accessibility by turning raw diagnostics into a personalized educational experience. The solstice theme represents the journey of transition: taking a typist from darkness, meaning slow, error-prone typing, into light, meaning fluid, expert flow. Video Demo Live Application https://typing-forge-six.vercel.app/ Code https://github.com/shogun444/typingforge Flowchart Architecture graph TD User([User Typer]) -->|Keystrokes| Trainer[Typing Trainer Core] Trainer -->|Log Errors| Zustand[Zustand Stores] Zustand -->|Query Key Stats| Heatmap[Mistake Heatmap] Zustand -->|Identify Weaknesses| Generator[Drill Generator] Generator -->|Focus Word Pools| Trainer Zustand -->|Calculate Performance| Drawer[Analysis Drawer] How I Built It The application was built using Next.js for structure and routing, Tailwind CSS for premium glassmorphism styling, and Zustand for highly responsive state management. Development was accelerated throughout using Google's agentic AI coding assistant, Antigravity. I focused on clean Apple HIG spacing, micro-interactions, responsive scaling, and high-fidelity audio feedback to create a tactile, premium user experience. I also engineered custom canvas-based timeline sparklines to avoid heavy graphing packages and preserve maximum load performance. # === SYSTEM ARCHITECTURE === # app/ # Next.js pages including Settings and Profile views # stores/ # Zustand stores (typing-store, stats-stor

2026-06-21 原文 →
AI 资讯

I Built a Freelance Alternative Where Anyone Can Claim Your Bounty

How I Built a Real-Time Bounty Marketplace with Supabase and 14-Layer Edge Security I wanted to build a platform where anyone can post a task (a "bounty"), set a reward, and have people complete it with verifiable proof. Think freelance work, but optimized for quick, composable task completion — with proof submission as the core trust mechanism. The result is BountyClaimer — a real-time marketplace running on Supabase + Vercel with a security system baked into Edge middleware and scattered across every layer of the stack. 🛠️ The Tech Stack Frontend: React + Vite + TypeScript Backend: Supabase (PostgreSQL, Realtime, Storage, Auth) Payments: Stripe Hosting: Vercel (Edge Middleware) Security: Custom "Armadillo" system (14 layers) Architecture Pattern: Phoenix Architecture for real-time state consistency 🔄 The Core Workflow Post — A user posts a bounty with a reward and description Claim — Others browse and claim available bounties Submit — The claimer completes the work and submits proof (images, video, audio, text, files) Settle — The bounty owner reviews and approves — funds are released Sync — Real-time updates keep both sides in sync instantly The hardest parts were real-time state sync across multiple users , anti-abuse without hurting legitimate users , and security at the edge . 🏛️ The Phoenix Architecture One pattern I'm particularly proud of is what I call the Phoenix Architecture — a real-time state management approach that ensures every client sees the same truth without polling. The core idea: instead of each client fetching data and hoping it's current, database changes (bounty status updates, proof submissions, claim state transitions) are broadcast out via Supabase Realtime. Every connected client receives the same event stream and updates locally. // The Phoenix pattern — subscribe to changes once, // update locally from the event stream const channel = supabase . channel ( `entity- ${ id } ` ) . on ( ' postgres_changes ' , { event : ' * ' , schema : '

2026-06-21 原文 →
AI 资讯

🌍🚀 Project Showcase: Carbon Footprint Tracker

🌍🚀 Project Showcase: Carbon Footprint Tracker I'm excited to share one of my recent projects — a Carbon Footprint Tracker designed to help users better understand their environmental impact and encourage more sustainable lifestyle choices. As developers, we have the opportunity to build technology that not only solves problems but also creates awareness about important global challenges. This project was a great experience in combining technology, user experience, and sustainability into a single application. ✨ Key Features: • Carbon footprint calculation system • Clean and intuitive user interface • Responsive design for all devices • Real-time user interaction • Environmental awareness focused experience • Modern frontend architecture 🛠️ Technologies Used: • React • JavaScript • HTML5 • CSS3 • Git & GitHub 💡 What I Learned: • Building interactive user interfaces • State management and user input handling • Creating responsive layouts • Writing cleaner and more maintainable code • Designing applications around real-world problems 🔗 GitHub Repository: https://github.com/Prem759-0/Challenge-3-Carbon-Footprint 🔗 Live Demo: https://challenge-3-carbon-footprint.vercel.app/ I am continuously improving my skills through hands-on projects and exploring how technology can create meaningful impact. Every project teaches me something new and pushes me one step closer toward becoming a professional Full-Stack Developer. Feedback and suggestions are always welcome! 🙌

2026-06-21 原文 →
AI 资讯

I built an AI priority inbox for GitHub pull requests — and went BYOK instead of running my own AI backend

The problem GitHub shows your pull requests in whatever order they happened to be opened — not in the order they actually need your attention. A one-line typo fix and a PR touching authentication code get exactly the same visual weight in your inbox. Multiply that across a dozen open PRs and you spend more time deciding what to look at than actually reviewing. What I built PR Focus is a Chrome extension (Manifest V3) that sits on top of GitHub's PR pages. It combines three signals into a single priority queue: CI status — failing checks bubble up PR age — stale PRs don't get forgotten AI risk score (0–100) — weighted toward changes touching auth, database, or infra code Each PR also gets a plain-English summary generated from the actual diff (not the title someone wrote at 11pm), and you can generate an approve / request-changes draft review in one click, edit it, and send — without leaving the extension. Why BYOK instead of my own AI backend This was the decision I spent the most time on. Running my own AI backend would have meant: A server in the data path of every PR diff users review — a much bigger trust ask, especially for private repos. Either eating the AI cost myself (unsustainable as a solo dev) or marking it up into a subscription. Going BYOK (bring your own key — OpenAI, Groq, Mistral, or a local Ollama instance) flips both of those: Your GitHub token and AI key live in chrome.storage.local . There's no server of mine in the path — PR diffs only ever go to the AI provider you explicitly configure. Groq's free tier is generous enough to run the AI features for free for most individual workflows. You're paying provider cost directly, with zero markup, if you pay anything at all. How it's built Manifest V3 — required rethinking persistence patterns that worked under MV2's persistent background page; service worker lifecycle and content script injection needed more careful handling. GitHub REST + GraphQL APIs rather than DOM scraping — more upfront work, but

2026-06-20 原文 →
AI 资讯

Three Ideas Made Modern AI Possible. None of Them Are Magic.

Modern AI looks like magic from the outside. You type a sentence and a machine writes back something coherent, finishes your function, or turns a paragraph into Japanese. It's tempting to assume something exotic is happening in there. It isn't. The architecture behind almost every model you've heard of rests on a handful of plain engineering fixes, each one invented to get around a specific, annoying problem. No single genius moment, no secret sauce. Just people noticing their networks were broken and patching them. This is the story of three of those patches. If you can read a stack trace, you can follow all three. The wall everyone hit Around 2014, the recipe for a smarter neural network seemed obvious: make it deeper. More layers meant more capacity, which should have meant better results. Except past a certain point it stopped working. Deeper networks got worse , and not in the way you'd guess. The tell was the training error. A 56-layer network did worse on the very data it was being trained on than a 20-layer one. That rules out the usual suspect, overfitting, because the deep network couldn't even memorize the answers in front of it. The problem wasn't capacity. The network just couldn't be trained. Two things were going wrong. The error signal that teaches each layer (the gradient) has to travel backward through every layer to reach the early ones. Push a number through dozens of layers and it tends to either shrink to nothing or blow up, so the early layers got almost no usable feedback. And even when you wrestled the signal into shape, the optimization itself got harder the deeper you went. So depth, the thing that was supposed to make networks powerful, was the thing breaking them. Here's how three ideas knocked that wall down. Idea one: give the signal a shortcut The first fix is almost insultingly simple. Instead of forcing every layer to transform its input, you let the input skip ahead and get added back in later. Picture a block of layers that takes

2026-06-20 原文 →
AI 资讯

Three Ideas Made Modern AI Possible. None of Them Are Magic.

Modern AI looks like magic from the outside. You type a sentence and a machine writes back something coherent, finishes your function, or turns a paragraph into Japanese. It's tempting to assume something exotic is happening in there. It isn't. The architecture behind almost every model you've heard of rests on a handful of plain engineering fixes, each one invented to get around a specific, annoying problem. No single genius moment, no secret sauce. Just people noticing their networks were broken and patching them. This is the story of three of those patches. If you can read a stack trace, you can follow all three. The wall everyone hit Around 2014, the recipe for a smarter neural network seemed obvious: make it deeper. More layers meant more capacity, which should have meant better results. Except past a certain point it stopped working. Deeper networks got worse , and not in the way you'd guess. The tell was the training error. A 56-layer network did worse on the very data it was being trained on than a 20-layer one. That rules out the usual suspect, overfitting, because the deep network couldn't even memorize the answers in front of it. The problem wasn't capacity. The network just couldn't be trained. Two things were going wrong. The error signal that teaches each layer (the gradient) has to travel backward through every layer to reach the early ones. Push a number through dozens of layers and it tends to either shrink to nothing or blow up, so the early layers got almost no usable feedback. And even when you wrestled the signal into shape, the optimization itself got harder the deeper you went. So depth, the thing that was supposed to make networks powerful, was the thing breaking them. Here's how three ideas knocked that wall down. Idea one: give the signal a shortcut The first fix is almost insultingly simple. Instead of forcing every layer to transform its input, you let the input skip ahead and get added back in later. Picture a block of layers that takes

2026-06-20 原文 →
AI 资讯

La biblioteca di Borges:digitale.

La biblioteca di Babele di Borges è diventata un'ossessione o metafora potente per pensare l'intelligenza artificiale contemporanea. Il racconto del 1941 descrive una biblioteca infinita composta da gallerie esagonali, dove ogni libro contiene ogni possibile combinazione di 25 simboli ortografici. In essa risiede "la minuta storia del futuro, le autobiografie degli arcangeli, il catalogo fedele della Biblioteca, migliaia e migliaia di cataloghi falsi, la dimostrazione della fallacia di questi cataloghi, la dimostrazione della fallacia del catalogo vero" — eppure la stragrande maggioranza dei volumi è pura cacofonia senza senso. Questo scenario anticipa con precisione inquietante il problema fondamentale dei Large Language Models (LLM). Come ha notato Léon Bottou, il modello linguistico perfetto permette di navigare una collezione infinita di testi plausibili semplicemente digitando le prime parole, ma "nulla distingue il vero dal falso, l'utile dall'ingannevole, il giusto dallo sbagliato". La risposta di ChatGPT o di un altro modello generativo è, in un certo senso, un libro estratto a caso dalla Biblioteca di Babele: statisticamente plausibile, grammaticalmente corretta, ma non necessariamente ancorata a una verità esterna. Jonathan Basile, creatore del sito libraryofbabel.info , ha esplicitamente distinto la sua creazione dall'intelligenza artificiale: "Babele è tutta espressione nella sua forma più irrazionale e decontestualizzata; preferisco pensarla come unintelligenza artificiale".Eppure, paradossalmente, l'IA contemporanea ci ha portato più vicini che mai a realizzare la Biblioteca di Babele: non più un universo fisico di libri, ma un universo digitale di testi generati all'istante, dove la verità è circondata da infinite variazioni di falsità. La lezione di Borges è duplice. Da un lato, l'IA come strumento di navigazione: usare il Natural Language Processing per estrarre parole inglesi dal "gibberish" della Biblioteca, come dimostra la funzione "Anglishize"

2026-06-20 原文 →
开发者

CKA Exam study 2026 Scenario 1 - The etcd Endpoint Trap

The etcd Endpoint Trap A cluster migration just took your whole control plane offline. In the next few minutes you'll find out why, and fix it the way the CKA exam expects. This is a CKA Troubleshooting walkthrough. Every command below is real output from a live cluster, and you can reproduce the whole thing yourself (scripts at the end). The scenario A single-node kubeadm cluster was migrated to a new machine. The control plane won't come up. Your task: identify the broken component, find the root cause, fix the config, restart, and verify. Single-node kubeadm cluster, freshly migrated Control plane will not start Find the broken component Root-cause it, fix it, verify How the control plane actually starts The kubelet runs the control plane as static pods from /etc/kubernetes/manifests . The kube-apiserver cannot start unless it can reach etcd. Give it the wrong etcd address and the apiserver crashes, so the whole cluster looks dead. The kube-apiserver runs as a static pod : the kubelet reads its manifest from /etc/kubernetes/manifests/ and keeps it running. The apiserver cannot start unless it can reach etcd, so a wrong --etcd-servers endpoint takes the whole API down, and with it, everything you'd normally use to debug. Step 1 — Reproduce the symptom First, reproduce the symptom. kubectl get nodes is refused. A refused connection on the API port means the API server is down: a control-plane problem, not a workload problem. $ kubectl get nodes The connection to the server cka-scenario1-control-plane:6443 was refused - did you specify the right host or port? A refused connection on the API port is a control-plane problem, not a workload problem. Step 2 — Investigate from the node kubectl can't help us now, so drop to the node. The kubelet itself is active. But follow its log and you'll see it stuck in a loop, restarting the apiserver over and over. The kubelet is fine; the static pod it manages is the problem. $ systemctl is-active kubelet active $ journalctl -u ku

2026-06-20 原文 →
AI 资讯

Tutti contro l'ia

Il pensiero di Popper si intreccia con diversi autori in modi che illuminano il rapporto tra tecnologia, potere e libertà. Hannah Arendt Arendt condivide con Popper l'attenzione per la società aperta, ma la declina in termini di azione politica piuttosto che epistemologici. Dove Popper vede la chiusura come rifiuto della falsificazione, Arendt la vede come perdita dello spazio pubblico dove gli individui appaiono come agenti plurali. L'AI che automatizza decisioni politiche o sociali rischia di eliminare proprio questo spazio di apparizione — non c'è più un "chi" che agisce, ma un "cosa" che calcola. Il banale della tecnocrazia, per Arendt, può essere altrettanto pericoloso del male radicale. Theodor Adorno e Max Horkheimer La Dialettica dell'illuminismo offre un intreccio più critico con Popper. I due della Scuola di Francoforte vedevano la ragione strumentale — quella che calcola mezzi per fini prefissati — come il germe del dominio moderno. Popper difendeva invece la ragione critica come antidoto al totalitarismo. Il punto di tensione è rilevante per l'AI: se l'intelligenza artificiale è pura ragione strumentale ottimizzata, rientra nella diagnosi frankfurtiana più che in quella popperiana. La risposta popperiana sarebbe che l'AI può essere strumento di criticismo se aperta alla confutazione e al controllo democratico. Norbert Wiener Il fondatore della cibernetica condivide con Popper la preoccupazione per i sistemi che sfuggono al controllo umano. Wiener, già negli anni Cinquanta, avvertiva che le macchine intelligenti potrebbero imporre obiettivi incompatibili con i valori umani. Popper avrebbe riconosciuto in questo un caso di teoria non falsificabile: un sistema che apprende senza possibilità di essere corretto dall'esterno è un dogma tecnologico. Entrambi insistono sul human-in-the-loop , anche se Wiener lo motiva in termini di stabilità dei sistemi, Popper in termini di libertà. Michel Foucault Foucault aggiunge una dimensione che Popper lascia in ombra: il

2026-06-20 原文 →
AI 资讯

The post-purchase problem nobody builds for: receipts, serials, and warranties

Everyone optimizes the buying experience. Almost nobody builds for what happens after checkout. Every appliance, device, and tool you buy comes with records that matter later: the receipt, purchase date, model number, serial number, the manual, and the warranty terms. Most people have no system for keeping those together — they're scattered across email, a kitchen drawer, screenshots, and random cloud folders. So when something breaks, the warranty claim dies on a single question: "Can you send proof of purchase and the serial number?" That's the gap we're building SnapRegisters for. The simple version of the fix (works with any notes app) The day anything substantial arrives, capture four things: The product The receipt The model / serial label (it fades — grab it early) The warranty card or manual Organize them by product, not by document . Instead of "where's that receipt," it becomes "open the dishwasher record." When support asks for details, it's a 10-second lookup instead of a 20-minute hunt. Where AI actually helps after the purchase The interesting part for builders: the post-purchase layer is a great fit for AI. Point a camera at a receipt and you can extract the model, serial number, and purchase date, then track the warranty automatically — turning a tedious filing chore into a 5-second snap. It's not flashy AI, but it's the kind that quietly saves people money (most warranty coverage goes unused simply because the paperwork is gone). If you've ever eaten a repair bill for something that was technically still covered, you've felt this problem. Curious how other builders think about the "boring but valuable" software gaps like this one. 📲 SnapRegisters is free on iOS: https://apps.apple.com/app/id6757603213

2026-06-20 原文 →
AI 资讯

Understanding Retrieval-Augmented Generation (RAG): The AI Architecture That Makes LLMs Smarter

Introduction Large Language Models (LLMs) like ChatGPT have transformed how we interact with AI. They can write code, answer questions, summarize documents, and generate creative content. However, they have one major limitation - they only know what they were trained on and can sometimes generate incorrect or outdated information. So, how do modern AI applications answer questions about your company's private documents, recent news, or knowledge that wasn't part of the model's training? The answer is Retrieval-Augmented Generation (RAG). In this blog, we'll explore what RAG is, how it works, its architecture, benefits, challenges, and real-world applications. What is RAG? Retrieval-Augmented Generation (RAG) is an AI architecture that combines a retrieval system with a Large Language Model (LLM). Instead of relying only on the model's internal knowledge, RAG first retrieves relevant information from an external knowledge source and then uses that information to generate a more accurate response. Think of it like an open-book exam. Instead of answering from memory, the AI first searches for the most relevant pages and then writes the answer based on those pages. Why Do We Need RAG? Traditional LLMs have several limitations: Knowledge becomes outdated. They cannot access private company data. They may hallucinate (generate incorrect facts). Retraining models is expensive and time-consuming. RAG solves these problems by allowing the model to retrieve fresh and domain-specific information before generating an answer. RAG Architecture A typical RAG pipeline consists of the following components: User Query Embedding Model Vector Database Retriever Prompt Builder Large Language Model Final Response Step-by-Step Workflow * Step 1: * User asks a question Example: "What is our company's leave policy?" Step 2: Convert the question into embeddings The query is transformed into a vector representation using an embedding model. Example: "What is leave policy?" ↓ [0.12, -0.45, 0.7

2026-06-20 原文 →
AI 资讯

SpaceX AI1 Orbital Data Center: 1 GW of Space AI Compute by 2027, Developer Guide

SpaceX's AI1 satellite spans 70 meters tip-to-tip — wider than a Boeing 747 — and it exists entirely to run AI inference in low Earth orbit. Elon Musk posted the reveal video to X on June 9, 2026, ahead of SpaceX's IPO, with a three-word summary: "much simpler than Starlink." Each satellite produces 150 kW of peak AI compute and 120 kW sustained. SpaceX's roadmap calls for 1 GW of orbital AI compute capacity by late 2027, which at 150 kW per satellite means manufacturing roughly 6,700 AI1 units per year. To hit that number, they are building an 11-million-square-foot facility in Bastrop, Texas called Gigasat — nearly twice the floor area of Tesla's Gigafactory Nevada, dedicated to satellite production. The question is not whether the engineering works. SpaceX has launched more than 7,000 Starlink satellites. The question is whether orbital AI compute makes economic sense at scale, and that question nobody has answered publicly yet. The Reveal Wasn't Accidental SpaceX filed for its IPO at approximately $75 billion valuation in early June 2026. Musk's June 9 reveal of AI1 arrived within days of that filing. Orbital AI compute is the narrative SpaceX needs to justify a valuation that goes beyond launching satellites for other people. Every terrestrial cloud provider — AWS, Google Cloud, Azure — is competing for land, power, and cooling capacity to support the next generation of frontier AI. Musk's pitch is that those three constraints don't exist in space. The physics backs him up. The economics remain unproven. Why Space Has Structural Advantages for AI Compute The AI1 satellite's design exploits two physical realities that are impossible to replicate on Earth. Power is essentially free. In a sun-synchronous LEO orbit, a satellite receives near-constant solar illumination. SpaceX's solar arrays achieve 250 W/m² power density without atmospheric attenuation. The marginal cost of electricity after the capital investment in the array is close to zero — no grid contracts,

2026-06-20 原文 →
AI 资讯

Access 40+ AI Providers with One API Key: Building with the Onlist SDK

If you've worked with multiple AI APIs, you know the pain: different auth flows, different SDKs, different billing dashboards, different rate limits. You end up with a providers/ folder full of wrapper code just to normalize the responses. Onlist solves this by putting 40+ AI providers behind a single OpenAI-compatible endpoint. One API key, one billing account, same chat.completions.create() call you already know. We just shipped official SDKs for Python and JavaScript/TypeScript, so I wanted to walk through what they look like in practice. The 30-Second Setup Python: pip install onlist from onlist import Onlist client = Onlist () # reads ONLIST_API_KEY from env response = client . chat . completions . create ( model = " openai/chatgpt-5.5 " , messages = [{ " role " : " user " , " content " : " Hello! " }], ) print ( response . choices [ 0 ]. message . content ) TypeScript: npm install @onlist/sdk import { Onlist } from " @onlist/sdk " ; const client = new Onlist (); const response = await client . chat . completions . create ({ model : " openai/chatgpt-5.5 " , messages : [{ role : " user " , content : " Hello! " }], }); console . log ( response . choices [ 0 ]. message . content ); That's it. No base URL to configure, no special headers to set. If you've used the openai package before, you already know how to use this. Why Not Just Use the OpenAI SDK Directly? You absolutely can. Onlist is fully OpenAI-compatible, so this works fine: from openai import OpenAI client = OpenAI ( base_url = " https://onlist.io/v1 " , api_key = " your-key " , ) The SDK adds three things on top of that: Default configuration. No base_url to remember. The ONLIST_API_KEY env var just works. Marketplace API. A .marketplace namespace for browsing models and providers programmatically. Proper User-Agent. Helps us debug issues when you reach out for support. If you're already using OpenAI or OpenRouter, switching takes one line: - from openai import OpenAI + from onlist import Onlist - clien

2026-06-20 原文 →