Commit Graph

299 Commits

Author SHA1 Message Date
Christian Tzolov
b9844f9bf8 Improve AI concepts doc 2024-06-04 07:09:29 +02:00
Christian Tzolov
7cf3525f1a Few doc aligments with the new ChatClient API 2024-06-04 06:28:56 +02:00
Christian Tzolov
1758d561f6 docs improvments 2024-06-03 22:18:24 +02:00
Christian Tzolov
7c86fc7c89 Minor doc improvements 2024-06-03 22:10:34 +02:00
Christian Tzolov
19f3930737 Add doc concepts diagrams 2024-06-03 21:53:13 +02:00
blackbean99
77afc6028f update embeddings-api.jpg 2024-06-03 14:59:38 +02:00
Cameron Kirk
d44a9ad17b Update chatclient.adoc 2024-06-03 14:49:41 +02:00
Cameron Kirk
b0a02778b9 Update chatclient.adoc 2024-06-03 14:49:41 +02:00
Cameron Kirk
7f8822fdea Fix typo chatclient.adoc 2024-06-03 14:49:41 +02:00
Christian Tzolov
fa53e2afb3 Update Vertx AI PaLM2 deprecation information. 2024-05-31 16:45:10 +02:00
Mark Pollack
ac91302eed Next development version 2024-05-28 13:53:04 -04:00
Mark Pollack
0670575f3e Release version 1.0.0-M1 2024-05-28 13:49:11 -04:00
Mark Pollack
db1f3ea5d2 doc fixes 2024-05-27 23:35:44 -04:00
Mark Pollack
2b2cacce8c Add documentation for ChatClient and Evaluation 2024-05-27 23:04:12 -04:00
Benoit Moussaud
a30cc9d84d Add the support of Azure OpenAI image generation
* Add docs
2024-05-27 16:26:24 -04:00
Eddú Meléndez
9c1b1b84ee Add Docker Compose Service Connection
* For ChromaDB, Ollama, Qdrant, Redis, Weaviate
* Add docs
2024-05-26 23:28:44 -04:00
Mark Pollack
dc656ce3bc Update available OpenAI GPT 4 family of models in enum
* Use GPT 4 Turbo in OpenAiPromptTransformingChatServiceIT
* Accept multiple bike names as acceptable answers in assertion
* Update docs
2024-05-26 18:31:39 -04:00
Josh Long
2d43e40024 Add property to initialize schema for vector stores
* Default is fale
* Update docs
2024-05-26 00:31:19 -04:00
Alexander Hewer
c26d5f624c Added support for response format in chat options for Azure OpenAI
- Added new enum class AzureOpenAiResponseFormat
- Modified merge methods in AzureOpenAiChatModel to use new parameter
- Modfied AzureOpenAiChatOptions to include the responseFormat parameter
- Modified Azure ChatCompletionsOptionsTests to verify that new parameter is working as expected
- Added docs
2024-05-24 11:20:40 -04:00
Swapnil Jain
14a4fbefaf Update concepts.adoc documentation for clarity and accuracy (#762) 2024-05-24 11:06:46 -04:00
Christian Tzolov
5bcefae67c Minor docs improvements 2024-05-24 07:57:13 +02:00
Christian Tzolov
d6f4b71e1f Improve ChatClient API docs 2024-05-24 07:29:42 +02:00
Mark Pollack
a8fa1867d3 Partial ChatClient docs 2024-05-24 00:05:57 -04:00
Mark Pollack
4a2ad60059 Package refactoring
* Move ChatClient and related classes into the chat.client package
* Move ChatModel and related class into the chat.model package
* Smaller refactorings to remove DSM cycles
* Update README.md
2024-05-23 17:52:27 -04:00
Christian Tzolov
b3445b45f4 doc: improve the Spring AI landing page. 2024-05-23 12:44:15 +02:00
Josh Long
fbfc87e814 Refactoring of ChatClient to add fluent API and introduce Model as dependent object
* Rename the ModelClient class hierarchy into Model:
  - Rename ModelClient into Model. Update all code and doc references.
  - Rename ChatClient to ChatModel. Update all ChatClient suffixes and chatClient fields and variables in code and doc.
  - Rename EmbeddingClient into EmbeddingModel. Update the XxxEmbeddingClient class and variable suffixes and embeddingClient variables and fields in code and docs.
  - Rename ImageClient into ImageModel.
  - Rename SpeechClient into SpeechModel.
  - Rename TranscriptionClient into TranscriptionModel.
  - Update all javadocs and antora pages. Update the related diagrams.

* Create fluent API in ChatClient interface that now includes streaming support
* Add OpenAI FunctionCallbackWrapper2IT auto-config tests.
* Add ChatClientTest mockito testing.
* Add ChatModel#getDefaultOptions(), and remove @FunctionalInterface

* ChatModel enums extend the new ModelDescription interface.
* Implement fromOptions copy method in every ChatOptions implementation.
* Extend ChatClient to use the model default options if not provided explicitly.

* Update readme to provide guidance on how to adapt to breaking changes.

Co-authored-by: Christian Tzolov <ctzolov@vmware.com>
Co-authored-by: Mark Pollack <mpollack@vmware.com>
2024-05-22 16:07:12 -04:00
GR
99c3857788 Add Support for ZhiPu AI model
* See https://www.zhipuai.cn/
2024-05-20 20:20:29 -04:00
GR
6b674014ed Add support for the MiniMax Model
* See https://minimaxi.com/
2024-05-20 15:08:20 -04:00
Christian Tzolov
517df45cd8 Merge ParametrizedTypeReferenceBeanOutputConverter into BeanOutputConverter
Add ParametrizedTypeReference constructoers along the Clas<T> such.
  Convert the Class into ParametrizedTypeReference internally.
  Update tests and docs.
2024-05-18 04:50:20 +02:00
Christian Tzolov
3475f17e98 Unify the vector store module and pom names
spring-ai-qdrant -> spring-ai-qdrant-store
 spring-ai-cassandra -> spring-ai-cassandra-store
 spring-ai-pinecone -> spring-ai-pinecone-store
 spring-ai-redis -> spring-ai-redis-store
 spring-ai-qdrant -> spring-ai-qdrant-store
 spring-ai-gemfire -> spring-ai-gemfire-store
 spring-ai-azure-vector-store-spring-boot-starter -> spring-ai-azure-store-spring-boot-starter
 spring-ai-redis-spring-boot-starter -> spring-ai-redis-store-spring-boot-starter
2024-05-17 17:05:09 +02:00
Christian Tzolov
3ee04ed8da fix code style and missing dependency renaming 2024-05-17 15:31:58 +02:00
Christian Tzolov
14d620e2ca minor doc fix 2024-05-17 06:47:43 +02:00
Christian Tzolov
7887159e68 Improve Gemini antora documentation and fix broken links 2024-05-17 06:43:47 +02:00
Christian Tzolov
1b1daa7ee7 Add GEMINI_PRO_1_5_PRO and GEMINI_PRO_1_5_FLASH and update geminie maven BOM to 26.39.0
Also fix few Ollama docs and  code formatting issue.
2024-05-16 15:36:14 +02:00
Mark Pollack
fd9c98661d API refactoring
* Added more natural method names to DocumentReader, Transformer, Writer
* Changed Content getMedia to return Collection, deprecated use of List
* Change constructor for Media to accept URL and Resource, deprecate Object constructor
* Update ETL documentation and a few tests to avoid now deprecated APIs.
2024-05-16 12:53:13 +02:00
Christian Tzolov
db4f0b0aaf Add GPT-4o ITs and documentation updates 2024-05-14 21:12:39 +02:00
wmz7year
220ec7f631 AWS Bedrock Titan embedding model add amazon.titan-embed-text-v2:0 support. 2024-05-10 14:26:25 +02:00
Eddú Meléndez
5beef21a4e Expose QdrantClient and WeaviateClient as beans
Currently, `QdrantClient` and `WeaviateClient` are not exposed as
  beans. Having access to those would benefit to perform operations
  with an already configured client.

  - Deprecate  QdrantVectorStoreConfig.
  - Update Qdrant manual config adoc.
  - Improve Qdrant adoc.
  - Update Weaviate docs.
2024-05-10 15:15:14 +03:00
wmz7year
25f91c3297 Add AWS Bedrock Amazon Titan Text Premier model support 2024-05-10 10:54:10 +02:00
Christian Tzolov
f955fd7277 Fix code style and javadoc
- update spring boot to 3.2.5.
 - fix Content's JavaDoc.
 - remove wildcard java imports.
2024-05-09 15:54:19 +03:00
Mark Pollack
dfb8bf6a44 Add a new abstraction to simplify implementation of common ChatBot use cases
* Add ChatBot and basic DefaultChatBot
* Add streaming ChatBot support.
* Add Evaluator interface and RelevancyEvaluator implementation
* Add Content data type abstraction for Document and Message
* Renaming and package refactoring
* update .gitignore to allow node package name
* Add List<Media> to node and move ai.transformer package to ai.prompt.transformer
* Add Short/Long term memory support.
* Add mixing transformers support

Docs TBD
2024-05-08 15:14:50 -04:00
Christian Tzolov
a49a2d213f Replace the OutputParser by a StructuredOutputConverter API
- Old OutputParser, BeanOutputParser, ListOutputParser and MapOutputParser classes are depredated
   in favour of the new StructuredOutputConverter, BeanOutputConverter, ListOutputConverter and
   MapOutputConverter implementations.
   Later are drop-in replacements for the former ones, and provide the same functionality.
 - Keep the existing parser package and classes for backward compatibility.
 - Adjust the PromptTemplate for backward compatibility
 - Update all existing tests to use the new Structured Output API.
 - Improve the documentation for structured outputs.
2024-05-08 12:02:24 -04:00
Thomas Vitale
f91ccf0047 Ollama: Update APIs, Testcontainers, Documentation
Signed-off-by: Thomas Vitale <ThomasVitale@users.noreply.github.com>
2024-05-05 17:25:51 +03:00
samzhu
70c8c5a529 docs: Fix typo in PgVectorStore dimensions property 2024-05-05 09:15:36 +02:00
Jemin Huh
fe07bfdff6 Docs: Fix filter expression reference to Elasticsearch Query string query 2024-05-05 09:13:32 +02:00
Thomas Vitale
6e40575977 Docs: Fix typos and add missing pieces
Signed-off-by: Thomas Vitale <ThomasVitale@users.noreply.github.com>
2024-05-04 15:39:14 +02:00
Christian Tzolov
9f32a3ca9c Add doc waring about gemini pro model function calling function calling degradation 2024-04-30 14:34:53 +03:00
Christian Tzolov
4b532aee12 Improve Elasticsearch Vector DB documentation 2024-04-30 10:53:06 +03:00
wmz7year
f90c51a729 Improve ElasticsearchVectorStore,
- add index configuration and add support for ES response error handling.
 - rename dims to dimension propety.
 - add property javadocs
 - improve the elasticsearch javadoc.
2024-04-30 09:58:21 +03:00
Thomas Vitale
082c6f1f03 Docs: Fix typos in embedding documents
Signed-off-by: Thomas Vitale <ThomasVitale@users.noreply.github.com>
2024-04-30 06:52:52 +02:00