packages feed

baikai 0.3.0.0 → 0.3.1.0

raw patch · 4 files changed

+208/−36 lines, 4 filesdep ~aesondep ~base64-bytestringdep ~bytestringPVP ok

version bump matches the API change (PVP)

Dependency ranges changed: aeson, base64-bytestring, bytestring, containers, directory, filepath, generic-lens, http-client, http-client-tls, lens, openai, scientific, time, unliftio-core, vector

API changes (from Hackage documentation)

+ Baikai.Models.Generated: anthropic_claude_sonnet_5 :: Model
+ Baikai.Models.Generated: openai_gpt_5_6 :: Model
+ Baikai.Models.Generated: openai_gpt_5_6_luna :: Model
+ Baikai.Models.Generated: openai_gpt_5_6_sol :: Model
+ Baikai.Models.Generated: openai_gpt_5_6_terra :: Model

Files

CHANGELOG.md view
@@ -7,6 +7,58 @@  ## [Unreleased] +## [baikai 0.3.1.0] - 2026-07-15++### Added++- Added `claude-sonnet-5` to the Anthropic model catalog (1M context window,+  128k max output, `tool_call` + reasoning).+- Added the `gpt-5.6` family — `gpt-5.6`, `gpt-5.6-luna`, `gpt-5.6-sol`, and+  `gpt-5.6-terra` — to the OpenAI model catalog (chat-completions with+  `tool_call` support).++### Changed++- Corrected `claude-sonnet-4-5` context window to 1M tokens and+  `claude-sonnet-4-6` max output to 128k tokens in the catalog.+- Added PVP-compliant upper bounds to all previously-unbounded library and+  executable dependencies.++## [baikai-claude 0.3.0.1] - 2026-07-15++### Changed++- Added PVP-compliant upper bounds to all previously-unbounded library and+  executable dependencies.++## [baikai-openai 0.3.0.1] - 2026-07-15++### Changed++- Added PVP-compliant upper bounds to all previously-unbounded library and+  executable dependencies.++## [baikai-trace-otel 0.3.0.1] - 2026-07-15++### Changed++- Added PVP-compliant upper bounds to all previously-unbounded library and+  executable dependencies.++## [baikai-effectful 0.3.0.1] - 2026-07-15++### Changed++- Added PVP-compliant upper bounds to all previously-unbounded library and+  executable dependencies.++## [baikai-kit 0.1.0.2] - 2026-07-15++### Changed++- Added PVP-compliant upper bounds to all previously-unbounded library and+  executable dependencies.+ ## [baikai 0.3.0.0] - 2026-07-03  ### Added
baikai.cabal view
@@ -1,6 +1,6 @@ cabal-version:   3.4 name:            baikai-version:         0.3.0.0+version:         0.3.1.0 synopsis:        Unified Haskell interface for multiple AI providers description:   baikai provides a unified, provider-agnostic Haskell interface for working@@ -71,21 +71,21 @@     Baikai.Usage    build-depends:-    , aeson-    , base               >=4.20 && <5-    , base64-bytestring-    , bytestring-    , containers-    , generic-lens+    , aeson              ^>=2.2+    , base               >=4.20  && <5+    , base64-bytestring  ^>=1.2+    , bytestring         ^>=0.12+    , containers         ^>=0.7+    , generic-lens       ^>=2.3     , lens               ^>=5.3-    , openai-    , scientific-    , streamly           >=0.11 && <0.13-    , streamly-core      >=0.3  && <0.5+    , openai             ^>=2.5+    , scientific         ^>=0.3+    , streamly           >=0.11  && <0.13+    , streamly-core      >=0.3   && <0.5     , text               ^>=2.1-    , time-    , unliftio-core-    , vector+    , time               ^>=1.14+    , unliftio-core      ^>=0.2+    , vector             ^>=0.13  executable baikai-gen-models   import:         common-options@@ -93,14 +93,14 @@   main-is:        GenModels.hs   other-modules:  GenModelsCore   build-depends:-    , aeson+    , aeson       ^>=2.2     , baikai-    , base        >=4.20 && <5-    , bytestring-    , containers-    , directory-    , filepath-    , scientific+    , base        >=4.20  && <5+    , bytestring  ^>=0.12+    , containers  ^>=0.7+    , directory   ^>=1.3+    , filepath    ^>=1.5+    , scientific  ^>=0.3     , text        ^>=2.1  executable baikai-fetch-models@@ -114,20 +114,20 @@   -- @Main.hs@ without a module-name clash.   ghc-options:    -main-is FetchModels   build-depends:-    , aeson+    , aeson            ^>=2.2     , baikai-    , base             >=4.20 && <5-    , bytestring-    , containers-    , directory-    , filepath-    , generic-lens-    , http-client-    , http-client-tls-    , lens-    , scientific+    , base             >=4.20  && <5+    , bytestring       ^>=0.12+    , containers       ^>=0.7+    , directory        ^>=1.3+    , filepath         ^>=1.5+    , generic-lens     ^>=2.3+    , http-client      ^>=0.7+    , http-client-tls  ^>=0.3+    , lens             ^>=5.3+    , scientific       ^>=0.3     , text             ^>=2.1-    , vector+    , vector           ^>=0.13  test-suite baikai-test   import:             common-options
fetch/FetchModelsCore.hs view
@@ -229,7 +229,11 @@ openaiInclude :: Set Text openaiInclude =   Set.fromList-    [ "gpt-5.5",+    [ "gpt-5.6",+      "gpt-5.6-luna",+      "gpt-5.6-sol",+      "gpt-5.6-terra",+      "gpt-5.5",       "gpt-5.4",       "gpt-5.4-mini",       "gpt-5.4-nano",@@ -257,6 +261,7 @@       "claude-opus-4-7",       "claude-opus-4-6",       "claude-opus-4-5",+      "claude-sonnet-5",       "claude-sonnet-4-6",       "claude-sonnet-4-5",       "claude-haiku-4-5",
src/Baikai/Models/Generated.hs view
@@ -192,7 +192,7 @@             cacheReadCost = 3 % 10,             cacheWriteCost = 15 % 4           },-      contextWindow = 200000,+      contextWindow = 1000000,       maxOutputTokens = 64000,       headers = Map.empty,       compat = CompatNone@@ -216,11 +216,34 @@             cacheWriteCost = 15 % 4           },       contextWindow = 1000000,-      maxOutputTokens = 64000,+      maxOutputTokens = 128000,       headers = Map.empty,       compat = CompatNone     } +anthropic_claude_sonnet_5 :: Model+anthropic_claude_sonnet_5 =+  emptyModel+    { modelId = "claude-sonnet-5",+      name = "Claude Sonnet 5",+      api = AnthropicMessages,+      provider = "anthropic",+      baseUrl = "https://api.anthropic.com",+      reasoning = True,+      input = [InputText, InputImage],+      cost =+        ModelCost+          { inputCost = 2 % 1,+            outputCost = 10 % 1,+            cacheReadCost = 1 % 5,+            cacheWriteCost = 5 % 2+          },+      contextWindow = 1000000,+      maxOutputTokens = 128000,+      headers = Map.empty,+      compat = CompatNone+    }+ deepseek_deepseek_chat :: Model deepseek_deepseek_chat =   emptyModel@@ -536,6 +559,98 @@             outputCost = 30 % 1,             cacheReadCost = 1 % 2,             cacheWriteCost = 0 % 1+          },+      contextWindow = 1050000,+      maxOutputTokens = 128000,+      headers = Map.empty,+      compat = CompatNone+    }++openai_gpt_5_6 :: Model+openai_gpt_5_6 =+  emptyModel+    { modelId = "gpt-5.6",+      name = "GPT-5.6",+      api = OpenAIChatCompletions,+      provider = "openai",+      baseUrl = "https://api.openai.com",+      reasoning = True,+      input = [InputText, InputImage],+      cost =+        ModelCost+          { inputCost = 5 % 1,+            outputCost = 30 % 1,+            cacheReadCost = 1 % 2,+            cacheWriteCost = 25 % 4+          },+      contextWindow = 1050000,+      maxOutputTokens = 128000,+      headers = Map.empty,+      compat = CompatNone+    }++openai_gpt_5_6_luna :: Model+openai_gpt_5_6_luna =+  emptyModel+    { modelId = "gpt-5.6-luna",+      name = "GPT-5.6 Luna",+      api = OpenAIChatCompletions,+      provider = "openai",+      baseUrl = "https://api.openai.com",+      reasoning = True,+      input = [InputText, InputImage],+      cost =+        ModelCost+          { inputCost = 1 % 1,+            outputCost = 6 % 1,+            cacheReadCost = 1 % 10,+            cacheWriteCost = 5 % 4+          },+      contextWindow = 1050000,+      maxOutputTokens = 128000,+      headers = Map.empty,+      compat = CompatNone+    }++openai_gpt_5_6_sol :: Model+openai_gpt_5_6_sol =+  emptyModel+    { modelId = "gpt-5.6-sol",+      name = "GPT-5.6 Sol",+      api = OpenAIChatCompletions,+      provider = "openai",+      baseUrl = "https://api.openai.com",+      reasoning = True,+      input = [InputText, InputImage],+      cost =+        ModelCost+          { inputCost = 5 % 1,+            outputCost = 30 % 1,+            cacheReadCost = 1 % 2,+            cacheWriteCost = 25 % 4+          },+      contextWindow = 1050000,+      maxOutputTokens = 128000,+      headers = Map.empty,+      compat = CompatNone+    }++openai_gpt_5_6_terra :: Model+openai_gpt_5_6_terra =+  emptyModel+    { modelId = "gpt-5.6-terra",+      name = "GPT-5.6 Terra",+      api = OpenAIChatCompletions,+      provider = "openai",+      baseUrl = "https://api.openai.com",+      reasoning = True,+      input = [InputText, InputImage],+      cost =+        ModelCost+          { inputCost = 5 % 2,+            outputCost = 15 % 1,+            cacheReadCost = 1 % 4,+            cacheWriteCost = 25 % 8           },       contextWindow = 1050000,       maxOutputTokens = 128000,