refactor: Improve project Structure
This commit is contained in:
2
.gitignore
vendored
2
.gitignore
vendored
@@ -7,7 +7,7 @@ build/
|
||||
dist/
|
||||
wheels/
|
||||
*.egg-info
|
||||
|
||||
*.egg-info/
|
||||
# Virtual environments
|
||||
.venv
|
||||
.obsidian/
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
[project]
|
||||
name = "langchain-tutorial"
|
||||
name = "omnia"
|
||||
version = "0.1.0"
|
||||
description = "Add your description here"
|
||||
readme = "README.md"
|
||||
@@ -9,6 +9,17 @@ dependencies = [
|
||||
"langchain-community>=0.4.1",
|
||||
"langchain[llms]>=1.2.15",
|
||||
"llama-cpp-python>=0.3.20",
|
||||
"pip>=26.0.1",
|
||||
"rich>=13.9.4",
|
||||
"sentence-transformers>=5.4.0",
|
||||
]
|
||||
|
||||
[dependency-groups]
|
||||
dev = [
|
||||
"omnia",
|
||||
]
|
||||
|
||||
[tool.uv.sources]
|
||||
omnia = { workspace = true }
|
||||
|
||||
|
||||
|
||||
0
src/__init__.py
Normal file
0
src/__init__.py
Normal file
0
src/omnia/__init__.py
Normal file
0
src/omnia/__init__.py
Normal file
@@ -2,9 +2,9 @@ import logging
|
||||
|
||||
from langchain_core.messages import HumanMessage, SystemMessage
|
||||
|
||||
from llm_runtime import _format_prompt, _normalize_llm_output, llm
|
||||
from memory import EntityMemory, MemoryEntry
|
||||
from time_utils import WorldClock
|
||||
from omnia.llm_runtime import _format_prompt, _normalize_llm_output, llm
|
||||
from omnia.memory import EntityMemory, MemoryEntry
|
||||
from omnia.time_utils import WorldClock
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
import logging
|
||||
|
||||
from entities import Player
|
||||
from interaction import ask_entity
|
||||
from spatial_graph import SpatialGraph
|
||||
from time_utils import WorldClock
|
||||
from world_architect import WorldState
|
||||
from omnia.entities import Player
|
||||
from omnia.interaction import ask_entity
|
||||
from omnia.spatial_graph import SpatialGraph
|
||||
from omnia.time_utils import WorldClock
|
||||
from omnia.world_architect import WorldState
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
@@ -2,11 +2,11 @@ import logging
|
||||
|
||||
from langchain_core.messages import HumanMessage, SystemMessage
|
||||
|
||||
from entities import Entity
|
||||
from llm_runtime import _format_prompt, _normalize_llm_output, llm
|
||||
from spatial_graph import SpatialGraph
|
||||
from time_utils import WorldClock, describe_relative_time
|
||||
from world_architect import invoke_architect, apply_state_delta, WorldState
|
||||
from omnia.entities import Entity
|
||||
from omnia.llm_runtime import _format_prompt, _normalize_llm_output, llm
|
||||
from omnia.spatial_graph import SpatialGraph
|
||||
from omnia.time_utils import WorldClock, describe_relative_time
|
||||
from omnia.world_architect import invoke_architect, apply_state_delta, WorldState
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
@@ -1,10 +1,11 @@
|
||||
from pathlib import Path
|
||||
|
||||
from game_loop import start_game
|
||||
from logging_setup import configure_logging
|
||||
from scenario_loader import load_scenario, save_scenario
|
||||
from omnia.game_loop import start_game
|
||||
from omnia.logging_setup import configure_logging
|
||||
from omnia.scenario_loader import load_scenario, save_scenario
|
||||
|
||||
SCENARIO_PATH = Path(__file__).with_name("demo.json")
|
||||
# Find demo.json in project root (go up from src/omnia to root)
|
||||
SCENARIO_PATH = Path(__file__).parent.parent.parent / "demo.json"
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
@@ -1,7 +1,7 @@
|
||||
from langchain_community.vectorstores import FAISS
|
||||
|
||||
from llm_runtime import embeddings
|
||||
from time_utils import describe_relative_time
|
||||
from omnia.llm_runtime import embeddings
|
||||
from omnia.time_utils import describe_relative_time
|
||||
|
||||
|
||||
class MemoryEntry:
|
||||
@@ -3,11 +3,11 @@ import logging
|
||||
from dataclasses import dataclass
|
||||
from pathlib import Path
|
||||
|
||||
from entities import Entity, Player
|
||||
from memory import MemoryEntry
|
||||
from spatial_graph import SpatialGraph
|
||||
from time_utils import WorldClock
|
||||
from world_architect import WorldState
|
||||
from omnia.entities import Entity, Player
|
||||
from omnia.memory import MemoryEntry
|
||||
from omnia.spatial_graph import SpatialGraph
|
||||
from omnia.time_utils import WorldClock
|
||||
from omnia.world_architect import WorldState
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
@@ -3,7 +3,7 @@ import logging
|
||||
from datetime import datetime, timedelta
|
||||
from typing import Any
|
||||
|
||||
from llm_runtime import llm, _normalize_llm_output, _format_prompt
|
||||
from omnia.llm_runtime import llm, _normalize_llm_output, _format_prompt
|
||||
from langchain_core.messages import HumanMessage, SystemMessage
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
65
uv.lock
generated
65
uv.lock
generated
@@ -751,29 +751,6 @@ wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/84/66/d9e0c3b83b0ad75ee746c51ba347cacecb8d656b96e1d513f3e334d1ccab/langchain_text_splitters-1.1.1-py3-none-any.whl", hash = "sha256:5ed0d7bf314ba925041e7d7d17cd8b10f688300d5415fb26c29442f061e329dc", size = 35734, upload-time = "2026-02-18T23:02:41.913Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "langchain-tutorial"
|
||||
version = "0.1.0"
|
||||
source = { virtual = "." }
|
||||
dependencies = [
|
||||
{ name = "faiss-cpu" },
|
||||
{ name = "langchain" },
|
||||
{ name = "langchain-community" },
|
||||
{ name = "llama-cpp-python" },
|
||||
{ name = "rich" },
|
||||
{ name = "sentence-transformers" },
|
||||
]
|
||||
|
||||
[package.metadata]
|
||||
requires-dist = [
|
||||
{ name = "faiss-cpu", specifier = ">=1.13.2" },
|
||||
{ name = "langchain", extras = ["llms"], specifier = ">=1.2.15" },
|
||||
{ name = "langchain-community", specifier = ">=0.4.1" },
|
||||
{ name = "llama-cpp-python", specifier = ">=0.3.20" },
|
||||
{ name = "rich", specifier = ">=13.9.4" },
|
||||
{ name = "sentence-transformers", specifier = ">=5.4.0" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "langgraph"
|
||||
version = "1.1.6"
|
||||
@@ -1294,6 +1271,39 @@ wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/a8/64/3708a90d1ebe202ffdeb7185f878a3c84d15c2b2c31858da2ce0583e2def/nvidia_nvtx-13.0.85-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:cb7780edb6b14107373c835bf8b72e7a178bac7367e23da7acb108f973f157a6", size = 148878, upload-time = "2025-09-04T08:28:53.627Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "omnia"
|
||||
version = "0.1.0"
|
||||
source = { virtual = "." }
|
||||
dependencies = [
|
||||
{ name = "faiss-cpu" },
|
||||
{ name = "langchain" },
|
||||
{ name = "langchain-community" },
|
||||
{ name = "llama-cpp-python" },
|
||||
{ name = "pip" },
|
||||
{ name = "rich" },
|
||||
{ name = "sentence-transformers" },
|
||||
]
|
||||
|
||||
[package.dev-dependencies]
|
||||
dev = [
|
||||
{ name = "omnia" },
|
||||
]
|
||||
|
||||
[package.metadata]
|
||||
requires-dist = [
|
||||
{ name = "faiss-cpu", specifier = ">=1.13.2" },
|
||||
{ name = "langchain", extras = ["llms"], specifier = ">=1.2.15" },
|
||||
{ name = "langchain-community", specifier = ">=0.4.1" },
|
||||
{ name = "llama-cpp-python", specifier = ">=0.3.20" },
|
||||
{ name = "pip", specifier = ">=26.0.1" },
|
||||
{ name = "rich", specifier = ">=13.9.4" },
|
||||
{ name = "sentence-transformers", specifier = ">=5.4.0" },
|
||||
]
|
||||
|
||||
[package.metadata.requires-dev]
|
||||
dev = [{ name = "omnia", virtual = "." }]
|
||||
|
||||
[[package]]
|
||||
name = "orjson"
|
||||
version = "3.11.8"
|
||||
@@ -1395,6 +1405,15 @@ wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/b7/b9/c538f279a4e237a006a2c98387d081e9eb060d203d8ed34467cc0f0b9b53/packaging-26.0-py3-none-any.whl", hash = "sha256:b36f1fef9334a5588b4166f8bcd26a14e521f2b55e6b9de3aaa80d3ff7a37529", size = 74366, upload-time = "2026-01-21T20:50:37.788Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "pip"
|
||||
version = "26.0.1"
|
||||
source = { registry = "https://pypi.org/simple" }
|
||||
sdist = { url = "https://files.pythonhosted.org/packages/48/83/0d7d4e9efe3344b8e2fe25d93be44f64b65364d3c8d7bc6dc90198d5422e/pip-26.0.1.tar.gz", hash = "sha256:c4037d8a277c89b320abe636d59f91e6d0922d08a05b60e85e53b296613346d8", size = 1812747, upload-time = "2026-02-05T02:20:18.702Z" }
|
||||
wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/de/f0/c81e05b613866b76d2d1066490adf1a3dbc4ee9d9c839961c3fc8a6997af/pip-26.0.1-py3-none-any.whl", hash = "sha256:bdb1b08f4274833d62c1aa29e20907365a2ceb950410df15fc9521bad440122b", size = 1787723, upload-time = "2026-02-05T02:20:16.416Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "propcache"
|
||||
version = "0.4.1"
|
||||
|
||||
Reference in New Issue
Block a user