Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
304 commits
Select commit Hold shift + click to select a range
4e361a5
fix: add composer.lock to ignore (#22)
chr-hertel Sep 22, 2024
e704c55
fix: inconsistent readme namings (#23)
chr-hertel Sep 22, 2024
6dfaa7a
feat: add `MessageBag::withMessageBag()` method (#21)
OskarStark Sep 23, 2024
dccc6dd
chore: helpful exceptions (#17)
OskarStark Sep 23, 2024
14a9f1a
feat: introduce `Version` value object (#12)
OskarStark Sep 23, 2024
1c1ed9a
chore: more specific exception (#24)
OskarStark Sep 23, 2024
e443b48
docs: readme rework (#33)
chr-hertel Sep 24, 2024
615ad93
feat: Vision support and message Splitting to allow multiple message …
DZunke Sep 25, 2024
83ff49b
docs: fix typo (#35)
OskarStark Sep 25, 2024
a9d5831
docs: change sentence in `README` (#36)
OskarStark Sep 25, 2024
ce89797
refactor: rename `Runtime` to `Platform` (#34)
OskarStark Sep 25, 2024
e9d22ad
fix: wrong namespace (#40)
OskarStark Sep 25, 2024
f5accab
feat: Read description for schema to give more context to the LLM (#38)
OskarStark Sep 25, 2024
1db39a3
ci: Split pipeline (#39)
OskarStark Sep 25, 2024
add34c8
feat: [Store][Azure] Make vector field name configurable (#43)
OskarStark Sep 25, 2024
7e2cbca
ci: More infos when running CS-Fixer (#44)
OskarStark Sep 25, 2024
af86cc2
docs: Add links for stores (#45)
OskarStark Sep 25, 2024
dadb0bd
chore: Update namespace (#46)
OskarStark Sep 25, 2024
19fe1ea
feat: Better options handling (#41)
OskarStark Sep 25, 2024
6f3d4c6
fix: Remove suggestion (#50)
OskarStark Sep 26, 2024
98ad755
chore: handle image support (#52)
chr-hertel Sep 26, 2024
04b4abb
docs: add reasoning example (#53)
chr-hertel Sep 26, 2024
9977e78
Add MongoDB vector store (#42)
OskarStark Sep 26, 2024
3ab2764
chore: improve example execution with make and dotenv (#54)
chr-hertel Sep 26, 2024
2e8f434
feat: introducing chain processors (#47)
chr-hertel Sep 26, 2024
ec118a0
feat: add pinecone store (#55)
chr-hertel Sep 26, 2024
1ac3431
fix: various fixes for bundle release 0.3 (#56)
chr-hertel Sep 26, 2024
3659701
chore: Remove method `Vector::create1536` (#57)
OskarStark Sep 27, 2024
34f6b13
chore: streamline qa and phpunit config with bundle (#59)
chr-hertel Sep 28, 2024
8888a52
fix: Metadata converting to array (#60)
OskarStark Sep 28, 2024
c5f2a9c
chore: normalize composer.json (#61)
OskarStark Sep 28, 2024
42cf848
docs: add 2 more wanted stores (#62)
OskarStark Sep 28, 2024
759091f
refactor: rename variable to be consistent (#63)
OskarStark Sep 28, 2024
2b7d44b
refactor: Makefile adjust `run-all-examples` (#65)
OskarStark Sep 28, 2024
d3087ad
feat: add voyage embeddings model (#64)
chr-hertel Sep 28, 2024
d4af30e
refactor: clearer output in example (#66)
OskarStark Sep 28, 2024
4026e30
docs: rework supported models, platforms and stores (#69)
chr-hertel Sep 29, 2024
e2c7046
docs: remove wrong google support (#70)
chr-hertel Sep 29, 2024
e026ea5
fix: makefile target and UsesClass attribute in tests (#71)
chr-hertel Sep 29, 2024
70ff90b
chore: Communicate what is needed to run an example (#67)
OskarStark Sep 29, 2024
27418f2
feat: Initialize MongoDB store (#51)
OskarStark Sep 29, 2024
7f678f3
ci: introduce PHP 8.4 to pipeline (#72)
chr-hertel Sep 29, 2024
addaa32
chore: Change order of commands in `Makefile` (#76)
OskarStark Oct 1, 2024
04f1dff
chore: Fix namespace of test (#78)
OskarStark Oct 1, 2024
62f24ab
feat: Filter out Documents without text in `DocumentEmbedder` + tests…
OskarStark Oct 1, 2024
50d3f8a
fix: Fix test method name (#81)
OskarStark Oct 1, 2024
f98fc80
refactor: Use `match` (#83)
OskarStark Oct 1, 2024
9c50909
style: Linebreak CPP (#87)
OskarStark Oct 1, 2024
6c6d0d4
refactor: Use `symfony/clock` in `DocumentEmbedder` (#84)
OskarStark Oct 1, 2024
71a1184
tests: Add test for `ResponseFormatFactory` (#86)
OskarStark Oct 1, 2024
c06f8fb
tests: Enable ``PHPUnitSetList::PHPUNIT_CODE_QUALITY (#88)
OskarStark Oct 1, 2024
0d90c13
feat: Add ability to describe tool parameters via `#[ToolParameter]` …
OskarStark Oct 1, 2024
76227a9
test: Fix rector rule in tests (#90)
OskarStark Oct 1, 2024
7046f56
tests: Execute rector (#91)
OskarStark Oct 1, 2024
b0b4d8b
refactor: introduce attribute namespace for `AsTool` (#89)
chr-hertel Oct 2, 2024
8260c26
refactor: Clear exception hierachy (#94)
OskarStark Oct 2, 2024
e7fb68e
refactor: Introduce `ResponseFormatInterface` (#93)
OskarStark Oct 2, 2024
2efbc0a
refactor: Rename `ContentInterface` to `Content` (#104)
OskarStark Oct 2, 2024
d609380
refactor: Simplify `SchemaFactory` (#100)
OskarStark Oct 3, 2024
9e3e1e9
tests: Add initial `AsToolTest` (#98)
OskarStark Oct 3, 2024
5c5352d
refactor: Do not call `upsert()` with empty array (#102)
OskarStark Oct 3, 2024
efdc42a
No mocks in `DocumentsEmbedderTest` (#103)
OskarStark Oct 3, 2024
ee2a319
refactor: Move fixtures to `tests/Fixture` (#99)
OskarStark Oct 3, 2024
92b60c6
tests: Rework `ToolAnalyzerTest` (#96)
OskarStark Oct 3, 2024
62238b5
fix: changed class in rector config (#106)
chr-hertel Oct 3, 2024
a63da44
tests: Add `ChainProcessorTest` (#97)
OskarStark Oct 3, 2024
8ce931b
feat: add example runner for parallel execution of examples (#107)
chr-hertel Oct 3, 2024
ddf5110
tests: improve coverage by usage attributes (#108)
chr-hertel Oct 3, 2024
d252ecf
feat: support streaming of responses (#58)
chr-hertel Oct 3, 2024
1bf42d7
docs: add pinecone example (#109)
chr-hertel Oct 3, 2024
0164be2
docs: Streamline examples (#111)
OskarStark Oct 3, 2024
f1e89ab
chore: Use `#[\SensitiveParameter]` (#112)
OskarStark Oct 3, 2024
f91edc5
refactor: split `Document` into `TextDocument` and `VectorDocument` (…
chr-hertel Oct 3, 2024
08150e7
fix: Introduce `NullVector` and `VectorInterface` (#114)
OskarStark Oct 4, 2024
10cb5b9
tests: Simplify tests (#115)
OskarStark Oct 4, 2024
4a48bc4
chore: remove reasoning example to safe my credit card (#116)
chr-hertel Oct 4, 2024
c857660
chore: Revert "chore: remove reasoning example to safe my credit card…
OskarStark Oct 5, 2024
ae5e028
refactor: `ResponseInterface` as `Chain` return value (#117)
chr-hertel Oct 5, 2024
a0b5805
fix: indicate example was skipped in runner (#121)
chr-hertel Oct 5, 2024
95a1274
feat: support creation of image from binary file (#122)
chr-hertel Oct 5, 2024
e567330
fix: options handling in chain and processors (#124)
chr-hertel Oct 5, 2024
4492fee
feat: add verbose mode to example runner and extend error handling (#…
chr-hertel Oct 5, 2024
1be8cb2
fix: streamed tool call (#126)
chr-hertel Oct 5, 2024
7a7d8fa
feat: introduce chain awareness in chain processors to nest them (#118)
chr-hertel Oct 5, 2024
d3a7eef
refactor: Remove superflous header (#127)
OskarStark Oct 5, 2024
d9c16b6
tests: Move classes to `Fixture` dir (#130)
OskarStark Oct 5, 2024
1f5fe5e
fix: remove clock suggestion since it is mandatory nowadays (#133)
chr-hertel Oct 5, 2024
cff8df1
feat: [Anthropic] Make version configurable (#128)
OskarStark Oct 7, 2024
aa61f81
tests: Fix test class name (#136)
OskarStark Oct 7, 2024
8bcf946
chore: Argument validation in the constructor (#138)
OskarStark Oct 8, 2024
3c0cc87
docs: rework readme to cover all features (#131)
chr-hertel Oct 12, 2024
620ba13
chore: define export ignore via git attributes (#139)
chr-hertel Oct 12, 2024
2d243e8
fix: Conflict with PHPDocumentor higher then 5.5 because of doc parse…
DZunke Nov 13, 2024
1116782
refactor: Add interface to final readonly chain for testability (#144)
DZunke Nov 13, 2024
2507ce1
fix: empty tool box chain processor is setting invalid tools option t…
DZunke Nov 14, 2024
67b108b
fix: Extend parameter description pattern to stop for single line com…
DZunke Nov 21, 2024
8a55022
refactor: from vendor to structural namespaces for models and platfor…
chr-hertel Nov 23, 2024
0fc493b
feat: adding llama support via replicate and ollama (#73)
chr-hertel Nov 23, 2024
1799ed4
refactor: introduce decoupled platform layer and convert models to st…
chr-hertel Nov 23, 2024
06e619f
docs: add contrib.rocks credits (#146)
chr-hertel Nov 23, 2024
655465c
feat: introducing async responses for parallel calling (#141)
chr-hertel Nov 23, 2024
2687a43
ci: execute php cs fixer with parallel processes (#147)
chr-hertel Nov 23, 2024
ef42137
ci: surpress php 8.4 warning for PHP CS Fixer (#148)
chr-hertel Nov 23, 2024
e958270
refactor: introduce PlatformInterface (#149)
chr-hertel Nov 23, 2024
f9d9e4a
[BC BREAK] Extend `VectorSearchInterface::query()` for a `$minScore` …
OskarStark Dec 6, 2024
1afc25f
feat: Add `score` to `VectorDocument` (#152)
OskarStark Dec 6, 2024
0aa5c0b
fix: Parse OpenAI Response embedding to contain all embeddings (#150)
DZunke Dec 6, 2024
8d7970f
fix: JsonException on last chunk for Symfony 6.4 (#153)
chr-hertel Dec 6, 2024
65ba766
fix: expose version for anthropic via platform factory as well (#154)
chr-hertel Dec 8, 2024
8b88d5d
fix: make it possible to inject http client into factories (#155)
chr-hertel Dec 8, 2024
9936ac9
chore: improve error message for DX (#156)
chr-hertel Dec 8, 2024
c6ac0e7
feat: improve and test wikipedia tool (#157)
chr-hertel Dec 10, 2024
75e1263
Add and use `ToolNotFoundException` (#162)
OskarStark Dec 19, 2024
8365e13
Handle `int`, `float`, `array`, `\Stringable` and `\JsonSerializable`…
OskarStark Dec 19, 2024
204fed6
chore: remove unused exception classes (#167)
OskarStark Dec 21, 2024
cb2c967
tests: Extend test to ensure ToolCallMessages are not part of the Mes…
OskarStark Dec 21, 2024
c14e28d
tests: use dataprovider (#164)
OskarStark Dec 21, 2024
62ff661
feat: add `Comparable` trait from `oskarstark/enum-helper` (#163)
OskarStark Dec 21, 2024
a817561
chore: handle unexpected response format structure (#158)
Iyadhfaleh Dec 21, 2024
f1f3e44
feat: extend weather tool by forecast and reduced structue (#169)
chr-hertel Dec 21, 2024
f7d8aa0
docs: extend tools docs (#170)
chr-hertel Dec 21, 2024
3c48f5a
refactor: `MessageBag` not depend on `\ArrayObject` anymore (#174)
OskarStark Dec 28, 2024
c53edc1
feat: override the chain's llm via option (#173)
chr-hertel Dec 28, 2024
8c6ac09
fix: accessor (#176)
OskarStark Dec 28, 2024
f064e67
feat: Enhancement: Add `MessageBagInterface` (#166)
OskarStark Dec 28, 2024
b60816a
refactor: Unfinalize MessageBag (#179)
OskarStark Jan 2, 2025
fd8869a
refactor: remove `else` (#180)
OskarStark Jan 2, 2025
bec9272
tests: adjust `MessageBag` test (#181)
OskarStark Jan 3, 2025
0930e73
docs: add section about $options argument (#183)
chr-hertel Jan 4, 2025
eb8e36a
refactor: toolbox error handling (#185)
chr-hertel Jan 4, 2025
847ff84
feat: empower input processor to change LLM and MessageBag (#184)
chr-hertel Jan 4, 2025
bbabd9a
feat: add system prompt processor (#186)
chr-hertel Jan 4, 2025
4adb1a2
chore: add logging to tool executor (#188)
chr-hertel Jan 5, 2025
fc8db39
feat: add tool call event (#187)
chr-hertel Jan 5, 2025
e4863e5
refactor: move error handling to chain + logging (#182)
chr-hertel Jan 5, 2025
04edf87
refactor: fix plural of chain processor vars (#190)
chr-hertel Jan 5, 2025
7779a13
refactor: use named arguments for previous exception (#193)
OskarStark Jan 6, 2025
af5e00d
feat: Implement DALL-E image generation for OpenAI Bridge (#178)
DZunke Jan 6, 2025
86b80f9
feat: audio support (#189)
chr-hertel Jan 6, 2025
8629d2c
fix: Dall-E image generation examples (#196)
DZunke Jan 7, 2025
bbd06dc
feat: Add possibility to react to content filter violation (#192)
OskarStark Jan 13, 2025
9b530fc
feat: allow `null` as type in schema (#195)
OskarStark Jan 22, 2025
432a026
fix: gpt audio support (#198)
chr-hertel Jan 22, 2025
d2ab0ec
docs: reference demo application (#199)
chr-hertel Jan 22, 2025
42c2a97
tests: fix phpunit coverage/usage attributes (#200)
chr-hertel Jan 22, 2025
80fd016
refactor: example runner to consume less vertical space (#201)
chr-hertel Jan 22, 2025
a467199
feat: add support for OpenRouter & Generic Models (#203)
rglozman Feb 5, 2025
f8eed58
feat: add tavily tool support (#204)
chr-hertel Feb 5, 2025
ffc3db7
refactor: be more explicit in supports method (#205)
chr-hertel Feb 5, 2025
06e52f1
chore: remove phpdocumentor conflict (#206)
chr-hertel Feb 5, 2025
5da000e
feat: add `o3-mini` and `o3-mini-high` models (#210)
OskarStark Feb 10, 2025
aff83f9
fix: support finish reason "length" (#216)
odinuv Feb 18, 2025
9bdb696
ci: switch rector to dry run for actually failing (#217)
chr-hertel Feb 18, 2025
706497c
fix: GPT Streams with tool calls (#214)
DZunke Feb 18, 2025
d7ecb4d
refactor: gpt stream conversion (#218)
chr-hertel Feb 18, 2025
ec37a3a
feat: introduce optional fault tolerant toolbox (#213)
chr-hertel Feb 21, 2025
9b9c17f
fix: replicate llama init (#219)
chr-hertel Feb 21, 2025
f300bbb
feat: support gemini (#220)
chr-hertel Feb 21, 2025
374bf2a
tests: fix coverage data again (#221)
chr-hertel Feb 22, 2025
e27a6e1
docs: fix messages example (#222)
chr-hertel Feb 22, 2025
2910133
fix: re-enable filtering of tools (#223)
chr-hertel Feb 23, 2025
8da55bb
fix: actually fix the fix of tool filter (#224)
chr-hertel Feb 23, 2025
a4edfb5
chore: bump dev dependencies (#225)
chr-hertel Feb 25, 2025
b9f33f2
fix: array access of tool override (#226)
chr-hertel Feb 27, 2025
d267bc0
chore: allow `codewithkyrian/chromadb-php` 0.3 (#228)
OskarStark Mar 3, 2025
58a5038
chore: add Oskar as author (#229)
OskarStark Mar 3, 2025
5824473
fix: do not use deprecated method (#227)
OskarStark Mar 3, 2025
a978452
feat: add GPT 4.5 (#232)
OskarStark Mar 4, 2025
c3893be
chore: require PHPStan and Rector 2 (#230)
OskarStark Mar 4, 2025
9ef0740
style: enable `heredoc_indentation` with `start_plus_one` rule (#234)
OskarStark Mar 6, 2025
b71864f
ci: add PR validation and auto labeling (#237)
chr-hertel Mar 6, 2025
e8ce5d5
refactor: rename tool param attribute (#239)
chr-hertel Mar 7, 2025
a5b0315
docs: better readability (#240)
OskarStark Mar 7, 2025
9209ba5
docs: fix syntax (#242)
OskarStark Mar 7, 2025
ab9da42
chore: reorganize makefile (#241)
chr-hertel Mar 7, 2025
56673df
docs: add contributing file (#238)
chr-hertel Mar 7, 2025
5a78338
docs: fix make in contrib (#245)
chr-hertel Mar 7, 2025
ac93f0c
chore: disable memory limit for phpstan (#244)
chr-hertel Mar 7, 2025
3e0ad19
feat: include tool definitions to system prompt (#233)
OskarStark Mar 7, 2025
9f75fbe
refactor: centralize json schema generation (#212)
chr-hertel Mar 7, 2025
e981817
feat: support multiple urls in Tavily tool (#243)
OskarStark Mar 7, 2025
6e37414
ci: use `bug` instead of `fix` label (#246)
chr-hertel Mar 7, 2025
953b914
refactor: ease toolbox instatiation (#248)
chr-hertel Mar 13, 2025
4ab0b2a
feat: extend Audio content for data urls and raw data (#250)
chr-hertel Mar 13, 2025
30578be
feat: add support for whisper on openai (#251)
chr-hertel Mar 13, 2025
6a5dbe7
refactor: introduce tool metadata factory interface (#249)
chr-hertel Mar 13, 2025
00cc12f
fix: handle void|null tool response graceful (#254)
chr-hertel Mar 14, 2025
7741dd4
fix: remove +x on example files (#253)
chr-hertel Mar 14, 2025
de0ff06
test: fix coverage again (#257)
chr-hertel Mar 14, 2025
5b663ee
feat: add whisper azure support (#252)
chr-hertel Mar 15, 2025
af174b9
feat: support stringable system prompt (#259)
chr-hertel Mar 19, 2025
6f0b303
refactor: introduce execution reference in tool metadata (#260)
chr-hertel Mar 19, 2025
7fa630b
feat: introduce chain and memory tool metadata factory (#256)
chr-hertel Mar 19, 2025
21f07bd
refactor: rename toolbox to lowercase (#258)
chr-hertel Mar 19, 2025
06bda00
test: fix namespaces and coverage usage (#261)
chr-hertel Mar 19, 2025
1d5ef0a
feat: support date time tool results (#263)
chr-hertel Mar 19, 2025
e347295
docs: add section about different tool metadata factories (#262)
chr-hertel Mar 19, 2025
83d916c
feat: add object support for MemoryFactory::addTool (#264)
chr-hertel Mar 20, 2025
711c208
fix: exception message in ToolMetadataException (#265)
chr-hertel Mar 20, 2025
6365947
fix: complex json schema default (#267)
chr-hertel Mar 20, 2025
3a813b7
feat: add chain wrapper tool (#266)
chr-hertel Mar 20, 2025
a588afe
docs: add section about chain in chain (#268)
chr-hertel Mar 20, 2025
375acf2
docs: typo with Embedder service (#269)
Iyadhfaleh Mar 29, 2025
375a11f
feat: add support for Anthropic tool use (#209)
soukicz Apr 12, 2025
4c9138e
ci: update rector config for deprecations and skipping data provider …
chr-hertel Apr 12, 2025
4baf555
fix: toolbox usage in claude model handler after renaming (#275)
chr-hertel Apr 12, 2025
e5ac251
fix: usage of Claude without system prompt (#272)
chr-hertel Apr 12, 2025
2ad9c25
ci: reorder qa pipeline to shift commit check to last step (#273)
chr-hertel Apr 12, 2025
606f80e
feat: bring in Llama 3.3 support with Azure (#276)
chr-hertel Apr 12, 2025
db1bac8
feat: add latest Claude model versions (#277)
chr-hertel Apr 12, 2025
aa73b0c
ci: skip mongodb extension for now (#281)
chr-hertel Apr 14, 2025
349f4af
refactor: rename Model::version to Model::name (#278)
chr-hertel Apr 14, 2025
d743b7b
feat: add new v4.1 models (#282)
DZunke Apr 15, 2025
bb02cef
feat: allow access of methods and read of properties through AsyncRes…
chr-hertel Apr 18, 2025
54e13cb
refactor: add more output to example runner (#283)
chr-hertel Apr 18, 2025
99336fe
refactor: message content file handling [BC BREAK] (#285)
chr-hertel Apr 18, 2025
e38cb0d
feat: add support for Hugging Face Inference API (#279)
chr-hertel Apr 18, 2025
6b6d8f1
feat: add support for TransformersPHP for model runtime in PHP (#280)
chr-hertel Apr 18, 2025
670fd6d
chore: updating some composer metadata + normalize (#287)
chr-hertel Apr 18, 2025
bdddee6
test: fix namespaces and coverage (#289)
chr-hertel Apr 21, 2025
30b7f92
fix: skip parameters with default as required in JsonSchema (#288)
lvluoyue Apr 23, 2025
5a06b3f
feat: add Raw Response Metadata Handling - GPT Token Usage Example (#…
DZunke Apr 25, 2025
0d7bac5
feat: adding basic Brave search tool and crawler (#290)
chr-hertel Apr 25, 2025
b0ee187
refactor: use lib specific exceptions instead of native ones (#293)
chr-hertel Apr 25, 2025
519c06c
refactor: making more test method calls static with rector (#294)
chr-hertel May 1, 2025
8e6a7d0
chore: split example folder structure into multiple subdirectories (#…
chr-hertel May 1, 2025
7fd92b4
chore: renamen model toolbox examples to toolcall (#296)
chr-hertel May 4, 2025
b515355
chore: extend example runner to target subdirs only (#299)
chr-hertel May 4, 2025
f910203
docs: fix after example rename in #296 (#300)
chr-hertel May 4, 2025
dbf0fef
docs: add Azure examples for Whisper and Embeddings (#302)
chr-hertel May 12, 2025
365a536
docs: fix azure examples in env (#303)
chr-hertel May 12, 2025
3edc35b
chore: remove specific huggingface example runner (#304)
chr-hertel May 12, 2025
2fc8250
test: fix makefile targets to run examples (#306)
chr-hertel May 12, 2025
245e53f
fix: implement failing test and cleanup (#308)
chr-hertel May 16, 2025
f411322
Fix structured dto (#309)
chr-hertel May 16, 2025
496d887
fix: missing namespace when upserting in Pinecone store (#310)
sarjon May 16, 2025
8157e7d
fix: flaky anthropic tool calls with empty text (#315)
chr-hertel May 18, 2025
be5d914
refactor: simplify transformers implementation by adding specific Pla…
chr-hertel May 18, 2025
2cc5230
feat: allow codewithkyrian/chromadb-php 0.4 (#322)
OskarStark May 24, 2025
e6385cc
feat: implement Bedrock and model clients for Claude, Llama, and Nova…
bjalt May 26, 2025
a78f8f7
refactor: ease Bedrock init (#324)
chr-hertel May 26, 2025
1e113b0
fix: Symfony 7.3 compatibility of SingleCommand with output (#325)
chr-hertel May 29, 2025
5a64eaa
refactor: Major Library Refactoring (#326)
chr-hertel Jun 1, 2025
773a700
feat: extend Claude support for images and pdf input (#298)
chr-hertel Jun 1, 2025
c27618d
feat: add support for mistral (#291)
chr-hertel Jun 1, 2025
79310a3
refactor: chain aware with interface (#327)
chr-hertel Jun 1, 2025
b95023e
chore: add authors (#328)
chr-hertel Jun 1, 2025
0fe079c
feat: add option to keep tool messages (#323)
philipheimboeck Jun 6, 2025
5ee30df
test: to mock the ChainInterface we need to skip broken PHPUnit versi…
chr-hertel Jun 6, 2025
7b7dc8c
refactor: rework LLM Chain into Symfony AI
chr-hertel Jun 6, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
66 changes: 66 additions & 0 deletions .env
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
# You only need to fill in the values when running the examples, see examples/

# For using GPT on OpenAI
OPENAI_API_KEY=

# For using Claude on Anthropic
ANTHROPIC_API_KEY=

# For using Mistral
MISTRAL_API_KEY=

# For using Voyage
VOYAGE_API_KEY=

# For using Replicate
REPLICATE_API_KEY=

# For using Ollama
OLLAMA_HOST_URL=

# For using GPT on Azure
AZURE_OPENAI_BASEURL=
AZURE_OPENAI_KEY=
AZURE_OPENAI_GPT_DEPLOYMENT=
AZURE_OPENAI_GPT_API_VERSION=
AZURE_OPENAI_EMBEDDINGS_DEPLOYMENT=
AZURE_OPENAI_EMBEDDINGS_API_VERSION=
AZURE_OPENAI_WHISPER_DEPLOYMENT=
AZURE_OPENAI_WHISPER_API_VERSION=

# For using Llama on Azure
AZURE_LLAMA_BASEURL=
AZURE_LLAMA_KEY=

# For using Bedrock
AWS_ACCESS_KEY_ID=
AWS_SECRET_ACCESS_KEY=
AWS_DEFAULT_REGION=

# Hugging Face Access Token
HUGGINGFACE_KEY=

# For using OpenRouter
OPENROUTER_KEY=

# For using SerpApi (tool)
SERP_API_KEY=

# For using Tavily (tool)
TAVILY_API_KEY=

# For using Brave (tool)
BRAVE_API_KEY=

# For using MongoDB Atlas (store)
MONGODB_URI=

# For using Pinecone (store)
PINECONE_API_KEY=
PINECONE_HOST=

# Some examples are expensive to run, so we disable them by default
RUN_EXPENSIVE_EXAMPLES=false

# For using Gemini
GOOGLE_API_KEY=
5 changes: 2 additions & 3 deletions .github/workflows/code-quality.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -51,8 +51,7 @@ jobs:
run: |
echo COLUMNS=120 >> $GITHUB_ENV
echo COMPOSER_MIN_STAB='composer config minimum-stability ${{ matrix.minimum-stability || 'stable' }} --ansi' >> $GITHUB_ENV
echo COMPOSER_UP='composer update ${{ matrix.dependency-version == 'lowest' && '--prefer-lowest' || '' }} --no-progress --no-interaction --ansi' >> $GITHUB_ENV
echo COMPOSER_VALIDATE='composer validate --strict' >> $GITHUB_ENV
echo COMPOSER_UP='composer update ${{ matrix.dependency-version == 'lowest' && '--prefer-lowest' || '' }} --no-progress --no-interaction --ansi --ignore-platform-req=ext-mongodb' >> $GITHUB_ENV
echo PHPSTAN='vendor/bin/phpstan' >> $GITHUB_ENV

PACKAGES=$(find src/ -mindepth 2 -type f -name composer.json -not -path "*/vendor/*" -printf '%h\n' | sed 's/^src\///' | grep -Ev "examples" | sort | tr '\n' ' ')
Expand All @@ -75,4 +74,4 @@ jobs:
run: |
source .github/workflows/.utils.sh

echo "$PACKAGES" | xargs -n1 | parallel -j +3 "_run_task {} '(cd src/{} && $COMPOSER_MIN_STAB && $COMPOSER_UP && $COMPOSER_VALIDATE && $PHPSTAN)'"
echo "$PACKAGES" | xargs -n1 | parallel -j +3 "_run_task {} '(cd src/{} && $COMPOSER_MIN_STAB && $COMPOSER_UP && $PHPSTAN)'"
2 changes: 1 addition & 1 deletion .github/workflows/unit-tests.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ jobs:
run: |
echo COLUMNS=120 >> $GITHUB_ENV
echo COMPOSER_MIN_STAB='composer config minimum-stability ${{ matrix.minimum-stability || 'stable' }} --ansi' >> $GITHUB_ENV
echo COMPOSER_UP='composer update ${{ matrix.dependency-version == 'lowest' && '--prefer-lowest' || '' }} --no-progress --no-interaction --ansi' >> $GITHUB_ENV
echo COMPOSER_UP='composer update ${{ matrix.dependency-version == 'lowest' && '--prefer-lowest' || '' }} --no-progress --no-interaction --ansi --ignore-platform-req=ext-mongodb' >> $GITHUB_ENV
echo PHPUNIT='vendor/bin/phpunit' >> $GITHUB_ENV
[ 'lowest' = '${{ matrix.dependency-version }}' ] && export SYMFONY_DEPRECATIONS_HELPER=weak

Expand Down
8 changes: 5 additions & 3 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
.doctor-rst.cache
.env.local
.php-cs-fixer.cache
.phpunit.result.cache
.phpunit.cache
.transformers-cache

/composer.lock
/vendor
composer.lock
vendor
2 changes: 1 addition & 1 deletion .php-cs-fixer.dist.php
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@
->setRiskyAllowed(true)
->setFinder(
(new PhpCsFixer\Finder())
->in(__DIR__.'/src')
->in([__DIR__.'/src', __DIR__.'/examples'])
->append([__FILE__])
->notPath('#/Fixtures/#')
)
Expand Down
Loading