mirror of
https://github.com/VectifyAI/PageIndex.git
synced 2026-07-18 21:21:05 +02:00
fix(llm): configurable per-call litellm params instead of mutating the global
llm_completion / llm_acompletion (pageindex/utils.py and
pageindex/index/utils.py) set `litellm.drop_params = True` on the litellm
module. litellm is a process-wide singleton, so this leaked into every other
library sharing it (e.g. a host app like OpenKB that exposes its own litellm
config) and could not be turned off.
Replace the hardcoded `temperature=0` + global `drop_params` with a single
PageIndex-owned per-call kwargs mechanism (config._LLM_PARAMS):
- defaults preserve behavior: {"temperature": 0, "drop_params": True};
- passed per call via **get_llm_params(), never writing litellm's globals, so
nothing leaks into other litellm users in the same process;
- externally configurable: pageindex.set_llm_params(drop_params=False,
temperature=1, num_retries=5, ...) or the PAGEINDEX_DROP_PARAMS env shortcut;
- model/messages are reserved (PageIndex supplies them) and rejected.
This commit is contained in:
parent
f354eb17bf
commit
2cab6b5be9
4 changed files with 56 additions and 8 deletions
|
|
@ -6,7 +6,7 @@ from .retrieve import get_document, get_document_structure, get_page_content
|
|||
|
||||
# SDK exports
|
||||
from .client import PageIndexClient, LocalClient, CloudClient
|
||||
from .config import IndexConfig
|
||||
from .config import IndexConfig, set_llm_params
|
||||
from .collection import Collection
|
||||
from .parser.protocol import ContentNode, ParsedDocument, DocumentParser
|
||||
from .storage.protocol import StorageEngine
|
||||
|
|
@ -26,6 +26,7 @@ __all__ = [
|
|||
"LocalClient",
|
||||
"CloudClient",
|
||||
"IndexConfig",
|
||||
"set_llm_params",
|
||||
"Collection",
|
||||
"ContentNode",
|
||||
"ParsedDocument",
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue