mirror of
https://github.com/lllin000/PaperForge.git
synced 2026-07-22 17:00:23 +00:00
New paperforge_objects collection in ChromaDB for figure/table caption vector search, completing the memory layer retrieval triad: paperforge_fulltext → legacy_chunk paperforge_body → body_unit paperforge_objects → object_unit (NEW) Changes: - manifest.py: compute_object_units_hash(), manifest records both hashes - _chroma.py: _COLLECTION_NAMES includes paperforge_objects - builder.py: get_object_units_for_embedding() + embed_object_units() - status.py: object_chunk_count, total_chunks - state_snapshot.py: write_vector_runtime() extended with new fields - search.py: 3rd collection, dict-based source mapping, object_kind/label - __init__.py: exports for new functions - commands/embed.py: _has_object_units_in_db, body+object structured path routing with dual-hash resume, extended counters - Test fix: test_build_paper_manifest data complete for hash functions Verification: 20 object vectors embedded, all per-paper counts match, status total consistent (58266 = 57435 + 811 + 20), object caption queries return object_unit results via merge_retrieve. Unit tests: 153 pass, 1 skip.
44 lines
1.3 KiB
Python
44 lines
1.3 KiB
Python
from __future__ import annotations
|
|
|
|
from paperforge.embedding._chroma import (
|
|
delete_paper_vectors,
|
|
get_collection,
|
|
get_vector_db_path,
|
|
)
|
|
from paperforge.embedding.backends import (
|
|
ChromaBackend,
|
|
VectorBackend,
|
|
get_vector_backend,
|
|
)
|
|
from paperforge.embedding.build_state import (
|
|
get_vector_build_state_path,
|
|
mark_vector_build_state,
|
|
read_vector_build_state,
|
|
write_vector_build_state,
|
|
)
|
|
from paperforge.embedding.builder import embed_body_units, embed_paper, get_body_units_for_embedding, get_object_units_for_embedding, embed_object_units
|
|
from paperforge.embedding.preflight import _preflight_check
|
|
from paperforge.embedding.search import merge_retrieve, retrieve_chunks
|
|
from paperforge.embedding.status import get_embed_status
|
|
|
|
__all__ = [
|
|
"ChromaBackend",
|
|
"VectorBackend",
|
|
"delete_paper_vectors",
|
|
"embed_body_units",
|
|
"embed_paper",
|
|
"get_body_units_for_embedding",
|
|
"embed_object_units",
|
|
"get_collection",
|
|
"get_embed_status",
|
|
"get_object_units_for_embedding",
|
|
"get_vector_backend",
|
|
"get_vector_build_state_path",
|
|
"get_vector_db_path",
|
|
"mark_vector_build_state",
|
|
"merge_retrieve",
|
|
"read_vector_build_state",
|
|
"retrieve_chunks",
|
|
"write_vector_build_state",
|
|
"_preflight_check",
|
|
]
|