- Make pgvector's setup (extension, schema, and table creation) optional (#8656)
- 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