BaseNode#
- pydantic model llama_index.core.schema.BaseNode#
Base node Object.
Generic abstract interface for retrievable nodes
Show JSON schema
{ "title": "BaseNode", "description": "Base node Object.\n\nGeneric abstract interface for retrievable nodes", "type": "object", "properties": { "id_": { "title": "Id ", "description": "Unique ID of the node.", "type": "string" }, "embedding": { "title": "Embedding", "description": "Embedding of the node.", "type": "array", "items": { "type": "number" } }, "extra_info": { "title": "Extra Info", "description": "A flat dictionary of metadata fields", "type": "object" }, "excluded_embed_metadata_keys": { "title": "Excluded Embed Metadata Keys", "description": "Metadata keys that are excluded from text for the embed model.", "type": "array", "items": { "type": "string" } }, "excluded_llm_metadata_keys": { "title": "Excluded Llm Metadata Keys", "description": "Metadata keys that are excluded from text for the LLM.", "type": "array", "items": { "type": "string" } }, "relationships": { "title": "Relationships", "description": "A mapping of relationships to other node information.", "type": "object", "additionalProperties": { "anyOf": [ { "$ref": "#/definitions/RelatedNodeInfo" }, { "type": "array", "items": { "$ref": "#/definitions/RelatedNodeInfo" } } ] } }, "class_name": { "title": "Class Name", "type": "string", "default": "base_component" } }, "definitions": { "ObjectType": { "title": "ObjectType", "description": "An enumeration.", "enum": [ "1", "2", "3", "4" ], "type": "string" }, "RelatedNodeInfo": { "title": "RelatedNodeInfo", "description": "Base component object to capture class names.", "type": "object", "properties": { "node_id": { "title": "Node Id", "type": "string" }, "node_type": { "$ref": "#/definitions/ObjectType" }, "metadata": { "title": "Metadata", "type": "object" }, "hash": { "title": "Hash", "type": "string" }, "class_name": { "title": "Class Name", "type": "string", "default": "RelatedNodeInfo" } }, "required": [ "node_id" ] } } }
- Config
allow_population_by_field_name: bool = True
validate_assignment: bool = True
- Fields
- field embedding: Optional[List[float]] = None#
” metadata fields - injected as part of the text shown to LLMs as context - injected as part of the text for generating embeddings - used by vector DBs for metadata filtering
Embedding of the node.
- field excluded_embed_metadata_keys: List[str] [Optional]#
Metadata keys that are excluded from text for the embed model.
- field excluded_llm_metadata_keys: List[str] [Optional]#
Metadata keys that are excluded from text for the LLM.
- field id_: str [Optional]#
Unique ID of the node.
- field metadata: Dict[str, Any] [Optional] (alias 'extra_info')#
A flat dictionary of metadata fields
- field relationships: Dict[NodeRelationship, Union[RelatedNodeInfo, List[RelatedNodeInfo]]] [Optional]#
A mapping of relationships to other node information.
Get node as RelatedNodeInfo.
- abstract get_content(metadata_mode: MetadataMode = MetadataMode.ALL) str #
Get object content.
- get_embedding() List[float] #
Get embedding.
Errors if embedding is None.
- abstract get_metadata_str(mode: MetadataMode = MetadataMode.ALL) str #
Metadata string.
- abstract classmethod get_type() str #
Get Object type.
- abstract set_content(value: Any) None #
Set the content of the node.
- property child_nodes: Optional[List[RelatedNodeInfo]]#
Child nodes.
- property extra_info: Dict[str, Any]#
Extra info.
- Type
TODO
- Type
DEPRECATED
- abstract property hash: str#
Get hash of node.
- property next_node: Optional[RelatedNodeInfo]#
Next node.
- property node_id: str#
- property parent_node: Optional[RelatedNodeInfo]#
Parent node.
- property prev_node: Optional[RelatedNodeInfo]#
Prev node.
- property ref_doc_id: Optional[str]#
Get ref doc id.
- Type
Deprecated
- property source_node: Optional[RelatedNodeInfo]#
Source object node.
Extracted from the relationships field.