From 315eab864139568cd2086231c51ac13bb46f30ae Mon Sep 17 00:00:00 2001 From: deep-learning-dynamo Date: Fri, 29 Sep 2023 14:27:51 +0200 Subject: [PATCH] released 0.23.0 --- .github/ISSUE_TEMPLATE/bug_report.md | 2 +- README.md | 37 +++++++++++++++++++------ langchain4j-azure-open-ai/pom.xml | 2 +- langchain4j-cassandra/pom.xml | 2 +- langchain4j-chroma/pom.xml | 3 +- langchain4j-core/pom.xml | 2 +- langchain4j-dashscope/pom.xml | 2 +- langchain4j-elasticsearch/pom.xml | 3 +- langchain4j-hugging-face/pom.xml | 2 +- langchain4j-local-ai/pom.xml | 2 +- langchain4j-milvus/pom.xml | 3 +- langchain4j-open-ai/pom.xml | 2 +- langchain4j-parent/pom.xml | 2 +- langchain4j-pinecone/pom.xml | 2 +- langchain4j-redis/pom.xml | 3 +- langchain4j-spring-boot-starter/pom.xml | 2 +- langchain4j-vertex-ai/pom.xml | 2 +- langchain4j-vespa/pom.xml | 2 +- langchain4j-weaviate/pom.xml | 2 +- langchain4j/pom.xml | 2 +- pom.xml | 2 +- 21 files changed, 53 insertions(+), 28 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md index fc94dba829..76a11fa112 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -23,7 +23,7 @@ Please provide a relevant code snippets to reproduce this bug. A clear and concise description of what you expected to happen. **Please complete the following information:** -- LangChain4j version: e.g. 0.22.0 +- LangChain4j version: e.g. 0.23.0 - Java version: e.g. 11 - Spring Boot version (if applicable): e.g. 2.7.14 diff --git a/README.md b/README.md index cd03c0ef6a..0b52ba30bc 100644 --- a/README.md +++ b/README.md @@ -27,6 +27,17 @@ Please see examples of how LangChain4j can be used in `langchain4j-examples` rep ## News +29 September: +- Updates to models API: return `Response` instead of `T`. `Response` contains token usage and finish reason. +- All model and embedding store integrations now live in their own modules +- Integration with [Vespa](https://vespa.ai/) by [@Heezer](https://github.com/Heezer) +- Integration with [Elasticsearch](https://www.elastic.co/) by [@Martin7-1](https://github.com/Martin7-1) +- Integration with [Redis](https://redis.io/) by [@Martin7-1](https://github.com/Martin7-1) +- Integration with [Milvus](https://milvus.io/) by [@IuriiKoval](https://github.com/IuriiKoval) +- Integration with [Astra DB](https://www.datastax.com/products/datastax-astra) and [Cassandra](https://cassandra.apache.org/) by [@clun](https://github.com/clun) +- Added support for overlap in document splitters +- Some bugfixes and smaller improvements + 29 August: - Offline [text classification with embeddings](https://github.com/langchain4j/langchain4j-examples/blob/main/other-examples/src/main/java/embedding/classification/EmbeddingModelTextClassifierExample.java) - Integration with [Google Vertex AI](https://cloud.google.com/vertex-ai) by [@kuraleta](https://github.com/kuraleta) @@ -197,12 +208,12 @@ See example [here](https://github.com/langchain4j/langchain4j-examples/blob/main dev.langchain4j langchain4j - 0.22.0 + 0.23.0 ``` - Gradle: ``` - implementation 'dev.langchain4j:langchain4j:0.22.0' + implementation 'dev.langchain4j:langchain4j:0.23.0' ``` 2. Import your OpenAI/HuggingFace API key: @@ -217,9 +228,9 @@ See example [here](https://github.com/langchain4j/langchain4j-examples/blob/main ```java OpenAiChatModel model = OpenAiChatModel.withApiKey(apiKey); - AiMessage answer = model.generate("Hello world!").get(); + String answer = model.generate("Hello world!"); - System.out.println(answer.text()); // Hello! How can I assist you today? + System.out.println(answer); // Hello! How can I assist you today? ``` ## Disclaimer @@ -257,21 +268,31 @@ Please note that the library is in active development and: - Chats (sync + streaming + functions) - Completions (sync + streaming) - Embeddings +- Integration with [DashScope](https://dashscope.aliyun.com/) for: + - Chats (sync + streaming) + - Completions (sync + streaming) + - Embeddings - [Chat memory](https://github.com/langchain4j/langchain4j-examples/blob/main/other-examples/src/main/java/ChatMemoryExamples.java) - [Persistent chat memory](https://github.com/langchain4j/langchain4j-examples/blob/main/other-examples/src/main/java/ServiceWithPersistentMemoryForEachUserExample.java) - [Chat with Documents](https://github.com/langchain4j/langchain4j-examples/blob/main/other-examples/src/main/java/ChatWithDocumentsExamples.java) -- [Integration](https://github.com/langchain4j/langchain4j-examples/blob/main/other-examples/src/main/java/embedding/store/ChromaEmbeddingStoreExample.java) with [Chroma](https://www.trychroma.com/) -- [Integration](https://github.com/langchain4j/langchain4j-examples/blob/main/other-examples/src/main/java/embedding/store/PineconeEmbeddingStoreExample.java) with [Pinecone](https://www.pinecone.io/) -- [Integration](https://github.com/langchain4j/langchain4j-examples/blob/main/other-examples/src/main/java/embedding/store/WeaviateEmbeddingStoreExample.java) with [Weaviate](https://weaviate.io/) +- Integration with [Astra DB](https://www.datastax.com/products/datastax-astra) and [Cassandra](https://cassandra.apache.org/) +- [Integration](https://github.com/langchain4j/langchain4j-examples/blob/main/chroma-example/src/main/java/ChromaEmbeddingStoreExample.java) with [Chroma](https://www.trychroma.com/) +- [Integration](https://github.com/langchain4j/langchain4j-examples/blob/main/elasticsearch-example/src/main/java/ElasticsearchEmbeddingStoreExample.java) with [Elasticsearch](https://www.elastic.co/) +- [Integration](https://github.com/langchain4j/langchain4j-examples/blob/main/milvus-example/src/main/java/MilvusEmbeddingStoreExample.java) with [Milvus](https://milvus.io/) +- [Integration](https://github.com/langchain4j/langchain4j-examples/blob/main/pinecone-example/src/main/java/PineconeEmbeddingStoreExample.java) with [Pinecone](https://www.pinecone.io/) +- [Integration](https://github.com/langchain4j/langchain4j-examples/blob/main/redis-example/src/main/java/RedisEmbeddingStoreExample.java) with [Redis](https://redis.io/) +- Integration with [Vespa](https://vespa.ai/) +- [Integration](https://github.com/langchain4j/langchain4j-examples/blob/main/weaviate-example/src/main/java/WeaviateEmbeddingStoreExample.java) with [Weaviate](https://weaviate.io/) - [In-memory embedding store](https://github.com/langchain4j/langchain4j-examples/blob/main/other-examples/src/main/java/embedding/store/InMemoryEmbeddingStoreExample.java) (can be persisted) - [Structured outputs](https://github.com/langchain4j/langchain4j-examples/blob/main/other-examples/src/main/java/OtherServiceExamples.java) - [Prompt templates](https://github.com/langchain4j/langchain4j-examples/blob/main/other-examples/src/main/java/PromptTemplateExamples.java) - [Structured prompt templates](https://github.com/langchain4j/langchain4j-examples/blob/main/other-examples/src/main/java/StructuredPromptTemplateExamples.java) - [Streaming of LLM responses](https://github.com/langchain4j/langchain4j-examples/blob/main/other-examples/src/main/java/StreamingExamples.java) -- [Loading txt, pdf, doc, xls and ppt documents from the file system and via URL](https://github.com/langchain4j/langchain4j-examples/blob/main/other-examples/src/main/java/DocumentLoaderExamples.java) +- [Loading txt, html, pdf, doc, xls and ppt documents from the file system and via URL](https://github.com/langchain4j/langchain4j-examples/blob/main/other-examples/src/main/java/DocumentLoaderExamples.java) - [Splitting documents into segments](https://github.com/langchain4j/langchain4j-examples/blob/main/other-examples/src/main/java/ChatWithDocumentsExamples.java): - by paragraphs, lines, sentences, words, etc - recursively + - with overlap - Token count estimation (so that you can predict how much you will pay) ## Coming soon: diff --git a/langchain4j-azure-open-ai/pom.xml b/langchain4j-azure-open-ai/pom.xml index 7362742324..5e6c158083 100644 --- a/langchain4j-azure-open-ai/pom.xml +++ b/langchain4j-azure-open-ai/pom.xml @@ -7,7 +7,7 @@ dev.langchain4j langchain4j-parent - 0.22.0 + 0.23.0 ../langchain4j-parent/pom.xml diff --git a/langchain4j-cassandra/pom.xml b/langchain4j-cassandra/pom.xml index f2dce07146..2c11b50a4e 100644 --- a/langchain4j-cassandra/pom.xml +++ b/langchain4j-cassandra/pom.xml @@ -9,7 +9,7 @@ dev.langchain4j langchain4j-parent - 0.22.0 + 0.23.0 ../langchain4j-parent/pom.xml diff --git a/langchain4j-chroma/pom.xml b/langchain4j-chroma/pom.xml index 4c86427ce4..435ad0addf 100644 --- a/langchain4j-chroma/pom.xml +++ b/langchain4j-chroma/pom.xml @@ -3,10 +3,11 @@ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 + dev.langchain4j langchain4j-parent - 0.22.0 + 0.23.0 ../langchain4j-parent/pom.xml diff --git a/langchain4j-core/pom.xml b/langchain4j-core/pom.xml index ba6d796d5b..8e79bc2beb 100644 --- a/langchain4j-core/pom.xml +++ b/langchain4j-core/pom.xml @@ -7,7 +7,7 @@ dev.langchain4j langchain4j-parent - 0.22.0 + 0.23.0 ../langchain4j-parent/pom.xml diff --git a/langchain4j-dashscope/pom.xml b/langchain4j-dashscope/pom.xml index 981a8396f1..8fecfed597 100644 --- a/langchain4j-dashscope/pom.xml +++ b/langchain4j-dashscope/pom.xml @@ -7,7 +7,7 @@ dev.langchain4j langchain4j-parent - 0.22.0 + 0.23.0 ../langchain4j-parent/pom.xml diff --git a/langchain4j-elasticsearch/pom.xml b/langchain4j-elasticsearch/pom.xml index 1d0d7f8e80..4331e45b15 100644 --- a/langchain4j-elasticsearch/pom.xml +++ b/langchain4j-elasticsearch/pom.xml @@ -3,10 +3,11 @@ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 + dev.langchain4j langchain4j-parent - 0.22.0 + 0.23.0 ../langchain4j-parent/pom.xml diff --git a/langchain4j-hugging-face/pom.xml b/langchain4j-hugging-face/pom.xml index 5e5565133e..deec246245 100644 --- a/langchain4j-hugging-face/pom.xml +++ b/langchain4j-hugging-face/pom.xml @@ -7,7 +7,7 @@ dev.langchain4j langchain4j-parent - 0.22.0 + 0.23.0 ../langchain4j-parent/pom.xml diff --git a/langchain4j-local-ai/pom.xml b/langchain4j-local-ai/pom.xml index f05ef40e33..f95a0b397f 100644 --- a/langchain4j-local-ai/pom.xml +++ b/langchain4j-local-ai/pom.xml @@ -7,7 +7,7 @@ dev.langchain4j langchain4j-parent - 0.22.0 + 0.23.0 ../langchain4j-parent/pom.xml diff --git a/langchain4j-milvus/pom.xml b/langchain4j-milvus/pom.xml index fe596fcda1..536497434e 100644 --- a/langchain4j-milvus/pom.xml +++ b/langchain4j-milvus/pom.xml @@ -3,10 +3,11 @@ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 + dev.langchain4j langchain4j-parent - 0.22.0 + 0.23.0 ../langchain4j-parent/pom.xml diff --git a/langchain4j-open-ai/pom.xml b/langchain4j-open-ai/pom.xml index 4f7cb62244..6a780ee2a2 100644 --- a/langchain4j-open-ai/pom.xml +++ b/langchain4j-open-ai/pom.xml @@ -7,7 +7,7 @@ dev.langchain4j langchain4j-parent - 0.22.0 + 0.23.0 ../langchain4j-parent/pom.xml diff --git a/langchain4j-parent/pom.xml b/langchain4j-parent/pom.xml index 3b1c0b34b8..cb9c1e0128 100644 --- a/langchain4j-parent/pom.xml +++ b/langchain4j-parent/pom.xml @@ -6,7 +6,7 @@ dev.langchain4j langchain4j-parent - 0.22.0 + 0.23.0 pom langchain4j parent POM diff --git a/langchain4j-pinecone/pom.xml b/langchain4j-pinecone/pom.xml index 7f66df36cd..318f6420df 100644 --- a/langchain4j-pinecone/pom.xml +++ b/langchain4j-pinecone/pom.xml @@ -7,7 +7,7 @@ dev.langchain4j langchain4j-parent - 0.22.0 + 0.23.0 ../langchain4j-parent/pom.xml diff --git a/langchain4j-redis/pom.xml b/langchain4j-redis/pom.xml index 230543e89c..f34b15a568 100644 --- a/langchain4j-redis/pom.xml +++ b/langchain4j-redis/pom.xml @@ -3,10 +3,11 @@ xmlns="http://maven.apache.org/POM/4.0.0" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 + dev.langchain4j langchain4j-parent - 0.22.0 + 0.23.0 ../langchain4j-parent/pom.xml diff --git a/langchain4j-spring-boot-starter/pom.xml b/langchain4j-spring-boot-starter/pom.xml index 7f505509e8..d62080519c 100644 --- a/langchain4j-spring-boot-starter/pom.xml +++ b/langchain4j-spring-boot-starter/pom.xml @@ -7,7 +7,7 @@ dev.langchain4j langchain4j-parent - 0.22.0 + 0.23.0 ../langchain4j-parent/pom.xml diff --git a/langchain4j-vertex-ai/pom.xml b/langchain4j-vertex-ai/pom.xml index 99f4f5c64f..69ec98d74a 100644 --- a/langchain4j-vertex-ai/pom.xml +++ b/langchain4j-vertex-ai/pom.xml @@ -7,7 +7,7 @@ dev.langchain4j langchain4j-parent - 0.22.0 + 0.23.0 ../langchain4j-parent/pom.xml diff --git a/langchain4j-vespa/pom.xml b/langchain4j-vespa/pom.xml index 1839808d3b..ba7b0c00b2 100644 --- a/langchain4j-vespa/pom.xml +++ b/langchain4j-vespa/pom.xml @@ -7,7 +7,7 @@ dev.langchain4j langchain4j-parent - 0.22.0 + 0.23.0 ../langchain4j-parent/pom.xml diff --git a/langchain4j-weaviate/pom.xml b/langchain4j-weaviate/pom.xml index 6afd4333c3..3007976599 100644 --- a/langchain4j-weaviate/pom.xml +++ b/langchain4j-weaviate/pom.xml @@ -7,7 +7,7 @@ dev.langchain4j langchain4j-parent - 0.22.0 + 0.23.0 ../langchain4j-parent/pom.xml diff --git a/langchain4j/pom.xml b/langchain4j/pom.xml index 4f82671d85..d0d41a402a 100644 --- a/langchain4j/pom.xml +++ b/langchain4j/pom.xml @@ -7,7 +7,7 @@ dev.langchain4j langchain4j-parent - 0.22.0 + 0.23.0 ../langchain4j-parent/pom.xml diff --git a/pom.xml b/pom.xml index e01c20b519..97450972b4 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ dev.langchain4j langchain4j-aggregator - 0.22.0 + 0.23.0 pom