community[patch]: fix llama index imports and fields access (#17870)

- **Description:** Fixing outdated imports after v0.10 llama index
update and updating metadata and source text access
  - **Issue:** #17860
  - **Twitter handle:** @maximeperrin_

---------

Co-authored-by: Maxime Perrin <mperrin@doing.fr>
This commit is contained in:
Maxime Perrin 2024-02-26 03:14:23 +01:00 committed by GitHub
parent 5d2d80a9a8
commit c06a8732aa
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -22,8 +22,8 @@ class LlamaIndexRetriever(BaseRetriever):
) -> List[Document]: ) -> List[Document]:
"""Get documents relevant for a query.""" """Get documents relevant for a query."""
try: try:
from llama_index.indices.base import BaseGPTIndex from llama_index.core.base.response.schema import Response
from llama_index.response.schema import Response from llama_index.core.indices.base import BaseGPTIndex
except ImportError: except ImportError:
raise ImportError( raise ImportError(
"You need to install `pip install llama-index` to use this retriever." "You need to install `pip install llama-index` to use this retriever."
@ -35,9 +35,9 @@ class LlamaIndexRetriever(BaseRetriever):
# parse source nodes # parse source nodes
docs = [] docs = []
for source_node in response.source_nodes: for source_node in response.source_nodes:
metadata = source_node.extra_info or {} metadata = source_node.metadata or {}
docs.append( docs.append(
Document(page_content=source_node.source_text, metadata=metadata) Document(page_content=source_node.get_content(), metadata=metadata)
) )
return docs return docs
@ -58,11 +58,11 @@ class LlamaIndexGraphRetriever(BaseRetriever):
) -> List[Document]: ) -> List[Document]:
"""Get documents relevant for a query.""" """Get documents relevant for a query."""
try: try:
from llama_index.composability.graph import ( from llama_index.core.base.response.schema import Response
from llama_index.core.composability.base import (
QUERY_CONFIG_TYPE, QUERY_CONFIG_TYPE,
ComposableGraph, ComposableGraph,
) )
from llama_index.response.schema import Response
except ImportError: except ImportError:
raise ImportError( raise ImportError(
"You need to install `pip install llama-index` to use this retriever." "You need to install `pip install llama-index` to use this retriever."
@ -79,8 +79,8 @@ class LlamaIndexGraphRetriever(BaseRetriever):
# parse source nodes # parse source nodes
docs = [] docs = []
for source_node in response.source_nodes: for source_node in response.source_nodes:
metadata = source_node.extra_info or {} metadata = source_node.metadata or {}
docs.append( docs.append(
Document(page_content=source_node.source_text, metadata=metadata) Document(page_content=source_node.get_content(), metadata=metadata)
) )
return docs return docs