MCPcopy
hub / github.com/VectifyAI/PageIndex / __init__

Method __init__

pageindex/client.py:35–53  ·  view source on GitHub ↗
(self, api_key: str = None, model: str = None, retrieve_model: str = None, workspace: str = None)

Source from the content-addressed store, hash-verified

33 For agent-based QA, see examples/agentic_vectorless_rag_demo.py.
34 """
35 def __init__(self, api_key: str = None, model: str = None, retrieve_model: str = None, workspace: str = None):
36 if api_key:
37 os.environ["OPENAI_API_KEY"] = api_key
38 elif not os.getenv("OPENAI_API_KEY") and os.getenv("CHATGPT_API_KEY"):
39 os.environ["OPENAI_API_KEY"] = os.getenv("CHATGPT_API_KEY")
40 self.workspace = Path(workspace).expanduser() if workspace else None
41 overrides = {}
42 if model:
43 overrides["model"] = model
44 if retrieve_model:
45 overrides["retrieve_model"] = retrieve_model
46 opt = ConfigLoader().load(overrides or None)
47 self.model = opt.model
48 self.retrieve_model = _normalize_retrieve_model(opt.retrieve_model or self.model)
49 if self.workspace:
50 self.workspace.mkdir(parents=True, exist_ok=True)
51 self.documents = {}
52 if self.workspace:
53 self._load_workspace()
54
55 def index(self, file_path: str, mode: str = "auto") -> str:
56 """Index a document. Returns a document_id."""

Callers

nothing calls this directly

Calls 4

_load_workspaceMethod · 0.95
ConfigLoaderClass · 0.85
loadMethod · 0.80

Tested by

no test coverage detected