Commit Graph

634 Commits

Author SHA1 Message Date
Christian Tzolov
8796896158 Address some review comments 2024-04-26 14:12:56 +02:00
Christian Tzolov
3857b83cd1 fix content purging logic 2024-04-26 14:12:55 +02:00
Christian Tzolov
cb0743f40c Add Short/Long term memory agent support. Add streaming agent support. Add mixing transofmers support 2024-04-26 14:12:55 +02:00
Mark Pollack
d99629243c change Node to Content and move into model package. 2024-04-26 14:12:53 +02:00
Mark Pollack
f1829bb3bb add List<Media> to node and move ai.transformer package to ai.prompt.transformer 2024-04-26 14:12:52 +02:00
Mark Pollack
807517eb6d update .gitignore to allow node package name 2024-04-26 14:12:50 +02:00
Mark Pollack
177b06cca3 renaming and package refactoring 2024-04-26 14:12:50 +02:00
Mark Pollack
b3dc88f452 Add Evaluator 2024-04-26 14:12:49 +02:00
Mark Pollack
c981be0f5b Add ChatAgent and basic DefaultChatAgent 2024-04-26 14:12:49 +02:00
Mark Pollack
f26a6a4567 Add Node data type abstraction for Document and Message 2024-04-26 14:12:48 +02:00
Johnny Lim
a5923f5a79 Fix sample in "Manual Configuration" section of OpenAI Embeddings API 2024-04-26 13:35:33 +02:00
Dan Vega
6b9f8d3ac9 Implement a function, not functions 2024-04-26 13:34:38 +02:00
wmz7year
9e865f0b0f Add Bedrock Meta LLama3 AI model support.
- re-enable llama structured output tests
2024-04-25 16:22:47 +02:00
mck
b0add718a9 Fix CassandraVectorStoreAutoConfiguration's @ConditionalOnClass to not include EmbeddingClient
Any autoconfigure on an embeddingClient was unnecessarily creating the CassandraVectorStore bean, and possible prematurely.
2024-04-25 15:19:09 +02:00
jiacheo
9aa97b51a0 fix wrong document code examples 2024-04-25 14:38:51 +02:00
Shane Witbeck
b21427c3c6 Fix erroneous references to OpenAI 2024-04-25 14:37:58 +02:00
wmz7year
563f9b48af Bedrock client autoconfiguration support external AwsCredentialsProvider and AwsRegionProvider 2024-04-21 18:10:53 +08:00
Christian Tzolov
65e6880fa0 doc: add elasticsearch to nav catalog 2024-04-20 08:36:45 +02:00
Vincent Le
e9d7398811 Rewrite Elasticsearch documentation to follow Neo4J's format. 2024-04-20 08:30:27 +02:00
Vincent Le
9fbc09a5a4 Replace manual bean configuration with application.yml configuration. 2024-04-20 08:30:27 +02:00
Vincent Le
3b79a1a5c9 Add documentation for Elasticsearch VectorStore. 2024-04-20 08:30:27 +02:00
Philipp Hügelmeyer
8fa688fef6 Update qdrant.adoc
Fixed java code.
2024-04-20 08:19:02 +02:00
wmz7year
d3f2a8fb15 Fix bean name conflicts when using BedrockAnthropic and BedrockAnthropic3 at the same time. 2024-04-20 07:50:57 +02:00
wmz7year
8c04b05631 Add support for AWS bedrock claude3 opus model support 2024-04-20 07:47:26 +02:00
omar.mahamid
6178b3dcc4 Fix CassandraVectorStoreConfig logger name
aligne logger name with the className
2024-04-20 07:40:01 +02:00
Christian Tzolov
be6081f08e fix: rename call to stream 2024-04-20 07:23:00 +02:00
Christian Tzolov
2cdd9b5138 Add (Streaming)ChatClient convinience defaults
Facilitates the creation of multimodal message queries.
2024-04-20 07:05:21 +02:00
Christian Tzolov
df92dff36a Fix OpenAI audio options merging order
Resolves #601
2024-04-19 18:43:47 +02:00
mck
0eaf7d05c9 Cassandra Vector Store initial impl follow up
- add concurrency to store.add(..) (bc embeddingClient is slow)
- CassandraVectorStoreAutoConfiguration uses CassandraAutoConfiguration
- driver profiles for production stability+performance,
- small cleanups and naming fixes,
- main doc tidy-up
- astradb compatibility (protocol V4)
– don't create embeddings again for documents that already have them
  similar to https://github.com/spring-projects/spring-ai/pull/413
2024-04-19 18:13:11 +02:00
Christian Tzolov
f698902d38 doc: Add top page about API multimodality suppot
Resolves #573
2024-04-19 11:11:47 +02:00
Mark Pollack
4230038b28 Remove unused ChatMessage class 2024-04-17 10:54:29 -04:00
Christian Tzolov
b8ca0bb876 doc: Improve Pinecone layout 2024-04-12 11:05:02 +02:00
Christian Tzolov
6c07c4cf8f doc:improve pgvector layout 2024-04-12 10:41:43 +02:00
Philipp Zehnder
d4f866ed3a Update documentation for azure open ai chat 2024-04-12 08:58:44 +02:00
omar.mahamid
bc7460b540 Update contribution-guidelines.adoc
fix broken link
2024-04-12 08:57:31 +02:00
Christian Tzolov
a0e20016a7 doc: Improve Chroma documentation 2024-04-12 08:56:13 +02:00
Christian Tzolov
c7512a00a7 Redis store: add default index and prefix values for auto-conf 2024-04-12 08:14:59 +02:00
Christian Tzolov
b82dd98985 doc: Fix Redis metdata section 2024-04-11 23:26:37 +02:00
Christian Tzolov
154fc1fb57 doc: Improve Redis Vector Store documentation 2024-04-11 23:18:58 +02:00
Christian Tzolov
abd9e327aa Add s.ai.openai.embedding.options.dimensions documentation 2024-04-11 14:42:40 +02:00
dperezcabrera
c26bc55713 Refactor filter expression for clarity and accuracy
The filter expression within the document handling logic has been updated to enhance clarity and ensure accurate author filtering. Previously, the `in` function mistakenly included names as direct arguments, potentially leading to ambiguity in filter application. This has been corrected by explicitly specifying the `author` field, ensuring the filter accurately applies to author names only. This change improves the maintainability and readability of the code, particularly in sections dealing with article filtering based on authorship and type.

- Correct the filter expression by explicitly specifying the `author` field.
- Ensure accurate and unambiguous author filtering in article management.
2024-04-11 10:20:32 +02:00
Christian Tzolov
754dab9e50 Add minimal (placeholder) MongoDB Atlas Vector Serach docs. 2024-04-10 17:56:39 +02:00
Eddú Meléndez
eea3801fbd Remove @Testcontainers from HanaDB Tests
HanaDB tests don't rely on Testcontainers.
2024-04-10 17:31:28 +02:00
mck
656d238285 Implement Apache Cassandra vector store
The CassandraVectorStore is for managing and querying vector data in an Apache Cassandra db.
  It offers functionalities like adding, deleting, and performing similarity searches on documents.

  The store utilizes CQL to index and search vector data. It allows for custom metadata fields in
  the documents to be stored alongside the vector and content data.

  This class requires a CassandraVectorStoreConfig configuration object for initialization, which
  includes settings like connection details, index name, field names, etc. It also requires an
  EmbeddingClient to convert documents into embeddings before storing them.

  A schema matching the configuration is automatically created if it doesn't exist. Missing columns
  and indexes in existing tables will also be automatically created. Disable this with the disallowSchemaCreation.

  This class is designed to work with brand new tables that it creates for you, or on top of existing
  Cassandra tables. The latter is appropriate when wanting to keep data in place, creating embeddings
  next to it, and performing vector similarity searches in-situ.

  Instances of this class are not dynamic against server-side schema changes. If you change the schema
  server-side you need a new CassandraVectorStore instance.

 - Add auto-configure with tests.
 - reformat code style
 - Change field terminology to column (as appropriate for cassandra and cql)
 - Add doc page with an advanced example.
 - Add the dependencies to Spring AI BOM
 – add to `AutoConfiguration.imports`

 - Add @since annotation
 - Fix javadoc issue
 - Streamline the adoc content and layout
2024-04-10 16:51:47 +02:00
David Pérez Cabrera
fef1a42d20 Refactor filter expression for clarity and accuracy
The filter expression within the document handling logic has been updated to enhance clarity and ensure accurate author filtering. Previously, the `in` function mistakenly included names as direct arguments, potentially leading to ambiguity in filter application. This has been corrected by explicitly specifying the `author` field, ensuring the filter accurately applies to author names only. This change improves the maintainability and readability of the code, particularly in sections dealing with article filtering based on authorship and type.

- Correct the filter expression by explicitly specifying the `author` field.
- Ensure accurate and unambiguous author filtering in article management.
2024-04-10 13:13:01 +02:00
Christian Tzolov
ae9d3f4168 Updgrade Vertex AI Gemini to 26.37.0
- Adjust to the new, breaking, API changes.
   - Update the docs adding the transport endpoint and scopes to the connection properties.
2024-04-10 09:09:58 +02:00
Christian Tzolov
0b04c8928a Update vector-stores README links 2024-04-09 20:55:39 +02:00
Christian Tzolov
55b8b2a858 Update models README links
Resolves #528
2024-04-09 20:38:06 +02:00
Rahul
466b824840 Add SAP HanaDB vector store integration
- Implement a HanaCloudVectorStore and tests
 - Implement Autoconfiguraiton + properties
 - Add boot starter
 - Update BOM with vector store and boot dependencies.
 - Add antora docuementation
 - added junit for HanaCloudVectorStoreProperties.java and documentation
   to create a BTP trial account and provision an instance for SAP Hana Cloud db
 - updated license, formatting and javadoc
 - IT for HanaCloudVectorStoreAutoConfiguration
 - IT for HanaCloudVectorStoreAutoConfiguration

Additional
 - add @AutoConfiguration(after = { JpaRepositoriesAutoConfiguration.class })
 - update the handa docs structure.
2024-04-09 12:36:42 +02:00
Christian Tzolov
8e0fbe49ee Remove the spring-boot-starter-jdbc dependency from PGVector project 2024-04-09 10:57:17 +02:00