0.25.0
What's Changed
- Update README.md by @aashish13 in #281
- Cleanup Testcontainers deps by @eddumelendez in #292
- Feature/elastic search restclient constructor by @aphethean1 in #291
- build most modules with jdk 8 by @langchain4j in #295
- Graal Integration for Local JS and Python Execution by @janglada in #263
- graal: cleanup by @langchain4j in #297
- Fix a token usage statistical issue in DefaultAiServices by @jiangsier-xyz in #280
- pass OpenSearchClient directly to OpenSearchEmbeddingStore by @sboeckelmann in #309
- #299 Add null check for ToolsParameters in tokenCountEstimation by @kumlien in #303
- Add note about Quarkus specific examples by @geoand in #329
- Fix PG Vector Index creation statement incorrect by @pascalconfluent in #302
- Use Testcontainers annotation by @eddumelendez in #310
- Use ElasticsearchContainer in Elasticsearch IT by @eddumelendez in #312
- Use Testcontainers in Chroma IT by @eddumelendez in #313
- Enable Milvus IT by using Testcontainers by @eddumelendez in #314
- Use Testcontainers in Ollama IT by @eddumelendez in #315
- Enhanced QWen Model Features and Tokenizer Implementation by @jiangsier-xyz in #317
- Use Testcontainers to run LocalAI by @eddumelendez in #331
- enable langchain4j-graal build in workflow by @shalk in #333
- Use Testcontainers for Weaviate IT by @eddumelendez in #332
- Migration of the AzureOpenAiChatModel to use the Azure OpenAI SDK by @jdubois in #328
- OpenAI: Support parallel tool calling by @langchain4j in #338
- spring-boot-starter add azure openai support by @QuantumBear in #339
- make OpenAI tokenizer more precise by @langchain4j in #346
- Support Java 21 by @jdubois in #336
- Bump org.json:json from 20230618 to 20231013 in /langchain4j-cassandra by @dependabot in #341
- Add Dev Container support by @jdubois in #337
- Correctly configure Maven wrapper by @jdubois in #348
- fix the thread safety issue in InMemoryEmbeddingStore. by @lexluo09 in #351
- Remove quarkus module by @geoand in #345
- Migrate to the new Azure OpenAI 1.0.0-beta.6 SDK by @jdubois in #356
- Update GitHub Actions versions by @jdubois in #357
- Extract document loaders and parsers into separate modules by @langchain4j in #354
- Allow for specifying the organization id in the configuration by @edeandrea in #364
- Fixes #241: Added support for Neo4j Vector Index by @vga91 in #282
- feat: add OllamaChatModel and its corresponding integration test by @fintanmm in #323
- OpenAI DALL·E support by @Heezer in #298
- bumped version to 0.25.0-SNAPSHOT by @langchain4j in #369
- Removed generic AiMessage ctor by @langchain4j in #370
- Fix Neo4jEmbeddingStoreTest error by @vga91 in #368
- Integration with ChatGLM by @Martin7-1 in #360
- Add image generation support with Azure OpenAI by @jdubois in #359
- #365: handle enum arguments in tools properly by @langchain4j in #367
- Add support for "stop" in Azure OpenAI by @jdubois in #372
- Azure OpenAI: add tests for GPT 4 by @jdubois in #371
- Extracted OpenAI Spring Boot starter into a separate module by @langchain4j in #361
- Update Ollama by @langchain4j in #373
- OpenAI: added missing parameters (logit_bias, response_format, seed, user) by @langchain4j in #374
- Support Google Vertex AI Gemini by @langchain4j in #402
- rename langchain4j-graal module by @langchain4j in #405
- Add support for the 3 authentication methods to Azure OpenAI by @jdubois in #375
- fix pinecone QueryRequest usage, upgrade from 0.2.1 to 0.6.0 by @shalk in #406
- fixed pinecone client CVEs by @langchain4j in #409
- Replace Mustache templates with simple implementation to reduce transitive dependencies by @langchain4j in #408
- 385 Metadata takes ownership of its construction Map<String, String> by @langchain4j in #412
- Metadata: deprecated potentially confusing add/from/metadata(String, Object) methods by @langchain4j in #413
- Fixed (#264) by @langchain4j in #414
New Contributors
- @aashish13 made their first contribution in #281
- @eddumelendez made their first contribution in #292
- @aphethean1 made their first contribution in #291
- @janglada made their first contribution in #263
- @sboeckelmann made their first contribution in #309
- @kumlien made their first contribution in #303
- @shalk made their first contribution in #333
- @jdubois made their first contribution in #328
- @QuantumBear made their first contribution in #339
- @dependabot made their first contribution in #341
- @lexluo09 made their first contribution in #351
- @edeandrea made their first contribution in #364
- @vga91 made their first contribution in #282
- @fintanmm made their first contribution in #323
Breaking Changes
langchain4j-azure-open-ai
module was completely reworked (using official Azure SDK now), there might be breaking changes when constructing models in the builderslangchain4j-spring-boot-starter
module is replaced by separatelangchain4j-*-spring-boot-starter
modules for each provider, e.g.langchain4j-open-ai-spring-boot-starter
, all available starters are here- Spring Boot properties changed:
langchain4j.{model type}.{provider}.{property}
->langchain4j.{provider}.{model type}.{property}
dev.langchain4j.data.document.FileSystemDocumentLoader
->dev.langchain4j.data.document.loader.FileSystemDocumentLoader
- Document parsers (PDF, MS Office) were extracted into their own modules,
TextDocumentParser
stays inlangchain4j
module - Amazon S3 loaders migrated to langchain4j-document-loader-amazon-s3 module
EmbeddingStoreIngestor
moved intolangchain4j-core
, keeping the same package name- potential problems: mustache templates were replaced with simple implementation, but should be backwards compatible unless you used advanced features. You can still plug in mustache using SPI.
Full Changelog: 0.24.0...0.25.0