typed_llm 0.1.2
typed_llm: ^0.1.2 copied to clipboard
Type-safe, validated, structured output from LLM providers (OpenAI, Gemini, Claude) via generated JSON Schemas. No dart:mirrors, no runtime reflection.
0.1.2 #
- Add a "How it works" workflow diagram to the README (build-time codegen vs. runtime extraction, including the validation-retry loop).
0.1.1 #
- Shorten the package
descriptionto fit pub.dev's 60–180 character scoring guideline (no functional changes).
0.1.0 #
Initial release.
JsonSchemamodel andSchemaValidator— a provider-agnostic JSON Schema representation and a validator with detailed, path-qualified errors.@LlmSchema()/@LlmField(description:, optional:)annotations, consumed by thetyped_llm_generatorbuild_runner generator.Extractor/ExtractorConfig— validation-retry-with-feedback and HTTP-retry-with-backoff on top of anyLlmProvider.TypedLlmExceptionhierarchy:SchemaValidationException,ProviderException,MalformedJsonException,ExtractionTimeoutException.- Providers:
OpenAiProvider(Structured Outputs strict mode),GeminiProvider(responseSchema),ClaudeProvider(forced tool use), andOpenAiCompatibleProvider(Ollama/Groq/vLLM/etc., with asupportsStrictSchemaflag falling back to JSON mode + a schema-in-prompt instruction).