<!-- .github/pull_request_template.md --> ## Description <!-- Provide a clear description of the changes in this PR --> ## DCO Affirmation I affirm that all code in every commit of this pull request conforms to the terms of the Topoteretes Developer Certificate of Origin <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** • Graph visualizations now allow exporting to a user-specified file path for more flexible output management. • The text embedding process has been enhanced with an additional tokenizer option for improved performance. • A new `ExtendableDataPoint` class has been introduced for future extensions. • New JSON files for companies and individuals have been added to facilitate testing and data processing. - **Improvements** • Search functionality now uses updated identifiers for more reliable content retrieval. • Metadata handling has been streamlined across various classes by removing unnecessary type specifications. • Enhanced serialization of properties in the Neo4j adapter for improved handling of complex structures. • The setup process for databases has been improved with a new asynchronous setup function. - **Chores** • Dependency and configuration updates improve overall stability and performance. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
45 lines
1.3 KiB
Python
45 lines
1.3 KiB
Python
from typing import List, Optional
|
|
from cognee.infrastructure.engine import DataPoint
|
|
|
|
|
|
class Repository(DataPoint):
|
|
__tablename__ = "Repository"
|
|
path: str
|
|
pydantic_type: str = "Repository"
|
|
metadata: dict = {"index_fields": []}
|
|
|
|
|
|
class CodeFile(DataPoint):
|
|
__tablename__ = "codefile"
|
|
extracted_id: str # actually file path
|
|
pydantic_type: str = "CodeFile"
|
|
source_code: Optional[str] = None
|
|
part_of: Optional[Repository] = None
|
|
depends_on: Optional[List["CodeFile"]] = None
|
|
depends_directly_on: Optional[List["CodeFile"]] = None
|
|
contains: Optional[List["CodePart"]] = None
|
|
metadata: dict = {"index_fields": []}
|
|
|
|
|
|
class CodePart(DataPoint):
|
|
__tablename__ = "codepart"
|
|
file_path: str # file path
|
|
# part_of: Optional[CodeFile] = None
|
|
pydantic_type: str = "CodePart"
|
|
source_code: Optional[str] = None
|
|
metadata: dict = {"index_fields": []}
|
|
|
|
|
|
class SourceCodeChunk(DataPoint):
|
|
__tablename__ = "sourcecodechunk"
|
|
code_chunk_of: Optional[CodePart] = None
|
|
source_code: Optional[str] = None
|
|
pydantic_type: str = "SourceCodeChunk"
|
|
previous_chunk: Optional["SourceCodeChunk"] = None
|
|
|
|
metadata: dict = {"index_fields": ["source_code"]}
|
|
|
|
|
|
CodeFile.model_rebuild()
|
|
CodePart.model_rebuild()
|
|
SourceCodeChunk.model_rebuild()
|