Skip to content

Changelog

Amayyas edited this page Jul 8, 2026 · 5 revisions

Changelog

All notable changes to Flutter AI SDK are documented here.

[1.4.0] - 2026-07-08

💾 Prompt Caching & 📄 Documents

  • Prompt caching - AIConfig.promptCaching (PromptCaching, TTL 5 min / 1 h) : cache_control explicite chez Anthropic ; compteurs de cache parsés partout (Usage.cachedTokens, nouveau Usage.cacheWriteTokens)
  • Documents - DocumentContent fonctionne sur tous les providers cloud : sources URL chez Anthropic, blocs file base64 chez OpenAI

[1.3.0] - 2026-07-08

🧱 Structured Outputs & 🔢 Token Counting

  • Structured outputs - ResponseFormat.json(schema: ...) uses each provider's native guaranteed-schema mechanism (OpenAI json_schema with opt-in strict, Anthropic output_config.format, Gemini responseJsonSchema, Ollama schema format)
  • Token counting - FlutterAI.countTokens({message}) and BaseProvider.countTokens: exact server-side counts on Anthropic and Google AI, local estimation for OpenAI/Ollama

[1.2.0] - 2026-07-07

🏗️ Architecture Overhaul & New Features

  • Architecture - full restructuring into one-class-per-file modules:
    • config/, models/content/, models/tools/ split up
    • One folder per provider with a dedicated wire-format mapper class
    • BaseProvider owns the shared streaming loop (template method)
    • New ProviderRegistry factory (supports custom provider registration)
  • Tool Runner - automatic agentic tool-calling loop (ToolRunner, ExecutableTool): parallel execution, error feedback, iteration budget
  • Ollama provider - run local models (Llama, Qwen, Gemma...) with streaming, tools, JSON mode and vision; no API key required
  • Anthropic - consecutive same-role messages are merged (required for parallel tool results)
  • Dependencies upgraded for Flutter 3.44

[1.1.0] - 2026-07-06

🔄 Model Refresh

  • Updated default models to current generations:
    • OpenAI: gpt-5.5 (was gpt-4-turbo)
    • Anthropic: claude-opus-4-8 (was claude-3-5-sonnet-latest)
    • Google AI: gemini-3.5-flash (was gemini-1.5-pro)
  • Updated model context limits in ModelContextLimits (GPT-5.x, Claude 4/5, Gemini 3.x)
  • Anthropic provider:
    • Never sends temperature and top_p together (rejected by Claude 4+)
    • Maps the refusal and model_context_window_exceeded stop reasons
  • Documentation (README + wiki) updated to current model IDs
  • Dependencies upgraded (mime 2.x, rxdart 0.28, flutter_lints 6)

[1.0.0] - 2024-XX-XX

🎉 Initial Release

First stable release of Flutter AI SDK!

Features

  • Unified API - Single interface for multiple AI providers
  • Multiple Providers
    • OpenAI (GPT-4, GPT-3.5, GPT-4-turbo, GPT-4o)
    • Anthropic (Claude 3 Opus, Sonnet, Haiku)
    • Google AI (Gemini Pro, Gemini 1.5)
  • Streaming Support - Real-time response streaming with chunk events
  • Context Management - Automatic conversation history and memory
  • Multimodal Support
    • Text content
    • Image content (URL, bytes, base64)
    • Audio content (OpenAI, Google AI)
    • Document content
  • Function Calling - Tool/function support for all providers
  • Type Safety - Full Dart type safety with null safety
  • Error Handling - Comprehensive error types:
    • AIAuthenticationError
    • AIRateLimitError
    • AIContextLengthError
    • AIContentFilterError
    • AINetworkError
    • AIServerError
    • And more...
  • Token Management - Token counting and estimation
  • Configuration - Comprehensive configuration options

Documentation

  • Complete wiki documentation
  • API reference
  • Usage examples
  • Provider guides

Version History Format

Future releases will follow this format:

[X.Y.Z] - YYYY-MM-DD

Added

  • New features

Changed

  • Changes to existing functionality

Deprecated

  • Features to be removed in future versions

Removed

  • Removed features

Fixed

  • Bug fixes

Security

  • Security fixes

Versioning

This project follows Semantic Versioning:

  • MAJOR (X.0.0): Incompatible API changes
  • MINOR (0.X.0): New functionality (backwards compatible)
  • PATCH (0.0.X): Bug fixes (backwards compatible)

Upgrade Guide

When upgrading between major versions, check the Migration Guide for breaking changes and how to update your code.

Clone this wiki locally