Skip to content

Latest commit

 

History

History
91 lines (65 loc) · 5.9 KB

CHANGELOG.md

File metadata and controls

91 lines (65 loc) · 5.9 KB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog and this project adheres to Semantic Versioning.

vNext

In this release the main features are optional persistence and an extended interface.

Added

  • Extended the interface:
    • DB.ListCollections() (PR #12)
    • DB.GetCollection() (PR #13 + #19)
    • DB.DeleteCollection() (PR #14)
    • DB.Reset() (PR #15)
    • DB.GetOrCreateCollection() (PR #22)
  • Added various unit tests (PR #20)
  • Added optional persistence! Via multiple PRs:

Improved

  • Improved example (PR #11)
  • Stop exporting Collection.Metadata (PR #16)
    • Goal: Prevent direct modifications which could cause data races in case of the user doing a modification while chromem-go for example ranges over it during a Collection.Query() call.
  • Copy metadata in constructors (PR #17)
    • Goal: Prevent direct modifications which could cause data races in case of the user doing a modification while chromem-go for example ranges over it.
  • Improved CI (PR #18)
    • Add Go 1.22 to test matrix, update used GitHub Action from v4 to v5, use race detector during tests
  • Reorganize code internally (PR #21)

Breaking changes

  • Because functions can't be (de-)serialized, GetCollection requires a new parameter of type EmbeddingFunc, in order to set the correct func when using a DB with persistence and it just loaded the collections and documents from storage. (PR #25)
  • Some methods now return an error (due to file operations when persistence is used)

v0.3.0 (2024-02-10)

Added

Improved

  • Improve concurrency when adding documents to collection (PR #2)
  • Rename Client to DB to better indicate that the database is embedded and there's no client-server separation (PR #3)
  • Change OpenAPI embedding model from "text-embedding-ada-002" to "text-embedding-3-small" (PR #4)
  • Allow custom base URL for OpenAI, enabling the use of Azure OpenAI, LiteLLM, ollama etc. (PR #7)
  • Renamed EmbeddingFunc constructors to follow best practice (PR #9)

Fixed

  • Don't allow nResults arg < 0 (PR #5)

Breaking changes

  • Several function names and signatures were changed in this release. This can happen as long as the version is at v0.x.y.

v0.2.0 (2024-01-01)

Added

  • Added GitHub Actions config (commit)
  • Added CHANGELOG.md (commit)
  • Exported embedding creation functions (commit)
  • Added Collection.AddConcurrently to add embeddings concurrently (commit)

Improved

  • Improved example code (commit)
  • Removed unused field in Client (commit)
  • Improved validation in Query method (commit)
  • Added and improved Godoc (commit)
  • Improved locking around a collection's documents (commit)
  • Removed dependency on third party library for OpenAI (commit)
  • Parallelized document querying (PR #1)

v0.1.0 (2023-12-29)

Initial release with a minimal Chroma-like interface and a working retrieval augmented generation (RAG) example.