Merge pull request #174 from topoteretes/COG-472-config-fixes
fix: Fix cognee graphistry and llm configuration through code
This commit is contained in:
commit
10fb9745f3
3 changed files with 37 additions and 19 deletions
|
|
@ -59,7 +59,7 @@ os.environ["LLM_API_KEY"] = "YOUR OPENAI_API_KEY"
|
|||
or
|
||||
```
|
||||
import cognee
|
||||
cognee.config.llm_api_key = "YOUR_OPENAI_API_KEY"
|
||||
cognee.config.set_llm_api_key("YOUR_OPENAI_API_KEY")
|
||||
```
|
||||
You can also set the variables by creating .env file, here is our <a href="https://github.com/topoteretes/cognee/blob/main/.env.template">template.</a>
|
||||
To use different LLM providers, for more info check out our <a href="https://topoteretes.github.io/cognee">documentation</a>
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@ from cognee.modules.cognify.config import get_cognify_config
|
|||
from cognee.infrastructure.data.chunking.config import get_chunk_config
|
||||
from cognee.infrastructure.databases.vector import get_vectordb_config
|
||||
from cognee.infrastructure.databases.graph.config import get_graph_config
|
||||
from cognee.infrastructure.llm.config import get_llm_config
|
||||
from cognee.infrastructure.databases.relational import get_relational_config
|
||||
from cognee.infrastructure.files.storage import LocalStorage
|
||||
|
||||
|
|
@ -55,19 +56,36 @@ class config():
|
|||
graph_config.graph_database_provider = graph_database_provider
|
||||
|
||||
@staticmethod
|
||||
def llm_provider(llm_provider: str):
|
||||
graph_config = get_graph_config()
|
||||
graph_config.llm_provider = llm_provider
|
||||
def set_llm_provider(llm_provider: str):
|
||||
llm_config = get_llm_config()
|
||||
llm_config.llm_provider = llm_provider
|
||||
|
||||
@staticmethod
|
||||
def llm_endpoint(llm_endpoint: str):
|
||||
graph_config = get_graph_config()
|
||||
graph_config.llm_endpoint = llm_endpoint
|
||||
def set_llm_endpoint(llm_endpoint: str):
|
||||
llm_config = get_llm_config()
|
||||
llm_config.llm_endpoint = llm_endpoint
|
||||
|
||||
@staticmethod
|
||||
def llm_model(llm_model: str):
|
||||
graph_config = get_graph_config()
|
||||
graph_config.llm_model = llm_model
|
||||
def set_llm_model(llm_model: str):
|
||||
llm_config = get_llm_config()
|
||||
llm_config.llm_model = llm_model
|
||||
|
||||
@staticmethod
|
||||
def set_llm_api_key(llm_api_key: str):
|
||||
llm_config = get_llm_config()
|
||||
llm_config.llm_api_key = llm_api_key
|
||||
|
||||
@staticmethod
|
||||
def set_llm_config(config_dict: dict):
|
||||
"""
|
||||
Updates the llm config with values from config_dict.
|
||||
"""
|
||||
llm_config = get_llm_config()
|
||||
for key, value in config_dict.items():
|
||||
if hasattr(llm_config, key):
|
||||
object.__setattr__(llm_config, key, value)
|
||||
else:
|
||||
raise AttributeError(f"'{key}' is not a valid attribute of the config.")
|
||||
|
||||
@staticmethod
|
||||
def set_chunk_strategy(chunk_strategy: object):
|
||||
|
|
@ -137,5 +155,5 @@ class config():
|
|||
if "username" not in graphistry_config or "password" not in graphistry_config:
|
||||
raise ValueError("graphistry_config dictionary must contain 'username' and 'password' keys.")
|
||||
|
||||
base_config.graphistry_username = graphistry_config.username
|
||||
base_config.graphistry_password = graphistry_config.password
|
||||
base_config.graphistry_username = graphistry_config.get("username")
|
||||
base_config.graphistry_password = graphistry_config.get("password")
|
||||
|
|
|
|||
|
|
@ -14,9 +14,11 @@ Check available configuration options:
|
|||
from cognee.infrastructure.databases.vector import get_vectordb_config
|
||||
from cognee.infrastructure.databases.graph.config import get_graph_config
|
||||
from cognee.infrastructure.databases.relational import get_relational_config
|
||||
from cognee.infrastructure.llm.config import get_llm_config
|
||||
print(get_vectordb_config().to_dict())
|
||||
print(get_graph_config().to_dict())
|
||||
print(get_relational_config().to_dict())
|
||||
print(get_llm_config().to_dict())
|
||||
|
||||
```
|
||||
|
||||
|
|
@ -29,8 +31,7 @@ GRAPH_DATABASE_PROVIDER = 'lancedb'
|
|||
Otherwise, you can set the configuration yourself:
|
||||
|
||||
```python
|
||||
|
||||
cognee.config.llm_provider = 'ollama'
|
||||
cognee.config.set_llm_provider('ollama')
|
||||
```
|
||||
|
||||
## 🚀 Getting Started with Local Models
|
||||
|
|
@ -52,15 +53,14 @@ LLM_PROVIDER = 'ollama'
|
|||
Otherwise, you can set the configuration for the model:
|
||||
|
||||
```bash
|
||||
cognee.config.llm_provider = 'ollama'
|
||||
cognee.config.set_llm_provider('ollama')
|
||||
|
||||
```
|
||||
You can also set the HOST and model name:
|
||||
|
||||
```bash
|
||||
|
||||
cognee.config.llm_endpoint = "http://localhost:11434/v1"
|
||||
cognee.config.llm_model = "mistral:instruct"
|
||||
cognee.config.set_llm_endpoint("http://localhost:11434/v1")
|
||||
cognee.config.set_llm_model("mistral:instruct")
|
||||
```
|
||||
|
||||
|
||||
|
|
@ -73,7 +73,7 @@ LLM_PROVIDER = 'custom'
|
|||
Otherwise, you can set the configuration for the model:
|
||||
|
||||
```bash
|
||||
cognee.config.llm_provider = 'custom'
|
||||
cognee.config.set_llm_provider('custom')
|
||||
|
||||
```
|
||||
You can also set the HOST and model name:
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue