30 Commits

Author SHA1 Message Date
Guillaume RODRIGUEZ
ae0b77c180 [Platform][Generic][Scaleway] Fix tool call without arguments 2026-03-22 23:52:30 +01:00
Christopher Hertel
fbde7914f9 Consistently use symfony/event-dispatcher-contracts 2026-03-15 23:05:44 +01:00
Fabien Potencier
c40b3310f4 [Platform] Extract duplicated completions conversion methods into CompletionsConversionTrait 2026-03-14 01:02:28 +01:00
Christopher Hertel
48af924858 Bump versions for v0.6 v0.6.0 2026-03-05 00:27:55 +01:00
Fabien Potencier
0719ab2451 [Platform][Anthropic] Add support for prompt caching 2026-03-04 23:38:26 +01:00
Christopher Hertel
3b6bedaac9 bug #1714 [Platform][Generic]  Fix FallbackModelCatalog (fabpot)
This PR was squashed before being merged into the main branch.

Discussion
----------

[Platform][Generic]  Fix FallbackModelCatalog

| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no <!-- please update src/**/CHANGELOG.md files -->
| Docs?         | no <!-- required for new features -->
| Issues        | n/a
| License       | MIT

Alternative to #1713

The Generic bridge's `Completions\ModelClient` and `Embeddings\ModelClient` use `instanceof CompletionsModel` and `instanceof EmbeddingsModel` to determine whether they support a given model. However, the shared `FallbackModelCatalog` creates plain `Model` instances, which neither `ModelClient` recognizes. This means that any usage of `GenericPlatformFactory::create()` without an explicit `ModelCatalog` is broken, every `invoke()` call fails with 'No ModelClient registered'.

Add a bridge-specific `FallbackModelCatalog` (following the pattern of `OpenResponses\FallbackModelCatalog`) that returns `CompletionsModel` or `EmbeddingsModel` based on a naming convention: model names containing 'embed' are treated as embedding models, everything else as completions models (the heuristic might not be perfect, but I didn't find a better way).

Commits
-------

1b4f496e [Platform][Generic]  Fix FallbackModelCatalog
2026-03-04 22:45:21 +01:00
Fabien Potencier
38fa438be9 [Platform][Generic]  Fix FallbackModelCatalog 2026-03-04 22:45:07 +01:00
Fabien Potencier
a49d9d4573 [Platform] Throw InvalidArgumentException when ModelClient receives a string payload 2026-03-02 11:03:48 +01:00
Christopher Hertel
f2a6f0bb1d Prepare for v0.5.0 v0.5.0 2026-02-19 19:34:43 +01:00
Christopher Hertel
d6663e9be7 Prepare for release v0.4.0 v0.4.0 2026-02-18 23:56:14 +01:00
Oskar Stark
093e7b4437 Bump phpunit/phpunit to ^11.5.53 across all components 2026-02-18 11:36:38 +01:00
Christopher Hertel
fc7ef91d05 Add support for token usage on generic bridge 2026-01-29 16:02:01 +01:00
Christopher Hertel
271fa3d5fd Revert of bumping the branch-alias right away 2026-01-27 23:21:43 +01:00
Christopher Hertel
c19c0840f8 Bump versions and aliases for v0.3.0 release v0.3.0 2026-01-23 22:29:55 +01:00
Christopher Hertel
f7322c4369 CS follows Symfony rules update 2026-01-23 21:56:05 +01:00
Christopher Hertel
4f492df9b3 minor #1360 Prepare for release v0.2 (chr-hertel)
This PR was merged into the main branch.

Discussion
----------

 Prepare for release v0.2

| Q             | A
| ------------- | ---
| Bug fix?      | no
| New feature?  | no <!-- please update src/**/CHANGELOG.md files -->
| Docs?         | no <!-- required for new features -->
| Issues        | Fix #... <!-- prefix each issue number with "Fix #", no need to create an issue if none exist, explain below instead -->
| License       | MIT

Commits
-------

e1ca6baf Prepare for release v0.2
v0.2.0
2026-01-09 17:20:45 +01:00
Guillaume Loulier
17047a08b1 conf(tests): executionOrder moved to random 2026-01-08 11:38:03 +01:00
Christopher Hertel
3fcae5a654 Prepare for release v0.2 2026-01-08 09:09:35 +01:00
Oskar Stark
30419c0d4f [Platform] Require symfony/ai-platform ^0.2 in all bridges 2026-01-06 23:03:24 +01:00
Christopher Hertel
50c08f83c3 Bump branch alias to 0.2.x-dev 2026-01-06 15:41:54 +01:00
Christopher Hertel
434b9c18d1 Remove variadics from ChoiceResult constructor 2026-01-06 13:27:21 +01:00
Christopher Hertel
37dbdaf082 Bump dependencies for release v0.1 v0.1.0 2025-12-23 22:53:21 +01:00
Vincent Langlet
0ab3a30e3b Use phpstan/phpstan-phpunit 2025-12-22 16:39:44 +01:00
Oskar Stark
62f0129c6a Move GitHub workflow files to .github/workflows/ directory 2025-12-18 19:54:01 +01:00
Oskar Stark
97a8e4ae2b [Platform] Split bridges into dedicated packages 2025-12-17 10:51:06 +01:00
Oskar Stark
d5e34d2102 Add .gitignore, .gitattributes and CHANGELOG.md to all chat and platform bridges 2025-12-16 23:17:34 +01:00
Oskar Stark
2b6d4528f8 Add .github folder and LICENSE to all platform bridges 2025-12-16 22:41:56 +01:00
Christopher Hertel
fe02dae3f6 Decouple Platform Token Usage handling from Agent by introducing new interface 2025-12-12 23:35:00 +01:00
Christopher Hertel
ba7a32c23b Decouple OpenRouter bridge from OpenAI in favor of Generic bridge 2025-12-07 15:43:14 +01:00
Christopher Hertel
b56925ee9b Introduce generic platform for openai embeddings- and completions-based platforms 2025-12-07 01:16:12 +01:00