Commit Graph

1453 Commits

Author SHA1 Message Date
GR
997e01ca6b Add support for QianFan AI models
- Add chat, embeddin and image models
- Tests
- Docs
2024-06-22 13:30:38 -04:00
Eddú Meléndez
db53166779 Add jlumbroso/free-disk-space action 2024-06-22 19:21:53 +02:00
ashni
810a18ee04 Update index.adoc 2024-06-22 15:21:26 +02:00
Christian Tzolov
797c7d349d Fix a merge bug in OpenSearchConfiguration#openSearchClient
Resolves #923
2024-06-22 14:40:24 +02:00
Christian Tzolov
f9f6247f7e AWS/Bedrock housekeeping updates
- upadate bedrockruntime version to 2.26.7 and align it with aws sdk dependecy.
 - minor ITs configuration, consistency and statbility fixes
   Use the EnvironmentVariableCredentialsProvider instead of the Profile credential provider.
 - update the Bedrock getting started documentation.
 - update the Genemi Prerequisites docs.
2024-06-22 12:22:10 +02:00
Eddú Meléndez
d276d17c1f Add AWS OpenSearch AutoConfiguration
Currently, in order to use an OpenSearch instance provided by AWS,
 additional steps are needed. This commit introduces the required
 configuration.

 Add new starter and update docs
2024-06-21 22:57:06 +02:00
Mark Pollack
84737ecc01 update some javadoc warnings 2024-06-21 16:29:15 -04:00
GR
f989dfe06e Update ZhiPuAi model support
- Added additional support for ZhiPuAi models including vision model GLM-4V
- Default model changed to GLM_4_Air and update documentation
- Added additional unit and integration tests
- Add documentation for vision model
2024-06-21 15:52:19 -04:00
GR
172c7f1a1a Add more models and tests for MiniMax AI Model 2024-06-21 15:30:57 -04:00
GR
d5b8123e60 Add support for Moonshot AI model
- Docs
- Tests
2024-06-21 15:23:54 -04:00
Christian Tzolov
ae76407f13 Add support for Anthropic Claude 3.5 Sonnet
- add support for the Anthropic API
 - add support for the Bedrok Anthropic API

 Related to #914
2024-06-21 19:14:19 +02:00
Christian Tzolov
dfa3ceb1ab GH-912: Add customizable logger advisor (#913)
* Add customizable logger advisor
* Address review comments
* Use the OutputCaptureExtension to verify the output text

 Resolves #912
2024-06-21 10:26:18 -04:00
Muthukumaran Navaneethakrishnan
f0ca61252b Add support for customizable PgVectorStore schema, table, and index names (#747)
This change allows users to specify custom names, facilitating management of multiple vector databases within a single database instance.

 Key changes:
 - Implement configurable schema, table, and index names for PgVectorStore
 - Add properties to set custom schema and table names
 - Introduce optional schema/table & field validation for custom configurations
 - Include additional tests for new configurations and existing deployments

 Additional improvements:
 - Rename properties to schemaName, tableName, and schemaValidation
 - Update pgvector documentation with new properties
 - Add schema/table name tests to PgVectorStoreAutoConfigurationIT and PgVectorStorePropertiesTests
 - Create standalone PgVectorSchemaValidator class for schema/table validation
 - Add missing 'CREATE SCHEMA IF NOT EXISTS' when initializeSchema=true
 - Remove redundant code and classes

 Resolves #747

Co-authored-by: Christian Tzolov <ctzolov@vmware.com>
2024-06-21 11:02:22 +02:00
geetrawat
067a33dbe2 Improved GemFire support
- Adds spring boot auto-configuration support for GemFireVectorStore
- Adds integration test GemFireVectorStoreAutoConfigurationIT
- Includes gemfire-testcontainers in integration tests
- Adds unit test GemFireVectorStorePropertiesTests
- Refactors GemFireVectorStore.java extracting GemFireVectorStoreConfig.java
- Renames spring-ai-gemfire to spring-ai-gemfire-store
- Adds GemFireConnectionDetails
- Adds GemFireVectorStoreProperties with default values
- Remove gemfire-release-repo maven repository

Co-authored-by: Louis Jacome <louis.jacome@broadcom.com>
Co-authored-by: Jason Huyn <jason.huynh@broadcom.com>
2024-06-20 17:17:13 -04:00
Craig Walls
58a30f7223 Fix formatting 2024-06-20 19:54:32 +02:00
Craig Walls
5cf41f5215 Fix FILTER_EXPRESSION typo 2024-06-20 19:54:32 +02:00
Mark Pollack
6bd3bca1d7 update contribution docs 2024-06-20 10:38:30 -04:00
Christian Tzolov
400d0d156c Add VertexAI Gemini system-instruction support
Resolves #906
2024-06-20 15:50:17 +02:00
luocq3
75d68662ae Change the Prompt's modelOptions() to return ChatOptions instead of ModelOptions. 2024-06-20 15:03:15 +02:00
Bill Lau
7d83ed63d1 Update openai-embeddings.adoc
fix base-url error in openai-embeddings.adoc
2024-06-20 09:20:59 +02:00
Eddú Meléndez
37c222a5f3 Add OpenSearch Service Connection support
Service Connection support for Docker Compose and Testcontainers.
2024-06-20 07:20:30 +02:00
Eddú Meléndez
5844f9bf39 Polish Qdrant tests
Use helper methods provided by Testcontainers.
2024-06-20 07:16:03 +02:00
Eddú Meléndez
5543643452 Polish OracleVectorStoreAutoConfiguration 2024-06-19 16:30:22 +02:00
Eddú Meléndez
ab29016282 Mark Docker Compose ConnectionDetailsFactory as non-public 2024-06-19 16:13:01 +02:00
Eddú Meléndez
8188f0e59a Support Qdrant's Api Key in Docker Compose and Testcontainers
Read `QDRANT__SERVICE__API_KEY` env var from compose file and
Testcontainers definition to configure the connection details for
Qdrant.
2024-06-19 16:11:21 +02:00
Eddú Meléndez
e4607a6c29 Support ChromaDB's CHROMA_SERVER_AUTHN_CREDENTIALS env var in Docker Compose and Testcontainers
Read `CHROMA_SERVER_AUTHN_CREDENTIALS` env var from compose file and
Testcontainers definition to configure the connection details for
ChromaDB.
2024-06-19 16:08:57 +02:00
Eddú Meléndez
b134a8d7ea Add support for redis/redis-stack image in Docker Compose
Currently, `redis/redis-stack-server` image is supported. This commit
introduces support for `redis/redis-stack`, which also contains Redis
Insight.
2024-06-19 16:06:01 +02:00
Eddú Meléndez
6ce998f9d3 Add support for Typesense Service Connection
Docker Compose and Testcontainers Service Connection support for
Typesense.
2024-06-19 15:59:49 +02:00
Christian Tzolov
16c531c36c Azure ITs adjustment: prove streaming does chunks the response content 2024-06-18 18:39:57 +02:00
Christian Tzolov
c81262d903 doc typos fix 2024-06-18 16:14:27 +02:00
Christian Tzolov
3cbda5acd8 Enable dynamic filter expressions for QuestionAnswerAdvisor
- Add FILTER_EXPRESSION advisor context parameter to update filter expressions per call/stream
 - Implement dynamic filter expression handling in QuestionAnswerAdvisor
 - Add unit tests for dynamic filter expression functionality
 - Update documentation with usage examples

 Resolves #887
2024-06-18 14:32:38 +02:00
Christian Tzolov
1fd43c84b3 Revert Weaviate to 4.5.1 because of grpc versions 2024-06-18 13:38:04 +02:00
Christian Tzolov
fda14846f3 update weaviate client from 4.5.1 to 4.7 2024-06-18 11:13:11 +02:00
Christian Tzolov
704a5319b1 Minor adoc fix 2024-06-18 09:58:21 +02:00
Christian Tzolov
b7475ed060 Update Weaviate docker version. remove import wildcard definitions 2024-06-18 09:33:30 +02:00
Christian Tzolov
2c7dc3d6f1 Pinecone: Add configurable content and distance metadata fields (#882)
- Add `withContentFieldName` and `withDistanceMetadataFieldName` to Pinecone Config Builder
 - Add `spring.ai.vectorstore.pinecone.contentFieldName` and `spring.ai.vectorstore.pinecone.distanceMetadataFieldName`
   properties to the auto-config
 - Default content field name: "document_content", distance field: "distance"
 - Update tests and docs

 Resolves #882
2024-06-18 07:57:15 +02:00
Laura Trotta
aca3720f5b ElasticSearch: remove redundant dependency and add note to docs. 2024-06-17 20:56:57 +02:00
Christian Tzolov
7fce4f47dd Exclude a duplicate (test) depedency 2024-06-17 20:00:45 +02:00
Stefan Vassilev
91a0b2a272 Add enabled property for OpenAI audio and transcription model
- Extend the audio speach/transcription properties to allow disabling autoconfiguration for the audio and transcription models.
   This makes the settings consistent across the different OpenAI client properties.
 - Add audio auto-conf activation tests

Co-authored-by: Christian Tzolov <ctzolov@vmware.com>
2024-06-17 16:42:12 +02:00
Lee-ChungMu
dfabcc7f61 Use List.of instead of Arrays.asList In the SEARCH_OUTPUT_FIELDS field.
The Arrays.asList method can change elements. SEARCH_OUTPUT_FIELDS is an immutable field, so it has been improved to util List.of.
2024-06-17 15:51:26 +02:00
Piotr Olaszewski
06ff651734 Remove duplicated ApiUtils and polish javadocs 2024-06-17 15:39:32 +02:00
Laura Trotta
78f3797f8d Update Elasticsearch Store: Use KNN insettad of script_score
- knn instead of script_score, removed initialization
 - only using normalized similarities, adjusted unit test
 - making l2norm's distances consistent with others
 - update dependency version and docs
 - upate autoconfigure ITs
2024-06-17 15:17:48 +02:00
Benoit Moussaud
c9dd336ea3 Add multimodality support for Azure OpenAI API
- update Azure OpenAI documentation.
 - add ITs
2024-06-17 14:06:27 +02:00
Christian Tzolov
958549ecce Rename all Embedding Client doc and variables occurrences into Embedding Model 2024-06-16 21:24:03 +02:00
Eddú Meléndez
704dec20d9 Chroma Vector Store: replace RestTemplate by RestClient
- replace RestTemplate by  RestClient but default to SimpleClientHttpRequestFactory as Chroma seems to have issues with HTTP2.
 - update the documentation.
 - update the ghcr.io/chroma-core/chroma version to 0.5.0. Fix the withBasicAuthCredentials.

Co-authored-by: Christian Tzolov <ctzolov@vmware.com>
2024-06-16 21:07:03 +02:00
Jemin Huh
46e47849ce Add OpenSearch vector store integration
- implement OpensSearchVectorStore
 - add opensearch auto-configuration and boot starter
 - add documentation for OpenSearch VectorStore
 - add bom dependecies
 - align with to new Spirng AI API
2024-06-16 12:43:09 +02:00
Eddú Meléndez
80a5f2f5b7 Remove property usage 2024-06-16 11:33:54 +02:00
Eddú Meléndez
1b7f597be2 Remove testcontainers.version property
Spring AI relies on spring boot 3.3.0 (providing Testcontainers 1.19.8).
The property is downgrading the version.
2024-06-16 11:33:54 +02:00
Eddú Meléndez
879f992394 Use Testcontainers Vector DBs modules in autoconfiguartion module 2024-06-15 21:50:35 +02:00
Christian Tzolov
476164b6e3 Move the vector expression converters from core to their projects 2024-06-15 20:24:29 +02:00