- Added a llama-pack for KodaRetriever, for on-the-fly alpha tuning (#11311)
- Added support for
mistral-large
(#11398) - Last token pooling mode for huggingface embeddings models like SFR-Embedding-Mistral (#11373)
- Added fsspec support to SimpleDirectoryReader (#11303)
- Fixed an issue with context window + prompt helper (#11379)
- Moved OpenSearch vector store to BasePydanticVectorStore (#11400)
- Fixed function calling in fireworks LLM (#11363)
- Made cohere embedding types more automatic (#11288)
- Improve function calling in react agent (#11280)
- Fixed MockLLM imports (#11376)
- Added
llama-index-postprocessor-colbert-rerank
package (#11057) MyMagicAI
LLM (#11263)MariaTalk
LLM (#10925)- Add retries to github reader (#10980)
- Added FireworksAI embedding and LLM modules (#10959)
- Fixed string formatting in weaviate (#11294)
- Fixed off-by-one error in semantic splitter (#11295)
- Fixed
download_llama_pack
for multiple files (#11272) - Removed
BUILD
files from packages (#11267) - Loosened python version reqs for all packages (#11267)
- Fixed args issue with chromadb (#11104)
- Fixed multi-modal LLM for async acomplete (#11064)
- Fixed issue with llamaindex-cli imports (#11068)
I'm still a bit wonky with our publishing process -- apologies. This is just a version bump to ensure the changes that were supposed to happen in 0.10.9 actually did get published. (AF)
- add llama-index-cli dependency
- Added Self-Discover llamapack (#10951)
- Fixed linting in CICD (#10945)
- Fixed using remote graph stores (#10971)
- Added missing LLM kwarg in NoText response synthesizer (#10971)
- Fixed openai import in rankgpt (#10971)
- Fixed resolving model name to string in openai embeddings (#10971)
- Off by one error in sentence window node parser (#10971)
First, apologies for missing the changelog the last few versions. Trying to figure out the best process with 400+ packages.
At some point, each package will have a dedicated changelog.
But for now, onto the "master" changelog.
- Added
NomicHFEmbedding
(#10762) - Added
MinioReader
(#10744)
- Various fixes for clickhouse vector store (#10799)
- Fix index name in neo4j vector store (#10749)
- Fixes to sagemaker embeddings (#10778)
- Fixed performance issues when splitting nodes (#10766)
- Fix non-float values in reranker + b25 (#10930)
- OpenAI-agent should be a dep of openai program (#10930)
- Add missing shortcut imports for query pipeline components (#10930)
- Fix NLTK and tiktoken not being bundled properly with core (#10930)
- Add back
llama_index.core.__version__
(#10930)
- Fixed passing in LLM to
as_chat_engine
(#10605) - Fixed system prompt formatting for anthropic (#10603)
- Fixed elasticsearch vector store error on
__version__
(#10656) - Fixed import on openai pydantic program (#10657)
- Added client back to opensearch vector store exports (#10660)
- Fixed bug in SimpleDirectoryReader not using file loaders properly (#10655)
- Added lazy LLM initialization to RankGPT (#10648)
- Fixed bedrock embedding
from_credentials
passing ing the model name (#10640) - Added back recent changes to TelegramReader (#10625)
- Several changes are introduced. See the full blog post for complete details.
- Add back deprecated API for BedrockEmbdding (#10581)
Last patch before v0.10!
- add conditional links to query pipeline (#10520)
- refactor conditional links + add to cookbook (#10544)
- agent + query pipeline cleanups (#10563)
- Add sleep to fix lag in chat stream (#10339)
- OllamaMultiModal kwargs (#10541)
- Update Ingestion Pipeline to handle empty documents (#10543)
- Fixing minor spelling error (#10516)
- fix elasticsearch async check (#10549)
- Docs/update slack demo colab (#10534)
- Adding the possibility to use the IN operator for PGVectorStore (#10547)
- fix agent reset (#10562)
- Fix MD duplicated Node id from multiple docs (#10564)
- Update pooling strategy for embedding models (#10536)
- Add Multimodal Video RAG example (#10530)
- Add SECURITY.md (#10531)
- Move agent module guide up one-level (#10519)
- Deeplake fixes (#10529)
- Add Cohere section for llamaindex (#10523)
- Fix md element (#10510)
- Upgraded deeplake vector database to use BasePydanticVectorStore (#10504)
- Fix MD parser for inconsistency tables (#10488)
- Fix ImportError for pypdf in MetadataExtractionSEC.ipynb (#10491)
- Refactor: add AgentRunner.from_llm method (#10452)
- Support custom prompt formatting for non-chat LLMS (#10466)
- Bump cryptography from 41.0.7 to 42.0.0 (#10467)
- Add persist and load method for Colbert Index (#10477)
- Allow custom agent to take in user inputs (#10450)
- remove exporter from arize-phoenix global callback handler (#10465)
- Fixing Dashscope qwen llm bug (#10471)
- Fix: calling AWS Bedrock models (#10443)
- Update Azure AI Search (fka Azure Cognitive Search) vector store integration to latest client SDK 11.4.0 stable + updating jupyter notebook sample (#10416)
- fix some imports (#10485)
- ollama vision cookbook (#10438)
- Support Gemini "transport" configuration (#10457)
- Add Upstash Vector (#10451)
- Add multi-modal ollama (#10434)
- update base class for astradb (#10435)
- Add Async support for Base nodes parser (#10418)
- Add support for
gpt-3.5-turbo-0125
(#10412) - Added
create-llama
support to rag cli (#10405)
- Fixed minor bugs in lance-db vector store (#10404)
- Fixed streaming bug in ollama (#10407)
- Nomic Embedding (#10388)
- Dashvector support sparse vector (#10386)
- Table QA with MarkDownParser and Benchmarking (#10382)
- Simple web page reader (#10395)
- fix full node content in KeywordExtractor (#10398)
- Improve and fix bugs for MarkdownElementNodeParser (#10340)
- Fixed and improve Perplexity support for new models (#10319)
- Ensure system_prompt is passed to Perplexity LLM (#10326)
- Extended BaseRetrievalEvaluator to include an optional PostProcessor (#10321)
- Support for new GPT Turbo Models (#10291)
- Support Multiple docs for Sentence Transformer Fine tuning(#10297)
- Marvin imports fixed (#9864)
- Support for new OpenAI v3 embedding models (#10279)
- Extra checks on sparse embeddings for qdrant (#10275)
- Added a RAG CLI utility (#10193)
- Added a textai vector store (#10240)
- Added a Postgresql based docstore and index store (#10233)
- specify tool spec in tool specs (#10263)
- Fixed serialization error in ollama chat (#10230)
- Added missing fields to
SentenceTransformerRerank
(#10225) - Fixed title extraction (#10209, #10226)
- nit: make chainable output parser more exposed in library/docs (#10262)
- 🐛 summary index not carrying over excluded metadata keys (#10259)
- Added support for
SageMakerEmbedding
(#10207)
- Fix duplicated
file_id
on openai assistant (#10223) - Fix circular dependencies for programs (#10222)
- Run
TitleExtractor
on groups of nodes from the same parent document (#10209) - Improve vectara auto-retrieval (#10195)
beautifulsoup4
dependency to new optional extrahtml
(#10156)- make
BaseNode.hash
an@property
(#10163) - Neutrino (#10150)
- feat: JSONalyze Query Engine (#10067)
- [wip] add custom hybrid retriever notebook (#10164)
- add from_collection method to ChromaVectorStore class (#10167)
- CLI experiment v0: ask (#10168)
- make react agent prompts more editable (#10154)
- Add agent query pipeline (#10180)
- Update supabase vecs metadata filter function to support multiple fields (#10133)
- Bugfix/code improvement for LanceDB integration (#10144)
beautifulsoup4
optional dependency (#10156)- Fix qdrant aquery hybrid search (#10159)
- make hash a @property (#10163)
- fix: bug on poetry install of llama-index[postgres] (#10171)
- [doc] update jaguar vector store documentation (#10179)
- Remove use of not-launched finish_message (#10188)
- Updates to Lantern vector stores docs (#10192)
- fix typo in multi_document_agents.ipynb (#10196)
- Added SageMakerEndpointLLM (#10140)
- Added support for Qdrant filters (#10136)
- Update bedrock utils for Claude 2:1 (#10139)
- BugFix: deadlocks using multiprocessing (#10125)
- Added RankGPT as a postprocessor (#10054)
- Ensure backwards compatibility with new Pinecone client version bifucation (#9995)
- Recursive retriever all the things (#10019)
- BugFix: When using markdown element parser on a table containing comma (#9926)
- extend auto-retrieval notebook (#10065)
- Updated the Attribute name in llm_generators (#10070)
- jaguar vector store add text_tag to add_kwargs in add() (#10057)
- added query-time row retrieval + fix nits with query pipeline over structured data (#10061)
- ReActive Agents w/ Context + updated stale link (#10058)
- Added selectors and routers to query pipeline (#9979)
- Added sparse-only search to qdrant vector store (#10041)
- Added Tonic evaluators (#10000)
- Adding async support to firestore docstore (#9983)
- Implement mongodb docstore
put_all
method (#10014)
- Properly truncate sql results based on
max_string_length
(#10015) - Fixed
node.resolve_image()
for base64 strings (#10026) - Fixed cohere system prompt role (#10020)
- Remove redundant token counting operation in SentenceSplitter (#10053)
- Implements a Node Parser using embeddings for Semantic Splitting (#9988)
- Add Anyscale Embedding model support (#9470)
- nit: fix pandas get prompt (#10001)
- Fix: Token counting bug (#9912)
- Bump jinja2 from 3.1.2 to 3.1.3 (#9997)
- Fix corner case for qdrant hybrid search (#9993)
- Bugfix: sphinx generation errors (#9944)
- Fix:
language
used before assignment inCodeSplitter
(#9987) - fix inconsistent name "text_parser" in section "Use a Text Splitter… (#9980)
- 🐛 fixing batch size (#9982)
- add auto-async execution to query pipelines (#9967)
- 🐛 fixing init (#9977)
- Parallel Loading with SimpleDirectoryReader (#9965)
- do not force delete an index in milvus (#9974)
- Added support for together.ai models (#9962)
- Added support for batch redis/firestore kvstores, async firestore kvstore (#9827)
- Parallelize
IngestionPipeline.run()
(#9920) - Added new query pipeline components: function, argpack, kwargpack (#9952)
- Updated optional langchain imports to avoid warnings (#9964)
- Raise an error if empty nodes are embedded (#9953)
- Added support for Nvidia TenorRT LLM (#9842)
- Allow
tool_choice
to be set during agent construction (#9924) - Added streaming support for
QueryPipeline
(#9919)
- Set consistent doc-ids for llama-index readers (#9923, #9916)
- Remove unneeded model inputs for HuggingFaceEmbedding (#9922)
- Propagate
tool_choice
flag to downstream APIs (#9901) - Add
chat_store_key
to chat memoryfrom_defaults()
(#9928)
- add query pipeline (#9908)
- Feature: Azure Multi Modal (fixes: #9471) (#9843)
- add postgres docker (#9906)
- Vectara auto_retriever (#9865)
- Redis Chat Store support (#9880)
- move more classes to core (#9871)
- Propagate
tool_choice
flag to downstream APIs (#9901) - filter out negative indexes from faiss query (#9907)
- added NE filter for qdrant payloads (#9897)
- Fix incorrect id assignment in MyScale query result (#9900)
- Qdrant Text Match Filter (#9895)
- Fusion top k for hybrid search (#9894)
- Fix (#9867) sync_to_async to avoid blocking during asynchronous calls (#9869)
- A single node passed into compute_scores returns as a float (#9866)
- Remove extra linting steps (#9878)
- add vectara links (#9886)
- Added a
BaseChatStore
andSimpleChatStore
abstraction for dedicated chat memory storage (#9863) - Enable custom
tree_sitter
parser to be passed intoCodeSplitter
(#9845) - Created a
BaseAutoRetriever
base class, to allow other retrievers to extend to auto modes (#9846) - Added support for Nvidia Triton LLM (#9488)
- Added
DeepEval
one-click observability (#9801)
- Updated the guidance integration to work with the latest version (#9830)
- Made text storage optional for doctores/ingestion pipeline (#9847)
- Added missing
sphinx-automodapi
dependency for docs (#9852) - Return actual node ids in weaviate query results (#9854)
- Added prompt formatting to LangChainLLM (#9844)
- Added concurrancy limits for dataset generation (#9779)
- New
deepeval
one-click observability handler (#9801) - Added jaguar vector store (#9754)
- Add beta multimodal ReAct agent (#9807)
- Changed default batch size for OpenAI embeddings to 100 (#9805)
- Use batch size properly for qdrant upserts (#9814)
_verify_source_safety
uses AST, not regexes, for proper safety checks (#9789)- use provided LLM in element node parsers (#9776)
- updated legacy vectordb loading function to be more robust (#9773)
- Use provided http client in AzureOpenAI (#9772)
- Add reranker for BEIR evaluation (#9743)
- Add Pathway integration. (#9719)
- custom agents implementation + notebook (#9746)
- fix beam search for vllm: add missing parameter (#9741)
- Fix alpha for hrbrid search (#9742)
- fix token counter (#9744)
- BM25 tokenizer lowercase (#9745)
- docs: fixes qdrant_hybrid.ipynb typos (#9729)
- make llm completion program more general (#9731)
- Refactor MM Vector store and Index for empty collection (#9717)
- Adding IF statement to check for Schema using "Select" (#9712)
- allow skipping module loading in
download_module
anddownload_llama_pack
(#9734)
- Added
.iter_data()
method toSimpleDirectoryReader
(#9658) - Added async support to
Ollama
LLM (#9689) - Expanding pinecone filter support for
in
andnot in
(#9683)
- Improve BM25Retriever performance (#9675)
- Improved qdrant hybrid search error handling (#9707)
- Fixed
None
handling inChromaVectorStore
(#9697) - Fixed postgres schema creation if not existing (#9712)
- Added zilliz cloud as a managed index (#9605)
- Bedrock client and LLM fixes (#9671, #9646)
- Added
insert_batch_size
to limit number of embeddings held in memory when creating an index, defaults to 2048 (#9630) - Improve auto-retrieval (#9647)
- Configurable Node ID Generating Function (#9574)
- Introduced action input parser (#9575)
- qdrant sparse vector support (#9644)
- Introduced upserts and delete in ingestion pipeline (#9643)
- Add Zilliz Cloud Pipeline as a Managed Index (#9605)
- Add support for Google Gemini models via VertexAI (#9624)
- support allowing additional metadata filters on autoretriever (#9662)
- Fix pip install commands in LM Format Enforcer notebooks (#9648)
- Fixing some more links and documentations (#9633)
- some bedrock nits and fixes (#9646)
- new llama datasets
LabelledEvaluatorDataset
&LabelledPairwiseEvaluatorDataset
(#9531)
- multi-doc auto-retrieval guide (#9631)
- fix(vllm): make Vllm's 'complete' method behave the same as other LLM class (#9634)
- FIx Doc links and other documentation issue (#9632)
- [example] adding user feedback (#9601)
- FEATURE: Cohere ReRank Relevancy Metric for Retrieval Eval (#9495)
- Fix Gemini Chat Mode (#9599)
- Fixed
types-protobuf
from being a primary dependency (#9595) - Adding an optional auth token to the TextEmbeddingInference class (#9606)
- fix: out of index get latest tool call (#9608)
- fix(azure_openai.py): add missing return to subclass override (#9598)
- fix mix up b/w 'formatted' and 'format' params for ollama api call (#9594)
- agent refactor: step-wise execution (#9584)
- Add OpenRouter, with Mixtral demo (#9464)
- Add hybrid search to neo4j vector store (#9530)
- Add support for auth service accounts for Google Semantic Retriever (#9545)
- Fixed missing
default=None
forLLM.system_prompt
(#9504) - Fix #9580 : Incorporate metadata properly (#9582)
- Integrations: Gradient[Embeddings,LLM] - sdk-upgrade (#9528)
- Add mixtral 8x7b model to anyscale available models (#9573)
- Gemini Model Checks (#9563)
- Update OpenAI fine-tuning with latest changes (#9564)
- fix/Reintroduce
WHERE
filter to the Sparse Query for PgVectorStore (#9529) - Update Ollama API to ollama v0.1.16 (#9558)
- ollama: strip invalid
formatted
option (#9555) - add a device in optimum push #9541 (#9554)
- Title vs content difference for Gemini Embedding (#9547)
- fix pydantic fields to float (#9542)
- Added full support for Google Gemini text+vision models (#9452)
- Added new Google Semantic Retriever (#9440)
- added
from_existing()
method + async support to OpenAI assistants (#9367)
- Fixed huggingface LLM system prompt and messages to prompt (#9463)
- Fixed ollama additional kwargs usage (#9455)
- Add MistralAI LLM (#9444)
- Add MistralAI Embeddings (#9441)
- Add
Ollama
Embedding class (#9341) - Add
FlagEmbeddingReranker
for reranking (#9285) - feat: PgVectorStore support advanced metadata filtering (#9377)
- Added
sql_only
parameter to SQL query engines to avoid executing SQL (#9422)
- Feat/PgVector Support custom hnsw.ef_search and ivfflat.probes (#9420)
- fix F1 score definition, update copyright year (#9424)
- Change more than one image input for Replicate Multi-modal models from error to warning (#9360)
- Removed GPT-Licensed
aiostream
dependency (#9403) - Fix result of BedrockEmbedding with Cohere model (#9396)
- Only capture valid tool names in react agent (#9412)
- Fixed
top_k
being multiplied by 10 in azure cosmos (#9438) - Fixed hybrid search for OpenSearch (#9430)
- Updated the base
LLM
interface to matchLLMPredictor
(#9388) - Deprecated
LLMPredictor
(#9388)
- Added batch prediction support for
LabelledRagDataset
(#9332)
- Fixed save and load for faiss vector store (#9330)
- Added an option
reuse_client
to openai/azure to help with async timeouts. Set toFalse
to see improvements (#9301) - Added support for
vLLM
llm (#9257) - Add support for python 3.12 (#9304)
- Support for
claude-2.1
model name (#9275)
- Fix embedding format for bedrock cohere embeddings (#9265)
- Use
delete_kwargs
for filtering in weaviate vector store (#9300) - Fixed automatic qdrant client construction (#9267)
- Make
reference_contexts
optional inLabelledRagDataset
(#9266) - Re-organize
download
module (#9253) - Added document management to ingestion pipeline (#9135)
- Add docs for
LabelledRagDataset
(#9228) - Add submission template notebook and other doc updates for
LabelledRagDataset
(#9273)
- Convert numpy to list for
InstructorEmbedding
(#9255)
- Advanced Metadata filter for vector stores (#9216)
- Amazon Bedrock Embeddings New models (#9222)
- Added PromptLayer callback integration (#9190)
- Reuse file ids for
OpenAIAssistant
(#9125)
- Deprecate ExactMatchFilter (#9216)
- Add new abstractions for
LlamaDataset
's (#9165) - Add metadata filtering and MMR mode support for
AstraDBVectorStore
(#9193) - Allowing newest
scikit-learn
versions (#9213)
- Added
LocalAI
demo and began deprecation cycle (#9151) - Deprecate
QueryResponseDataset
andDatasetGenerator
ofevaluation
module (#9165)
- Fix bug in
download_utils.py
with pointing to wrong repo (#9215) - Use
azure_deployment
kwarg inAzureOpenAILLM
(#9174) - Fix similarity score return for
AstraDBVectorStore
Integration (#9193)
- Add
persist
andpersist_from_dir
methods toObjectIndex
that are able to support it (#9064) - Added async metadata extraction + pipeline support (#9121)
- Added back support for start/end char idx in nodes (#9143)
- Fix for some kwargs not being set properly in global service context (#9137)
- Small fix for
memory.get()
when system/prefix messages are large (#9149) - Minor fixes for global service context (#9137)
- Add support for
PGVectoRsStore
(#9087) - Enforcing
requests>=2.31
for security, while unpinningurllib3
(#9108)
- Increased default memory token limit for context chat engine (#9123)
- Added system prompt to
CondensePlusContextChatEngine
that gets prepended to thecontext_prompt
(#9123) - Fixed bug in
CondensePlusContextChatEngine
not using chat history properly (#9129)
- Added
default_headers
argument to openai LLMs (#9090) - Added support for
download_llama_pack()
and LlamaPack integrations - Added support for
llamaindex-cli
command line tool
- store normalize as bool for huggingface embedding (#9089)
- Fixed bug with AzureOpenAI logic for inferring if stream chunk is a tool call (#9018)
FastEmbed
embeddings provider (#9043)- More precise testing of
OpenAILike
(#9026) - Added callback manager to each retriever (#8871)
- Ability to bypass
max_tokens
inference withOpenAILike
(#9032)
- Fixed bug in formatting chat prompt templates when estimating chunk sizes (#9025)
- Sandboxed Pandas execution, remediate CVE-2023-39662 (#8890)
- Restored
mypy
for Python 3.8 (#9031) - Loosened
dataclasses-json
version range, and removes unnecessaryjinja2
extra frompandas
(#9042)
- Added
CondensePlusContextChatEngine
(#8949)
- Fixed bug with
OpenAIAgent
inserting errors into chat history (#9000) - Fixed various bugs with LiteLLM and the new OpenAI client (#9003)
- Added context window attribute to perplexity llm (#9012)
- Add
node_parser
attribute back to service context (#9013) - Refactor MM retriever classes (#8998)
- Fix TextNode instantiation on SupabaseVectorIndexDemo (#8994)
- Add perplexity LLM integration (#8734)
- Fix token counting for new openai client (#8981)
- Fix small pydantic bug in postgres vector db (#8962)
- Fixed
chunk_overlap
anddoc_id
bugs inHierarchicalNodeParser
(#8983)
- Added new notebook guide for Multi-Modal Rag Evaluation (#8945)
- Added
MultiModalRelevancyEvaluator
, andMultiModalFaithfulnessEvaluator
(#8945)
- Added Cohere Reranker fine-tuning (#8859)
- Support for custom httpx client in
AzureOpenAI
LLM (#8920)
- Fixed issue with
set_global_service_context
not propagating settings (#8940) - Fixed issue with building index with Google Palm embeddings (#8936)
- Fixed small issue with parsing ImageDocuments/Nodes that have no text (#8938)
- Fixed issue with large data inserts in Astra DB (#8937)
- Optimize
QueryEngineTool
for agents (#8933)
- New
IngestionPipeline
concept for ingesting and transforming data - Data ingestion and transforms are now automatically cached
- Updated interface for node parsing/text splitting/metadata extraction modules
- Changes to the default tokenizer, as well as customizing the tokenizer
- Packaging/Installation changes with PyPi (reduced bloat, new install options)
- More predictable and consistent import paths
- Plus, in beta: MultiModal RAG Modules for handling text and images!
- Find more details at:
https://medium.com/@llama_index/719f03282945
- Increase max weaivate delete size to max of 10,000 (#8887)
- Final pickling remnant fix (#8902)
- Fixed bug in loading pickled objects (#8880)
- Fix
custom_path
vscustom_dir
indownload_loader
(#8865)
- openai assistant agent + advanced retrieval cookbook (#8863)
- add retrieval API benchmark (#8850)
- Add JinaEmbedding class (#8704)
- Improved default timeouts/retries for OpenAI (#8819)
- Add back key validation for OpenAI (#8819)
- Disable automatic LLM/Embedding model downloads, give informative error (#8819)
- fix openai assistant tool creation + retrieval notebook (#8862)
- Quick fix Replicate MultiModal example (#8861)
- fix: paths treated as hidden (#8860)
- fix Replicate multi-modal LLM + notebook (#8854)
- Feature/citation metadata (#8722)
- Fix ImageNode type from NodeWithScore for SimpleMultiModalQueryEngine (#8844)
- Advanced Multi Modal Retrieval Example and docs (#8822, #8823)
- Fix retriever node postprocessors for
CitationQueryEngine
(#8818) - Fix
cannot pickle 'builtins.CoreBPE' object
in most scenarios (#8835)
- Support parallel function calling with new OpenAI client in
OpenAIPydanticProgram
(#8793)
- Fix bug in pydantic programs with new OpenAI client (#8793)
- Fixed bug with un-listable fsspec objects (#8795)
OpenAIAgent
parallel function calling (#8738)
- Properly supporting Hugging Face recommended model (#8784)
- Fixed missing import for
embeddings.__all__
(#8779)
- Use
tool_choice
overfunction_call
andtool
overfunctions
inOpenAI(LLM)
(#8738) - Deprecate
to_openai_function
in favor ofto_openai_tool
(#8738)
OpenAIAgent
parallel function calling (#8738)- Add AI assistant agent (#8735)
- OpenAI GPT4v Abstraction (#8719)
- Add support for
Lantern
VectorStore (#8714)
- Fix returning zero nodes in elastic search vector store (#8746)
- Add try/except for
SimpleDirectoryReader
loop to avoid crashing on a single document (#8744) - Fix for
deployment_name
in async embeddings (#8748)
- added native sync and async client support for the lasted
openai
client package (#8712) - added support for
AzureOpenAIEmbedding
(#8712)
- Fixed errors about "no host supplied" with
download_loader
(#8723)
OpenAIEmbedding
no longer supports azure, moved into theAzureOpenAIEmbedding
class (#8712)
- add new devday models (#8713)
- moved
max_docs
parameter from constructor tolazy_load_data()
forSimpleMongoReader
(#8686)
- [experimental] Hyperparameter tuner (#8687)
- Fix typo error in CohereAIModelName class: cohere light models was missing v3 (#8684)
- Update deeplake.py (#8683)
- prompt optimization guide (#8659)
- VoyageEmbedding (#8634)
- Multilingual support for
YoutubeTranscriptReader
(#8673) - emotion prompt guide (#8674)
- Adds mistral 7b instruct v0.1 to available anyscale models (#8652)
- Make pgvector's setup (extension, schema, and table creation) optional (#8656)
- Allow init of stores_text variable for Pinecone vector store (#8633)
- fix: azure ad support (#8667)
- Fix nltk bug in multi-threaded environments (#8668)
- Fix google colab link in cohereai notebook (#8677)
- passing max_tokens to the
Cohere
llm (#8672)
- Deepmemory support (#8625)
- Add CohereAI embeddings (#8650)
- Add Azure AD (Microsoft Entra ID) support (#8667)
- Add
lm-format-enforcer
integration for structured output (#8601) - Google Vertex Support (#8626)
- Add
VoyageAIEmbedding
integration (#8634) - Add fine-tuning evaluator notebooks (#8596)
- Add
SingleStoreDB
integration (#7991) - Add support for ChromaDB PersistentClient (#8582)
- Add DataStax Astra DB support (#8609)
- Update dataType in Weaviate (#8608)
- In Knowledge Graph Index with hybrid retriever_mode,
- return the nodes found by keyword search when 'No Relationship found'
- Fix exceed context length error in chat engines (#8530)
- Retrieve actual content of all the triplets from KG (#8579)
- Return the nodes found by Keywords when no relationship is found by embeddings in hybrid retriever_mode in
KnowledgeGraphIndex
(#8575) - Optimize content of retriever tool and minor bug fix (#8588)
- Add Amazon
BedrockEmbedding
(#8550) - Moves
HuggingFaceEmbedding
to center onPooling
enum for pooling (#8467) - Add IBM WatsonX LLM support (#8587)
- [Bug] Patch Clarifai classes (#8529)
- fix retries for bedrock llm (#8528)
- Fix : VectorStore’s QueryResult always returns saved Node as TextNode (#8521)
- Added default file_metadata to get basic metadata that many postprocessors use, for SimpleDirectoryReader (#8486)
- Handle metadata with None values in chromadb (#8584)
- allow prompts to take in functions with
function_mappings
(#8548) - add advanced prompt + "prompt engineering for RAG" notebook (#8555)
- Leverage Replicate API for serving LLaVa modal (#8539)
- Update pull request template with google colab support inclusion (#8525)
- notebook showing how to fine-tune llama2 on structured outputs (#8540)
- added GradientAIFineTuningHandler
- added pydantic_program_mode to ServiceContext
- Initialize MultiModal Retrieval using LlamaIndex (#8507)
- Add missing import to
ChatEngine
usage pattern.md
doc (#8518) - 🐛 fixed async add (#8531)
- fix: add the needed CondenseQuestionChatEngine import in the usage_pa… (#8518)
- Add import LongLLMLinguaPostprocessor for LongLLMLingua.ipynb (#8519)
- Docs refactor (#8500)
An overhaul of the docs organization. Major changes
- Added a big new "understanding" section
- Added a big new "optimizing" section
- Overhauled Getting Started content
- Categorized and moved module guides to a single section
- Add longllmlingua (#8485)
- Add google colab support for notebooks (#7560)
- Adapt Cassandra VectorStore constructor DB connection through cassio.init (#8255)
- Allow configuration of service context and storage context in managed index (#8487)
- Add Llava MultiModal QA examples for Tesla 10k RAG (#8271)
- fix bug streaming on react chat agent not working as expected (#8459)
- patch: add selected result to response metadata for router query engines, fix bug (#8483)
- add Jina AI embeddings notebook + huggingface embedding fix (#8478)
- add
is_chat_model
to replicate (#8469) - Brought back
toml-sort
topre-commit
(#8267) - Added
LocationConstraint
for localtest_s3_kvstore
(#8263)
- Expose prompts in different modules (query engines, synthesizers, and more) (#8275)
- New LLM integrations
- Support for Hugging Face Inference API's
conversational
,text_generation
, andfeature_extraction
endpoints viahuggingface_hub[inference]
(#8098) - Add Amazon Bedrock LLMs (#8223)
- Add AI21 Labs LLMs (#8233)
- Add OpenAILike LLM class for OpenAI-compatible api servers (#7973)
- Support for Hugging Face Inference API's
- New / updated vector store integrations
- Add DashVector (#7772)
- Add Tencent VectorDB (#8173)
- Add option for custom Postgres schema on PGVectorStore instead of only allowing public schema (#8080)
- Add Gradient fine tuning engine (#8208)
- docs(FAQ): frequently asked questions (#8249)
- Fix inconsistencies with
ReActAgent.stream_chat
(#8147) - Deprecate some functions for GuardrailsOutputParser (#8016)
- Simplify dependencies (#8236)
- Bug fixes for LiteLLM (#7885)
- Update for Predibase LLM (#8211)
- Add
DELETE
for MyScale vector store (#8159) - Add SQL Retriever (#8197)
- add semantic kernel document format (#8226)
- Improve MyScale Hybrid Search and Add
DELETE
for MyScale vector store (#8159)
- Fixed additional kwargs in ReActAgent.from_tools() (#8206)
- Fixed missing spaces in prompt templates (#8190)
- Remove auto-download of llama2-13B on exception (#8225)
- add response synthesis to text-to-SQL (#8196)
- Added support for
LLMRailsEmbedding
(#8169) - Inferring MPS device with PyTorch (#8195)
- Consolidated query/text prepending (#8189)
- Add fine-tuning router support + embedding selector (#8174)
- add more document converters (#8156)
- Add normalization to huggingface embeddings (#8145)
- Improve MyScale Hybrid Search (#8159)
- Fixed duplicate
FORMAT_STR
being inside prompt (#8171) - Added: support for output_kwargs={'max_colwidth': xx} for PandasQueryEngine (#8110)
- Minor fix in the description for an argument in cohere llm (#8163)
- Fix Firestore client info (#8166)
- Added support for fine-tuning cross encoders (#7705)
- Added
QueryFusionRetriever
for merging multiple retrievers + query augmentation (#8100) - Added
nb-clean
topre-commit
to minimize PR diffs (#8108) - Support for
TextEmbeddingInference
embeddings (#8122)
- Improved the
BM25Retriever
interface to acceptBaseNode
objects (#8096) - Fixed bug with
BM25Retriever
tokenizer not working as expected (#8096) - Brought mypy to pass in Python 3.8 (#8107)
ReActAgent
adding missingsuper().__init__
call (#8125)
- add pgvector sql query engine (#8087)
- Added HoneyHive one-click observability (#7944)
- Add support for both SQLAlchemy V1 and V2 (#8060)
- Moves
codespell
topre-commit
(#8040) - Added
prettier
for autoformatting extensions besides.py
(#8072)
- Fixed forgotten f-str in
HuggingFaceLLM
(#8075) - Relaxed numpy/panadas reqs
- Added support for
GradientEmbedding
embed models (#8050)
- added
messages_to_prompt
kwarg toHuggingFaceLLM
(#8054) - improved selection and sql parsing for open-source models (#8054)
- fixed bug when agents hallucinate too many kwargs for a tool (#8054)
- improved prompts and debugging for selection+question generation (#8056)
LocalAI
more intuitive module-level var names (#8028)- Enable
codespell
for markdown docs (#7972) - add unstructured table element node parser (#8036)
- Add: Async upserting for Qdrant vector store (#7968)
- Add cohere llm (#8023)
- Parse multi-line outputs in react agent answers (#8029)
- Add properly named kwargs to keyword
as_retriever
calls (#8011) - Updating Reference to RAGAS LlamaIndex Integration (#8035)
- Vectara bugfix (#8032)
- Fix: ChromaVectorStore can attempt to add in excess of chromadb batch… (#8019)
- Fix get_content method in Mbox reader (#8012)
- Apply kwarg filters in WeaviateVectorStore (#8017)
- Avoid ZeroDivisionError (#8027)
LocalAI
intuitive module-level var names (#8028)- zep/fix: imports & typing (#8030)
- refactor: use
str.join
(#8020) - use proper metadata str for node parsing (#7987)
- You.com retriever (#8024)
- Pull fields from mongodb into metadata with
metadata_names
argument (#8001) - Simplified
LocalAI.__init__
preserving the same behaviors (#7982)
- Use longest metadata string for metadata aware text splitting (#7987)
- Handle lists of strings in mongodb reader (#8002)
- Removes
OpenAI.class_type
as it was dead code (#7983) - Fixing
HuggingFaceLLM.device_map
type hint (#7989)
- Added support for
Clarifai
LLM (#7967) - Add support for function fine-tuning (#7971)
- Update document summary index (#7815)
- change default retrieval mode to embedding
- embed summaries into vector store by default at indexing time (instead of calculating embedding on the fly)
- support configuring top k in llm retriever
- Added support for pydantic object outputs with query engines (#7893)
ClarifaiEmbedding
class added for embedding support (#7940)- Markdown node parser, flat file reader and simple file node parser (#7863)
- Added support for mongdb atlas
$vectorSearch
(#7866)
- Adds support for using message metadata in discord reader (#7906)
- Fix
LocalAI
chat capability withoutmax_tokens
(#7942) - Added
codespell
for automated checking (#7941) ruff
modernization and autofixes (#7889)- Implement own SQLDatabase class (#7929)
- Update LlamaCPP context_params property (#7945)
- fix duplicate embedding (#7949)
- Adds
codespell
tool for enforcing good spelling (#7941) - Supporting
mypy
local usage withvenv
(#7952) - Vectara - minor update (#7954)
- Avoiding
pydantic
reinstalls in CI (#7956) - move tree_sitter_languages into data_requirements.txt (#7955)
- Add
cache_okay
param toPGVectorStore
to help suppress TSVector warnings (#7950)
- Updated
KeywordNodePostprocessor
to use spacy to support more languages (#7894) LocalAI
supporting global or per-query/chat/completions
vs/completions
(#7921)- Added notebook on using REBEL + Wikipedia filtering for knowledge graphs (#7919)
- Added support for
ElasticsearchEmbedding
(#7914)
- Supporting
LocalAI
LLMs (#7913) - Validations protecting against misconfigured chunk sizes (#7917)
- Simplify NL SQL response to SQL parsing, with expanded NL SQL prompt (#7868)
- Improve vector store retrieval speed for vectordb integrations (#7876)
- Added replacing {{ and }}, and fixed JSON parsing recursion (#7888)
- Nice-ified JSON decoding error (#7891)
- Nice-ified SQL error from LLM not providing SQL (#7900)
- Nice-ified
ImportError
forHuggingFaceLLM
(#7904) - eval fixes: fix dataset response generation, add score to evaluators (#7915)
- add "build RAG from scratch notebook" - OSS/local (#7864)
- Fix elasticsearch hybrid scoring (#7852)
- Replace
get_color_mapping
andprint_text
Langchain dependency with internal implementation (#7845) - Fix async streaming with azure (#7856)
- Avoid
NotImplementedError()
in sub question generator (#7855) - Patch predibase initialization (#7859)
- Bumped min langchain version and changed prompt imports from langchain (#7862)
- Fix dropping textnodes in recursive retriever (#7840)
- share callback_manager between agent and its llm when callback_manager is None (#7844)
- fix pandas query engine (#7847)
- Added
Konko
LLM support (#7775) - Add before/after context sentence (#7821)
- EverlyAI integration with LlamaIndex through OpenAI library (#7820)
- add Arize Phoenix tracer to global handlers (#7835)
- Normalize scores returned from ElasticSearch vector store (#7792)
- Fixed
refresh_ref_docs()
bug with order of operations (#7664) - Delay postgresql connection for
PGVectorStore
until actually needed (#7793) - Fix KeyError in delete method of
SimpleVectorStore
related to metadata filters (#7829) - Fix KeyError in delete method of
SimpleVectorStore
related to metadata filters (#7831) - Addressing PyYAML import error (#7784)
- ElasticsearchStore: Update User-Agent + Add example docker compose (#7832)
StorageContext.persist
supportingPath
(#7783)- Update ollama.py (#7839)
- fix bug for self._session_pool (#7834)
- add pairwise evaluator + benchmark auto-merging retriever (#7810)
- Minor cleanup in embedding class (#7813)
- Misc updates to
OpenAIEmbedding
(#7811)
- Added native support for
HuggingFaceEmbedding
,InstructorEmbedding
, andOptimumEmbedding
(#7795) - Added metadata filtering and hybrid search to MyScale vector store (#7780)
- Allowing custom text field name for Milvus (#7790)
- Add support for
vector_store_query_mode
toVectorIndexAutoRetriever
(#7797)
- Update
LanceDBVectorStore
to handle score and distance (#7754) - Pass LLM to
memory_cls
inCondenseQuestionChatEngine
(#7785)
- add pydantic metadata extractor (#7778)
- Allow users to set the embedding dimensions in azure cognitive vector store (#7734)
- Add semantic similarity evaluator (#7770)
- 📝docs: Update Chatbot Tutorial and Notebook (#7767)
- Fixed response synthesizers with empty nodes (#7773)
- Fix
NotImplementedError
in auto vector retriever (#7764) - Multiple kwargs values in "KnowledgeGraphQueryEngine" bug-fix (#7763)
- Allow setting azure cognitive search dimensionality (#7734)
- Pass service context to index for dataset generator (#7748)
- Fix output parsers for selector templates (#7774)
- Update Chatbot_SEC.ipynb (#7711)
- linter/typechecker-friendly improvements to cassandra test (#7771)
- Expose debug option of
PgVectorStore
(#7776) - llms/openai: fix Azure OpenAI by considering
prompt_filter_results
field (#7755)
- Add support for
gpt-3.5-turbo-instruct
(#7729) - Add support for
TimescaleVectorStore
(#7727) - Added
LongContextReorder
for lost-in-the-middle issues (#7719) - Add retrieval evals (#7738)
- Added node post-processors to async context chat engine (#7731)
- Added unique index name for postgres tsv column (#7741)
- Fix langchain import error for embeddings (#7714)
- Added metadata filtering to the base simple vector store (#7564)
- add low-level router guide (#7708)
- Add CustomQueryEngine class (#7703)
- Fix context window metadata in lite-llm (#7696)
- Add CorrectnessEvaluator (#7661)
- Added support for
Ollama
LLMs (#7635) - Added
HWPReader
(#7672) - Simplified portkey LLM interface (#7669)
- Added async operation support to
ElasticsearchStore
vector store (#7613) - Added support for
LiteLLM
(#7600) - Added batch evaluation runner (#7692)
- Avoid
NotImplementedError
for async langchain embeddings (#7668) - Imrpoved reliability of LLM selectors (#7678)
- Fixed
query_wrapper_prompt
andsystem_prompt
for output parsers and completion models (#7678) - Fixed node attribute inheritance in citation query engine (#7675)
- Refactor and update
BaseEvaluator
interface to be more consistent (#7661)- Use
evaluate
function for generic input - Use
evaluate_response
function withResponse
objects from llama index query engine
- Use
- Update existing evaluators with more explicit naming
ResponseEvaluator
->FaithfulnessEvaluator
QueryResponseEvaluator
->RelevancyEvaluator
- old names are kept as class aliases for backwards compatibility
- add low-level tutorial section (#7673)
- default delta should be a dict (#7665)
- better query wrapper logic on LLMPredictor (#7667)
- add non-linear embedding adapter (#7658)
- Add "finetune + RAG" evaluation to knowledge fine-tuning notebook (#7643)
- Fixed chunk-overlap for sentence splitter (#7590)
- Added
AGENT_STEP
callback event type (#7652)
- Allowed
simple
mode to work withas_chat_engine()
(#7637) - Fixed index error in azure streaming (#7646)
- Removed
pdb
from llama-cpp (#7651)
- guide: fine-tuning to memorize knowledge (#7626)
- added ability to customize prompt template for eval modules (#7626)
- Properly detect
llama-cpp-python
version for loading the default GGML or GGUFllama2-chat-13b
model (#7616) - Pass in
summary_template
properly withRetrieverQueryEngine.from_args()
(#7621) - Fix span types in wandb callback (#7631)
- Make sure context and system prompt is included in prompt for first chat for llama2 (#7597)
- Avoid negative chunk size error in refine process (#7607)
- Fix relationships for small documents in hierarchical node parser (#7611)
- Update Anyscale Endpoints integration with full streaming and async support (#7602)
- Better support of passing credentials as LLM constructor args in
OpenAI
,AzureOpenAI
, andAnyscale
(#7602)
- Update milvus vector store to support filters and dynamic schemas (#7286)
- See the updated notebook for usage
- Added NLTK to core dependencies to support the default sentence splitter (#7606)
- Added support for ElasticSearch Vector Store (#7543)
- Fixed small
_index
bug inElasticSearchReader
(#7570) - Fixed bug with prompt helper settings in global service contexts (#7576)
- Remove newlines from openai embeddings again (#7588)
- Fixed small bug with setting
query_wrapper_prompt
in the service context (#7585)
- Clean up vector store interface to use
BaseNode
instead ofNodeWithEmbedding
- For majority of users, this is a no-op change
- For users directly operating with the
VectorStore
abstraction and manually constructingNodeWithEmbedding
objects, this is a minor breaking change. UseTextNode
withembedding
set directly, instead ofNodeWithEmbedding
.
- add embedding adapter fine-tuning engine + guide (#7565)
- Added support for Azure Cognitive Search vector store (#7469)
- Support delete in supabase (#6951)
- Added support for Espilla vector store (#7539)
- Added support for AnyScale LLM (#7497)
- Default to user-configurable top-k in
VectorIndexAutoRetriever
(#7556) - Catch validation errors for structured responses (#7523)
- Fix streaming refine template (#7561)
- Added Portkey LLM integration (#7508)
- Support postgres/pgvector hybrid search (#7501)
- upgrade recursive retriever node reference notebook (#7537)
- replace list index with summary index (#7478)
- rename list index to summary index part 2 (#7531)
- add agent finetuning guide (#7526)
- Make (some) loaders serializable (#7498)
- add node references to recursive retrieval (#7522)
- Raise informative error when metadata is too large during splitting (#7513)
- Allow langchain splitter in simple node parser (#7517)
- fix link to Marvin notebook in docs (#7504)
- Ensure metadata is not
None
inSimpleWebPageReader
(#7499) - Fixed KGIndex visualization (#7493)
- Improved empty response in KG Index (#7493)
- Added support for
MarvinEntityExtractor
metadata extractor (#7438) - Added a url_metadata callback to SimpleWebPageReader (#7445)
- Expanded callback logging events (#7472)
- Only convert newlines to spaces for text 001 embedding models in OpenAI (#7484)
- Fix
KnowledgeGraphRagRetriever
for non-nebula indexes (#7488) - Support defined embedding dimension in
PGVectorStore
(#7491) - Greatly improved similarity calculation speed for the base vector store (#7494)
- feat: non-kg heterogeneous graph support in Graph RAG (#7459)
- rag guide (#7480)
- Improve openai fine-tuned model parsing (#7474)
- doing some code de-duplication (#7468)
- support both str and templates for query_wrapper_prompt in HF LLMs (#7473)
- Add embedding finetuning (#7452)
- Added support for RunGPT LLM (#7401)
- Integration guide and notebook with DeepEval (#7425)
- Added
VectorIndex
andVectaraRetriever
as a managed index (#7440) - Added support for
to_tool_list
to detect and use async functions (#7282)
- add openai finetuning class (#7442)
- Service Context to/from dict (#7395)
- add finetuning guide (#7429)
- Add example how to run FalkorDB docker (#7441)
- Update root.md to use get_response_synthesizer expected type. (#7437)
- Bugfix MonsterAPI Pydantic version v2/v1 support. Doc Update (#7432)
- AutoMergingRetriever (#7420)
- Added support for
MonsterLLM
using MonsterAPI (#7343) - Support comments fields in NebulaGraphStore and int type VID (#7402)
- Added configurable endpoint for DynamoDB (#6777)
- Add structured answer filtering for Refine response synthesizer (#7317)
- Use
utf-8
for json file reader (#7390) - Fix entity extractor initialization (#7407)
- Added support for FalkorDB/RedisGraph graph store (#7346)
- Added directed sub-graph RAG (#7378)
- Added support for
BM25Retriever
(#7342)
- Added
max_tokens
toXinference
LLM (#7372) - Support cache dir creation in multithreaded apps (#7365)
- Ensure temperature is a float for openai (#7382)
- Remove duplicate subjects in knowledge graph retriever (#7378)
- Added support for both pydantic v1 and v2 to allow other apps to move forward (#7394)
- Refactor prompt template (#7319)
- Use
BasePromptTemplate
for generic typing - Use
PromptTemplate
,ChatPromptTemplate
,SelectorPromptTemplate
as core implementations - Use
LangchainPromptTemplate
for compatibility with Langchain prompt templates - Fully replace specific prompt classes (e.g.
SummaryPrompt
) with genericBasePromptTemplate
for typing in codebase. - Keep
Prompt
as an alias forPromptTemplate
for backwards compatibility. - BREAKING CHANGE: remove support for
Prompt.from_langchain_prompt
, please usetemplate=LangchainPromptTemplate(lc_template)
instead.
- Use
OpenAIFineTuningHandler
for collecting LLM inputs/outputs for OpenAI fine tuning (#7367)
- Add support for
claude-instant-1.2
(#7369)
- Support fine-tuned OpenAI models (#7364)
- Added support for Cassandra vector store (#6784)
- Support pydantic fields in tool functions (#7348)
- Fix infinite looping with forced function call in
OpenAIAgent
(#7363)
- auto vs. recursive retriever notebook (#7353)
- Reader and Vector Store for BagelDB with example notebooks (#7311)
- Use service context for intermediate index in retry source query engine (#7341)
- temp fix for prompt helper + chat models (#7350)
- Properly skip unit-tests when packages not installed (#7351)
- Added FireStore docstore/index store support (#7305)
- add recursive agent notebook (#7330)
- Fix Azure pydantic error (#7329)
- fix callback trace ids (make them a context var) (#7331)
- Awadb Vector Store (#7291)
- Fix bug in OpenAI llm temperature type
- Expose a system prompt/query wrapper prompt in the service context for open-source LLMs (#6647)
- Changed default MyScale index format to
MSTG
(#7288) - Added tracing to chat engines/agents (#7304)
- move LLM and embeddings to pydantic (#7289)
- Fix sentence splitter bug (#7303)
- Fix sentence splitter infinite loop (#7295)
- Improve SQL Query parsing (#7283)
- Fix loading embed_model from global service context (#7284)
- Limit langchain version until we migrate to pydantic v2 (#7297)
- Added Knowledge Graph RAG Retriever (#7204)
- accept
api_key
kwarg in OpenAI LLM class constructor (#7263) - Fix to create separate queue instances for separate instances of
StreamingAgentChatResponse
(#7264)
- Added support for Rockset as a vector store (#7111)
- Fixed bug in service context definition that could disable LLM (#7261)
- Enable the LLM or embedding model to be disabled by setting to
None
in the service context (#7255) - Resolve nearly any huggingface embedding model using the
embed_model="local:<model_name>"
syntax (#7255) - Async tool-calling support (#7239)
- Updated supabase kwargs for add and query (#7103)
- Small tweak to default prompts to allow for more general purpose queries (#7254)
- Make callback manager optional for
CustomLLM
+ docs update (#7257)
- feat: add node_postprocessors to ContextChatEngine (#7232)
- add ensemble query engine tutorial (#7247)
- Allow EMPTY keys for Fastchat/local OpenAI API endpoints (#7224)
- Added "LLAMA_INDEX_CACHE_DIR" to control cached files (#7233)
- Default to pydantic selectors when possible (#7154, #7223)
- Remove the need for langchain wrappers on
embed_model
in the service context (#7157) - Metadata extractors take an
LLM
object now, in addition toLLMPredictor
(#7202) - Added local mode + fallback to llama.cpp + llama2 (#7200)
- Added local fallback for embeddings to
BAAI/bge-small-en
(#7200) - Added
SentenceWindowNodeParser
+MetadataReplacementPostProcessor
(#7211)
- Change default LLM to gpt-3.5-turbo from text-davinci-003 (#7223)
- Change prompts for compact/refine/tree_summarize to work better with gpt-3.5-turbo (#7150, #7179, #7223)
- Increase default LLM temperature to 0.1 (#7180)
- Reverted #7223 changes to defaults (#7235)
- Default to pydantic selectors when possible (#7154, #7223)
- Remove the need for langchain wrappers on
embed_model
in the service context (#7157) - Metadata extractors take an
LLM
object now, in addition toLLMPredictor
(#7202) - Added local mode + fallback to llama.cpp + llama2 (#7200)
- Added local fallback for embeddings to
BAAI/bge-small-en
(#7200) - Added
SentenceWindowNodeParser
+MetadataReplacementPostProcessor
(#7211)
- Change default LLM to gpt-3.5-turbo from text-davinci-003 (#7223)
- Change prompts for compact/refine/tree_summarize to work better with gpt-3.5-turbo (#7150, #7179, #7223)
- Increase default LLM temperature to 0.1 (#7180)
- docs: Improvements to Mendable Search (#7220)
- Refactor openai agent (#7077)
- Use
1 - cosine_distance
for pgvector/postgres vector db (#7217) - fix metadata formatting and extraction (#7216)
- fix(readers): Fix non-ASCII JSON Reader bug (#7086)
- Chore: change PgVectorStore variable name from
sim
todistance
for clarity (#7226)
- Fixed metadata formatting with custom tempalates and inheritance (#7216)
- Add "one click observability" page to docs (#7183)
- Added Xorbits inference for local deployments (#7151)
- Added Zep vector store integration (#7203)
- feat/zep vectorstore (#7203)
- Update the default
EntityExtractor
model (#7209) - Make
ChatMemoryBuffer
pickleable (#7205) - Refactored
BaseOpenAIAgent
(#7077)
- add ensemble retriever notebook (#7190)
- DOCS: added local llama2 notebook (#7146)
- Fix for
AttributeError: 'OpenAIAgent' object has no attribute 'callback_manager'
by calling super constructor withinBaseOpenAIAgent
- Remove backticks from nebula queries (#7192)
- Added an
EntityExtractor
for metadata extraction (#7163)
- add router module docs (#7171)
- add retriever router (#7166)
- Added a
RouterRetriever
for routing queries to specific retrievers (#7166)
- Fix for issue where having multiple concurrent streamed responses from
OpenAIAgent
would result in interleaving of tokens across each response stream. (#7164) - fix llms callbacks issue (args[0] error) (#7165)
- Added metadata filtering to weaviate (#7130)
- Added token counting (and all callbacks) to agents and streaming (#7122)
- Added
to/from_string
andto/from_dict
methods to memory objects (#7128) - Include columns comments from db tables in table info for SQL queries (#7124)
- Add Neo4j support (#7122)
- Added
Azure AD
validation support to theAzureOpenAI
class (#7127) - add
flush=True
when printing agent/chat engine response stream (#7129) - Added
Azure AD
support to theAzureOpenAI
class (#7127) - Update LLM question generator prompt to mention JSON markdown (#7105)
- Fixed
astream_chat
in chat engines (#7139)
- Update
ReActAgent
to support memory modules (minor breaking change since the constructor takesmemory
instead ofchat_history
, but the mainfrom_tools
method remains backward compatible.) (#7116) - Update
ReActAgent
to support streaming (#7119) - Added Neo4j graph store and query engine integrations (#7122)
- add object streaming (#7117)
- Chat source nodes (#7078)
- anthropic api key customization (#7082)
- Fix broken link to API reference in Contributor Docs (#7080)
- Update vector store docs (#7076)
- Update comment (#7073)
- Added HotpotQADistractor benchmark evaluator (#7034)
- Add metadata filter and delete support for LanceDB (#7048)
- Use MetadataFilters in opensearch (#7005)
- Added support for
KuzuGraphStore
(#6970) - Added
kg_triplet_extract_fn
to customize how KGs are built (#7068)
- Fix string formatting in context chat engine (#7050)
- Fixed tracing for async events (#7052)
- Less strict triplet extraction for KGs (#7059)
- Add configurable limit to KG data retrieved (#7059)
- Nebula connection improvements (#7059)
- Bug fix in building source nodes for agent response (#7067)
- Support function calling api for AzureOpenAI (#7041)
- tune prompt to get rid of KeyError in SubQ engine (#7039)
- Fix validation of Azure OpenAI keys (#7042)
- Added
kwargs
toComposableGraph
for the underlying query engines (#6990) - Validate openai key on init (#6940)
- Added async embeddings and async RetrieverQueryEngine (#6587)
- Added async
aquery
andasync_add
to PGVectorStore (#7031) - Added
.source_nodes
attribute to chat engine and agent responses (#7029) - Added
OpenInferenceCallback
for storing generation data in OpenInference format (#6998)
- Fix achat memory initialization for data agents (#7000)
- Add
print_response_stream()
to agengt/chat engine response class (#7018)
- Fix achat memory initialization for data agents (#7000)
- Add
print_response_stream()
to agengt/chat engine response class (#7018)
- Default to pydantic question generation when possible for sub-question query engine (#6979)
- Fix returned order of messages in large chat memory (#6979)
- Added a
SentenceTransformerRerank
node post-processor for fast local re-ranking (#6934) - Add numpy support for evaluating queries in pandas query engine (#6935)
- Add metadata filtering support for Postgres Vector Storage integration (#6968)
- Proper llama2 support for agents and query engines (#6969)
- Added
model_name
to LLMMetadata (#6911) - Fallback to retriever service context in query engines (#6911)
- Fixed
as_chat_engine()
ValueError with extra kwargs (#6971
- Add support for Replicate LLM (vicuna & llama 2!)
- fix streaming for condense chat engine (#6958)
- Add support for chroma v0.4.0 (#6937)
- Log embedding vectors to callback manager (#6962)
- add more robust embedding timeouts (#6779)
- improved connection session management on postgres vector store (#6843)
- specify
embed_model="local"
to use default local embbeddings in the service context (#6806) - Add async
acall
endpoint toBasePydanticProgram
(defaults to sync version). Implement forOpenAIPydanticProgram
- fix null metadata for searching existing vector dbs (#6912)
- add module guide docs for
SimpleDirectoryReader
(#6916) - make sure
CondenseQuestionChatEngine
streaming chat endpoints work even if not explicitly settingstreaming=True
in the underlying query engine.
- Added embedding speed benchmark (#6876)
- Added BEIR retrieval benchmark (#6825)
- remove toctrees from deprecated_terms (#6895)
- Relax typing dependencies (#6879)
- docs: modification to evaluation notebook (#6840)
- raise error if the model does not support functions (#6896)
- fix(bench embeddings): bug not taking into account string length (#6899)x
- Improved milvus consistency support and output fields support (#6452)
- Added support for knowledge graph querying w/ cypyer+nebula (#6642)
- Added
Document.example()
to create documents for fast prototyping (#6739) - Replace react chat engine to use native reactive agent (#6870)
- chore: added a help message to makefile (#6861)
- Fixed support for using SQLTableSchema context_str attribute (#6891)
- Added sources to agent/chat engine responses (#6854)
- Added basic chat buffer memory to agents / chat engines (#6857)
- Adding load and search tool (#6871)
- Add simple agent benchmark (#6869)
- add agent docs (#6866)
- add react agent (#6865)
- Replace react chat engine with native react agent (#6870)
- Set default chat mode to "best": use openai agent when possible, otherwise use react agent (#6870)
- Fixed support for legacy vector store metadata (#6867)
- fix chroma notebook in docs (#6872)
- update LC embeddings docs (#6868)
- Add
Anthropic
LLM implementation (#6855)
- Fix indexing error in
SentenceEmbeddingOptimizer
(#6850) - fix doc for custom embedding model (#6851)
- fix(silent error): Add validation to
SimpleDirectoryReader
(#6819) - Fix link in docs (#6833)
- Fixes Azure gpt-35-turbo model not recognized (#6828)
- Update Chatbot_SEC.ipynb (#6808)
- Rename leftover original name to LlamaIndex (#6792)
- patch nested traces of the same type (#6791)
MetadataExtractor
- Documnent Metadata Augmentation via LLM-based feature extractors (#6764)
- fixed passing in query bundle to node postprocessors (#6780)
- fixed error in callback manager with nested traces (#6791)
- Sub question query engine returns source nodes of sub questions in the callback manager (#6745)
- trulens integration (#6741)
- Add sources to subquestion engine (#6745)
- Added/Fixed streaming support to simple and condense chat engines (#6717)
- fixed
response_mode="no_text"
response synthesizer (#6755) - fixed error setting
num_output
andcontext_window
in service context (#6766) - Fix missing as_query_engine() in tutorial (#6747)
- Fixed variable sql_query_engine in the notebook (#6778)
- fix required function fields (#6761)
- Remove usage of stop token in Prompt, SQL gen (#6782)
- Support Azure OpenAI (#6718)
- Support prefix messages (e.g. system prompt) in chat engine and OpenAI agent (#6723)
- Added
CBEventType.SUB_QUESTIONS
event type for tracking sub question queries/responses (#6716)
- Fix HF LLM output error (#6737)
- Add system message support for langchain message templates (#6743)
- Fixed applying node-postprocessors (#6749)
- Add missing
CustomLLM
import underllama_index.llms
(#6752) - fix(typo):
get_transformer_tokenizer_fn
(#6729) - feat(formatting):
black[jupyter]
(#6732) - fix(test):
test_optimizer_chinese
(#6730)
- Streaming support for OpenAI agents (#6694)
- add recursive retriever + notebook example (#6682)
- Index creation progress bars (#6583)
- Improved chat refine template (#6645)
- Change
BaseOpenAIAgent
to usellama_index.llms.OpenAI
. Adjustchat_history
to useList[ChatMessage]]
as type. - Remove (previously deprecated)
llama_index.langchain_helpers.chain_wrapper
module. - Remove (previously deprecated)
llama_index.token_counter.token_counter
module. See migration guide for more details on new callback based token counting. - Remove
ChatGPTLLMPredictor
andHuggingFaceLLMPredictor
. See migration guide for more details on replacements. - Remove support for setting
cache
viaLLMPredictor
constructor. - Update
BaseChatEngine
interface:- adjust
chat_history
to useList[ChatMessage]]
as type - expose
chat_history
state as a property - support overriding
chat_history
inchat
andachat
endpoints
- adjust
- Remove deprecated arguments for
PromptHelper
:max_input_size
,embedding_limit
,max_chunk_overlap
- Update all notebooks to use native openai integration (#6696)
- add optional tqdm progress during index creation (#6583)
- Added async support for "compact" and "refine" response modes (#6590)
- [feature]add transformer tokenize functionalities for optimizer (chinese) (#6659)
- Add simple benchmark for vector store (#6670)
- Introduce
llama_index.llms
module, with newLLM
interface, andOpenAI
,HuggingFaceLLM
,LangChainLLM
implementations. (#6615) - Evaporate pydantic program (#6666)
- Improve metadata/node storage and retrieval for RedisVectorStore (#6678)
- Fixed node vs. document filtering in vector stores (#6677)
- add context retrieval agent notebook link to docs (#6660)
- Allow null values for the 'image' property in the ImageNode class and se… (#6661)
- Fix broken links in docs (#6669)
- update milvus to store node content (#6667)
- add context augmented openai agent (#6655)
- Redis support for index stores and docstores (#6575)
- DuckDB + SQL query engine notebook (#6628)
- add notebook showcasing deplot data loader (#6638)
- More robust JSON parsing from LLM for
SelectionOutputParser
(#6610) - bring our loaders back in line with llama-hub (#6630)
- Remove usage of SQLStructStoreIndex in notebooks (#6585)
- MD reader: remove html tags and leave linebreaks alone (#6618)
- bump min langchain version to latest version (#6632)
- Fix metadata column name in postgres vector store (#6622)
- Postgres metadata fixes (#6626, #6634)
- fixed links to dataloaders in contribution.md (#6636)
- fix: typo in docs in creating custom_llm huggingface example (#6639)
- Updated SelectionOutputParser to handle JSON objects and arrays (#6610)
- Fixed docstring argument typo (#6652)
- refactor structured output + pydantic programs (#6604)
- Fix serialization for OpenSearch vector stores (#6612)
- patch docs relationships (#6606)
- Bug fix for ignoring directories while parsing git repo (#4196)
- updated Chroma notebook (#6572)
- Backport old node name (#6614)
- Add the ability to change chroma implementation (#6601)
- Patch imports for Document obj for backwards compatibility (#6597)
- New
TextNode
/Document
object classes based on pydantic (#6586) TextNode
/Document
objects support metadata customization (metadata templates, exclude metadata from LLM or embeddings) (#6586)- Nodes no longer require flat metadata dictionaries, unless the vector store you use requires it (#6586)
- use
NLTK_DATA
env var to control NLTK download location (#6579) - [discord] save author as metadata in group_conversations.py (#6592)
- bs4 -> beautifulsoup4 in requirements (#6582)
- negate euclidean distance (#6564)
- add df output parser notebook link to docs (#6581)
Node
has been renamed toTextNode
and is imported fromllama_index.schema
(#6586)TextNode
andDocument
must be instantiated with kwargs:Document(text=text)
(#6586)TextNode
(fkaNode
) has aid_
ornode_id
property, rather thandoc_id
(#6586)TextNode
andDocument
have a metadata property, which replaces the extra_info property (#6586)TextNode
no longer has anode_info
property (start/end indexes are accessed directly withstart/end_char_idx
attributes) (#6586)
- Add typesense vector store (#6561)
- add df output parser (#6576)
- Track langchain dependency via bridge module. (#6573)
- add object index (#6548)
- add SQL Schema Node Mapping + SQLTableRetrieverQueryEngine + obj index fixes (#6569)
- sql refactor (NLSQLTableQueryEngine) (#6529)
- Update vector_stores.md (#6562)
- Minor
BaseResponseBuilder
interface cleanup (#6557) - Refactor TreeSummarize (#6550)
- properly convert weaviate distance to score (#6545)
- refactor tree summarize and fix bug to not truncate context (#6550)
- fix custom KG retrieval notebook nits (#6551)
- multi-selector support in router query engine (#6518)
- pydantic selector support in router query engine using OpenAI function calling API (#6518)
- streaming response support in
CondenseQuestionChatEngine
andSimpleChatEngine
(#6524) - metadata filtering support in
QdrantVectorStore
(#6476) - add
PGVectorStore
to support postgres with pgvector (#6190)
- better error handling in the mbox reader (#6248)
- Fix blank similarity score when using weaviate (#6512)
- fix for sorted nodes in
PrevNextNodePostprocessor
(#6048)
- Refactor PandasQueryEngine to take in df directly, deprecate PandasIndex (#6527)
- query planning tool with OpenAI Function API (#6520)
- docs: example of kg+vector index (#6497)
- Set context window sizes for Cohere and AI21(J2 model) (#6485)
- add default input size for Cohere and AI21 (#6485)
- docs: replace comma with colon in dict object (#6439)
- extra space in prompt and error message update (#6443)
- [Issue 6417] Fix prompt_templates docs page (#6499)
- Rip out monkey patch and update model to context window mapping (#6490)
- New OpenAI Agent + Query Engine Cookbook (#6496)
- allow recursive data extraction (pydantic program) (#6503)
- update mongo interface (#6501)
- fixes that we forgot to include for openai pydantic program (#6503) (#6504)
- Fix github pics in Airbyte notebook (#6493)
- Add node doc_id filtering to weaviate (#6467)
- New
TokenCountingCallback
to customize and track embedding, prompt, and completion token usage (#6440) - OpenAI Retrieval Function Agent (#6491)
- Deprecated current token tracking (llm predictor and embed model will no longer track tokens in the future, please use the
TokenCountingCallback
(#6440) - Add maximal marginal relevance to the Simple Vector Store, which can be enabled as a query mode (#6446)
as_chat_engine
properly inherits the current service context (#6470)- Use namespace when deleting from pinecone (#6475)
- Fix paths when using fsspec on windows (#3778)
- Fix for using custom file readers in
SimpleDirectoryReader
(#6477) - Edit MMR Notebook (#6486)
- FLARE fixes (#6484)
- Add OpenAIAgent and tutorial notebook for "build your own agent" (#6461)
- Add OpenAIPydanticProgram (#6462)
- Fix citation engine import (#6456)
- Added FLARE query engine (#6419).
- Added better support for vector store with existing data (e.g. allow configurable text key) for Pinecone and Weaviate. (#6393)
- Support batched upsert for Pineone (#6393)
- Added initial guidance integration. Added
GuidancePydanticProgram
for generic structured output generation andGuidanceQuestionGenerator
for generating sub-questions inSubQuestionQueryEngine
(#6246).
- Remove hardcoded chunk size for citation query engine (#6408)
- Mongo demo improvements (#6406)
- Fix notebook (#6418)
- Cleanup RetryQuery notebook (#6381)
- Added
SQLJoinQueryEngine
(generalization ofSQLAutoVectorQueryEngine
) (#6265) - Added support for graph stores under the hood, and initial support for Nebula KG. More docs coming soon! (#2581)
- Added guideline evaluator to allow llm to provide feedback based on user guidelines (#4664)
- Added support for MongoDB Vector stores to enable Atlas knnbeta search (#6379)
- Added new CitationQueryEngine for inline citations of sources in response text (#6239)
- Fixed bug with
delete_ref_doc
not removing all metadata from the docstore (#6192) - FIxed bug with loading existing QDrantVectorStore (#6230)
- Added changelog officially to github repo (#6191)
- SimpleDirectoryReader has new
filename_as_id
flag to automatically set the doc_id (useful forrefresh_ref_docs()
) - DocArray vector store integration
- Tair vector store integration
- Weights and Biases callback handler for tracing and versioning indexes
- Can initialize indexes directly from a vector store:
index = VectorStoreIndex.from_vector_store(vector_store=vector_store)
- Fixed multimodal notebook
- Updated/fixed the SQL tutorial in the docs
- Minor docs updates
- Added github pull-requset templates
- Added github issue-forms
- Added new JSONQueryEngine that uses JSON schema to deliver more accurate JSON query answers
- Metadata support for redis vector-store
- Added Supabase vector store integration
- Fixed typo in text-to-sql prompt
- Removed GPT prefix from indexes (old imports/names are still supported though)
- Major docs updates, brought important modules to the top level
- Added agent tool abstraction for llama-hub data loaders
- Minor doc updates
- Added
Discover LlamaIndex
video series to the tutorials docs section - Minor docs updates