[{"data":1,"prerenderedAt":370},["ShallowReactive",2],{"blog-tag-en-python":3},[4,124,187,255,314],{"slug":5,"published":6,"minutes":7,"category":8,"tags":9,"tagPages":15,"keywords":17,"about":25,"sources":38,"cover":114,"og":115,"expertise":116,"locales":117,"lang":118,"title":121,"description":122,"coverAlt":123},"dspy","2026-10-06",8,"llmops",[10,11,12,13,14],"Prompt optimisation","LLM programs","MIPROv2","GEPA","Python",[16],"python",[5,18,19,20,21,22,23,24],"dspy tutorial","dspy optimizer","miprov2","gepa prompt optimization","dspy vs prompt engineering","automatic prompt optimization","dspy signatures",[26,29,32,35],{"name":27,"url":28},"DSPy","https:\u002F\u002Fdspy.ai",{"name":30,"url":31},"Prompt engineering","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FPrompt_engineering",{"name":33,"url":34},"Bayesian optimization","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FBayesian_optimization",{"name":36,"url":37},"Fine-tuning (deep learning)","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FFine-tuning_(deep_learning)",[39,42,45,48,51,54,57,60,63,66,69,72,75,78,81,84,87,90,93,96,99,102,105,108,111],{"title":40,"url":41},"DSPy home and cost example","https:\u002F\u002Fdspy.ai\u002Fcurrent\u002F",{"title":43,"url":44},"DSPy installation","https:\u002F\u002Fdspy.ai\u002Fcurrent\u002Fgetting-started\u002Finstallation\u002F",{"title":46,"url":47},"DSPy: program, don't prompt","https:\u002F\u002Fdspy.ai\u002Fcurrent\u002Fgetting-started\u002Fprogram-dont-prompt\u002F",{"title":49,"url":50},"DSPy signatures","https:\u002F\u002Fdspy.ai\u002Fcurrent\u002Fdiving-deeper\u002Fsignatures-in-depth\u002F",{"title":52,"url":53},"DSPy metrics","https:\u002F\u002Fdspy.ai\u002Fcurrent\u002Fgetting-started\u002Fmetrics\u002F",{"title":55,"url":56},"DSPy Example API","https:\u002F\u002Fdspy.ai\u002Fcurrent\u002Fapi\u002Fprimitives\u002FExample\u002F",{"title":58,"url":59},"DSPy Predict API","https:\u002F\u002Fdspy.ai\u002Fcurrent\u002Fapi\u002Fmodules\u002FPredict\u002F",{"title":61,"url":62},"DSPy ChainOfThought API","https:\u002F\u002Fdspy.ai\u002Fcurrent\u002Fapi\u002Fmodules\u002FChainOfThought\u002F",{"title":64,"url":65},"DSPy ReAct API","https:\u002F\u002Fdspy.ai\u002Fcurrent\u002Fapi\u002Fmodules\u002FReAct\u002F",{"title":67,"url":68},"DSPy optimizers index","https:\u002F\u002Fdspy.ai\u002Fcurrent\u002Fapi\u002Foptimizers\u002F",{"title":70,"url":71},"DSPy MIPROv2 API","https:\u002F\u002Fdspy.ai\u002Fcurrent\u002Fapi\u002Foptimizers\u002FMIPROv2\u002F",{"title":73,"url":74},"MIPROv2 source code","https:\u002F\u002Fgithub.com\u002Fstanfordnlp\u002Fdspy\u002Fblob\u002Fmain\u002Fdspy\u002Fteleprompt\u002Fmipro_optimizer_v2.py",{"title":76,"url":77},"DSPy BootstrapFewShot API","https:\u002F\u002Fdspy.ai\u002Fcurrent\u002Fapi\u002Foptimizers\u002FBootstrapFewShot\u002F",{"title":79,"url":80},"DSPy BootstrapFinetune API","https:\u002F\u002Fdspy.ai\u002Fcurrent\u002Fapi\u002Foptimizers\u002FBootstrapFinetune\u002F",{"title":82,"url":83},"DSPy GEPA guide","https:\u002F\u002Fdspy.ai\u002Fcurrent\u002Fgetting-started\u002Fgepa-optimization\u002F",{"title":85,"url":86},"GEPA source code","https:\u002F\u002Fgithub.com\u002Fstanfordnlp\u002Fdspy\u002Fblob\u002Fmain\u002Fdspy\u002Fteleprompt\u002Fgepa\u002Fgepa.py",{"title":88,"url":89},"DSPy saving programs","https:\u002F\u002Fdspy.ai\u002Fcurrent\u002Ftutorials\u002Fsaving\u002F",{"title":91,"url":92},"DSPy caching","https:\u002F\u002Fdspy.ai\u002Fcurrent\u002Ftutorials\u002Fcache\u002F",{"title":94,"url":95},"DSPy LM API","https:\u002F\u002Fdspy.ai\u002Fcurrent\u002Fapi\u002Fmodels\u002FLM\u002F",{"title":97,"url":98},"DSPy FAQ","https:\u002F\u002Fdspy.ai\u002Fcurrent\u002Ffaqs\u002F",{"title":100,"url":101},"DSPy GitHub repository","https:\u002F\u002Fgithub.com\u002Fstanfordnlp\u002Fdspy",{"title":103,"url":104},"DSPy 3.4.0 release","https:\u002F\u002Fgithub.com\u002Fstanfordnlp\u002Fdspy\u002Freleases\u002Ftag\u002F3.4.0",{"title":106,"url":107},"DSPy paper, arXiv","https:\u002F\u002Farxiv.org\u002Fabs\u002F2310.03714",{"title":109,"url":110},"MIPRO paper, arXiv","https:\u002F\u002Farxiv.org\u002Fabs\u002F2406.11695",{"title":112,"url":113},"GEPA paper, arXiv","https:\u002F\u002Farxiv.org\u002Fabs\u002F2507.19457","\u002Fimages\u002Fblog\u002Fdspy\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fdspy\u002Fog.jpg","ai-engineer",[118,119,120],"en","de","hu","DSPy review: compile your prompts against a metric, not by hand","DSPy compiles prompts from signatures, a metric and examples: what its optimisers cost in model calls, and when a hand-written prompt still wins.","DSPy review: a robot cranks a machine that smooths a crumpled page, a target board above it.",{"slug":125,"published":126,"minutes":127,"category":128,"tags":129,"tagPages":133,"keywords":135,"about":143,"sources":153,"cover":181,"og":182,"expertise":116,"locales":183,"lang":118,"title":184,"description":185,"coverAlt":186},"guardrails-ai","2026-09-29",10,"security",[130,131,132,14],"Guardrails","Output validation","LLM reliability",[134,16],"guardrails",[136,137,138,139,140,141,142],"guardrails ai","guardrails ai validators","llm output validation python","guardrails vs nemo guardrails","guardrails on_fail actions","llm guardrails framework","pii validation llm output",[144,147,150],{"name":145,"url":146},"NVIDIA","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FNVIDIA",{"name":148,"url":149},"Apache License","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FApache_License",{"name":151,"url":152},"Large language model","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FLarge_language_model",[154,157,160,163,166,169,172,175,178],{"title":155,"url":156},"Guardrails AI on GitHub: README, news and FAQ","https:\u002F\u002Fgithub.com\u002Fguardrails-ai\u002Fguardrails",{"title":158,"url":159},"guardrails-ai 0.11.0 on PyPI","https:\u002F\u002Fpypi.org\u002Fproject\u002Fguardrails-ai\u002F",{"title":161,"url":162},"Guardrails Hub: 65 validators","https:\u002F\u002Fwww.guardrailsai.com\u002Fhub",{"title":164,"url":165},"Guardrails documentation: error remediation and on-fail actions","https:\u002F\u002Fwww.guardrailsai.com\u002Fdocs\u002Fconcepts\u002Ferror_remediation",{"title":167,"url":168},"Guardrails documentation: use on-fail actions","https:\u002F\u002Fwww.guardrailsai.com\u002Fguardrails\u002Fdocs\u002Fhow-to-guides\u002Fuse_on_fail_actions",{"title":170,"url":171},"Migration issue 1560: moving off hosted remote inferencing","https:\u002F\u002Fgithub.com\u002Fguardrails-ai\u002Fguardrails\u002Fissues\u002F1560",{"title":173,"url":174},"NVIDIA NeMo Guardrails on GitHub","https:\u002F\u002Fgithub.com\u002FNVIDIA-NeMo\u002FGuardrails",{"title":176,"url":177},"NVIDIA NeMo Guardrails documentation","https:\u002F\u002Fdocs.nvidia.com\u002Fnemo\u002Fguardrails\u002Flatest\u002Findex.html",{"title":179,"url":180},"OpenAI API pricing, including moderation","https:\u002F\u002Fdevelopers.openai.com\u002Fapi\u002Fdocs\u002Fpricing","\u002Fimages\u002Fblog\u002Fguardrails-ai\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fguardrails-ai\u002Fog.jpg",[118,119,120],"Guardrails AI: validating what the model returns","A review of Guardrails AI: 65 hub validators, eight on-fail actions, the August 2026 shutdown of hosted inferencing, and when NeMo Guardrails fits better.","Guardrails AI: a small car drives along a winding mountain road protected by a guardrail.",{"slug":188,"published":189,"updated":190,"minutes":127,"category":191,"tags":192,"tagPages":196,"keywords":199,"about":208,"sources":218,"cover":249,"og":250,"expertise":116,"locales":251,"lang":118,"title":252,"description":253,"coverAlt":254},"openai-agents-sdk","2026-09-11","2026-10-02","agents",[193,194,130,195,14],"Agent runtime","Tracing","MCP",[197,134,198,16],"tracing","mcp",[200,201,202,203,204,205,206,207],"openai agents sdk","openai agents sdk vs langgraph","python agent framework comparison","openai agents sdk guardrails","agent run tracing tool calls","openai agents sdk human in the loop","openai-agents pypi","agents sdk vs responses api",[209,212,215],{"name":210,"url":211},"Model context protocol","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FModel_context_protocol",{"name":213,"url":214},"Software framework","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FSoftware_framework",{"name":216,"url":217},"Agentic AI","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FAgentic_AI",[219,222,225,228,231,234,237,240,243,246],{"title":220,"url":221},"OpenAI Agents SDK documentation: Intro, and Agents SDK or Responses API","https:\u002F\u002Fopenai.github.io\u002Fopenai-agents-python\u002F",{"title":223,"url":224},"OpenAI Agents SDK documentation: Running agents","https:\u002F\u002Fopenai.github.io\u002Fopenai-agents-python\u002Frunning_agents\u002F",{"title":226,"url":227},"OpenAI Agents SDK documentation: Guardrails","https:\u002F\u002Fopenai.github.io\u002Fopenai-agents-python\u002Fguardrails\u002F",{"title":229,"url":230},"OpenAI Agents SDK documentation: Human-in-the-loop","https:\u002F\u002Fopenai.github.io\u002Fopenai-agents-python\u002Fhuman_in_the_loop\u002F",{"title":232,"url":233},"OpenAI Agents SDK documentation: Tracing","https:\u002F\u002Fopenai.github.io\u002Fopenai-agents-python\u002Ftracing\u002F",{"title":235,"url":236},"OpenAI Agents SDK documentation: Configuration","https:\u002F\u002Fopenai.github.io\u002Fopenai-agents-python\u002Fconfig\u002F",{"title":238,"url":239},"openai-agents 0.23.1 on PyPI, release history and licence","https:\u002F\u002Fpypi.org\u002Fproject\u002Fopenai-agents\u002F",{"title":241,"url":242},"OpenAI: The next evolution of the Agents SDK (15 April 2026)","https:\u002F\u002Fopenai.com\u002Findex\u002Fthe-next-evolution-of-the-agents-sdk\u002F",{"title":244,"url":245},"OpenAI API documentation: Agents, comparison of the three runtimes","https:\u002F\u002Fdevelopers.openai.com\u002Fapi\u002Fdocs\u002Fguides\u002Fagents",{"title":247,"url":248},"Arize: AI agent frameworks compared (1 October 2026)","https:\u002F\u002Farize.com\u002Fai-agents\u002Fagent-frameworks\u002F","\u002Fimages\u002Fblog\u002Fopenai-agents-sdk\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fopenai-agents-sdk\u002Fog.jpg",[118,119,120],"OpenAI Agents SDK: a small agent runtime with sharp edges","A review of the OpenAI Agents SDK: the runner loop, tracing, guardrails and approvals, plus what the release churn and the Responses-only features cost.","OpenAI Agents SDK: a small open toolkit with a few tools, one craft knife with a sharp blade.",{"slug":256,"published":257,"updated":258,"minutes":127,"category":191,"tags":259,"tagPages":264,"keywords":266,"about":274,"sources":281,"cover":308,"og":309,"expertise":116,"locales":310,"lang":118,"title":311,"description":312,"coverAlt":313},"llamaindex","2026-07-14","2026-09-21",[260,261,14,262,263],"Agent framework","RAG","Document parsing","Workflows",[265,16],"rag",[256,267,268,269,270,271,272,273],"llamaindex vs langgraph","llamaindex workflows","llama index agent framework","llamaparse pricing","rag framework python","durable workflows python","document agent framework",[275,278],{"name":276,"url":277},"LlamaIndex","https:\u002F\u002Fgithub.com\u002Frun-llama\u002Fllama_index",{"name":279,"url":280},"Retrieval-augmented generation","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FRetrieval-augmented_generation",[282,284,287,290,293,296,299,302,305],{"title":283,"url":277},"LlamaIndex repository README and focus note",{"title":285,"url":286},"Agent Workflows: introduction","https:\u002F\u002Fdevelopers.llamaindex.ai\u002Fpython\u002Fllamaagents\u002Fworkflows\u002F",{"title":288,"url":289},"Agent Workflows: writing durable workflows","https:\u002F\u002Fdevelopers.llamaindex.ai\u002Fpython\u002Fllamaagents\u002Fworkflows\u002Fdurable_workflows\u002F",{"title":291,"url":292},"Agent Workflows: observability","https:\u002F\u002Fdevelopers.llamaindex.ai\u002Fpython\u002Fllamaagents\u002Fworkflows\u002Fobservability\u002F",{"title":294,"url":295},"LlamaAgents overview","https:\u002F\u002Fdevelopers.llamaindex.ai\u002Fpython\u002Fllamaagents\u002Foverview\u002F",{"title":297,"url":298},"llama-index-core on PyPI","https:\u002F\u002Fpypi.org\u002Fproject\u002Fllama-index-core\u002F",{"title":300,"url":301},"LlamaIndex and LlamaParse pricing","https:\u002F\u002Fwww.llamaindex.ai\u002Fpricing",{"title":303,"url":304},"LiteParse documentation","https:\u002F\u002Fdevelopers.llamaindex.ai\u002Fliteparse\u002F",{"title":306,"url":307},"LangGraph on GitHub","https:\u002F\u002Fgithub.com\u002Flangchain-ai\u002Flanggraph","\u002Fimages\u002Fblog\u002Fllamaindex\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fllamaindex\u002Fog.jpg",[118,119,120],"LlamaIndex review: the widest data toolkit, with its centre of gravity already moved","LlamaIndex in 2026: an MIT-licensed Python data and agent framework with 300+ integrations, event-driven Workflows, and a focus shifted to LlamaParse.","LlamaIndex review: a llama beside a large open toolbox looks up at a small cloud.",{"slug":315,"published":316,"updated":317,"minutes":127,"category":191,"tags":318,"tagPages":323,"keywords":324,"about":332,"sources":336,"cover":364,"og":365,"expertise":116,"locales":366,"lang":118,"title":367,"description":368,"coverAlt":369},"crewai","2026-06-08","2026-09-28",[319,320,14,321,322],"Multi-agent","Agent orchestration","Flows","Token cost",[16],[315,325,326,327,328,329,330,331],"crewai vs langgraph","crewai framework review","multi-agent framework python","crewai flows","crewai memory","crewai pricing","agent framework comparison",[333],{"name":334,"url":335},"CrewAI","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FCrewAI",[337,340,343,346,349,352,355,358,361],{"title":338,"url":339},"CrewAI documentation: introduction","https:\u002F\u002Fdocs.crewai.com\u002Fen\u002Fintroduction",{"title":341,"url":342},"CrewAI on PyPI: crewai 1.15.23","https:\u002F\u002Fpypi.org\u002Fproject\u002Fcrewai\u002F",{"title":344,"url":345},"CrewAI docs: Flows","https:\u002F\u002Fdocs.crewai.com\u002Fen\u002Fconcepts\u002Fflows",{"title":347,"url":348},"CrewAI docs: Memory","https:\u002F\u002Fdocs.crewai.com\u002Fen\u002Fconcepts\u002Fmemory",{"title":350,"url":351},"CrewAI docs: tracing","https:\u002F\u002Fdocs.crewai.com\u002Fen\u002Fobservability\u002Ftracing",{"title":353,"url":354},"CrewAI pricing","https:\u002F\u002Fwww.crewai.com\u002Fpricing",{"title":356,"url":357},"GitHub: crewAIInc\u002FcrewAI","https:\u002F\u002Fgithub.com\u002FcrewAIInc\u002FcrewAI",{"title":359,"url":360},"LangGraph overview","https:\u002F\u002Fdocs.langchain.com\u002Foss\u002Fpython\u002Flanggraph\u002Foverview",{"title":362,"url":363},"AutoGen AgentChat user guide","https:\u002F\u002Fmicrosoft.github.io\u002Fautogen\u002Fstable\u002Fuser-guide\u002Fagentchat-user-guide\u002Findex.html","\u002Fimages\u002Fblog\u002Fcrewai\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fcrewai\u002Fog.jpg",[118,119,120],"CrewAI review: crews, flows and the token bill","CrewAI, an MIT-licensed Python multi-agent framework: crews for autonomous teamwork, flows for controlled state, the token bill and where it hurts.","CrewAI review: three robots row a boat together, a long receipt trailing behind it.",1793451238569]