Recover from invalid model outputYou let Ax validate fields and retry with specific correction feedback. Your app can still distinguish generation errors, provider failures, and cancellation.rustacademyacademy/topics/structured-validation-errorswebsite/content-src/academy/course.mjsacademyRecover from invalid model output
You let Ax validate fields and retry with specific correction feedback. Your app can still distinguish generation errors, provider failures, and cancellation.
8 focused minutesNot started
Unit example (nearest native match)
See the idea in context
let answer = ax("question:string -> answer:string")?;
Run the program normally
Most valid responses return through the usual typed path.
Catch the specific failure
AxGenerateError identifies a generation or validation failure you can report deliberately.
Preserve useful details
error.details gives logs and UI a concrete repair target.
Run itIn your own project
cargo add axllm
use axllm::{ai, ax};
use serde_json::json;
let llm = ai("openai", json!({"apiKey": std::env::var("OPENAI_API_KEY")?}))?;
let classify = ax("review:string -> sentiment:class \"positive, negative, neutral\"")?;
Set OPENAI_APIKEY in your environment before running provider-backed code.
In the ax repo
From a clone of the ax repo:
npm run example -- rust src/examples/rust/generation/basic_generation.rs