ð§ NexusMind
ããŒã«ã«ð§ NexusMind ã«ã€ããŠ
NexusMindã¯ãã°ã©ãæ§é ãšNeo4jããŒã¿ããŒã¹ãçšããŠè€éãªã¯ãšãªãåŠçãããç ç©¶åãã®ç§åŠæšè«ãã¬ãŒã ã¯ãŒã¯ã§ããMCPã§Claude Desktopãªã©ã®AIã¢ããªãšé£æºããè€æ°ã®èгç¹ããä¿¡é ŒåºŠãè©äŸ¡ããŸãã
äž»ãªæ©èœ
- 01ã°ã©ãããŒã¹ã®ç§åŠæšè«
- 02Neo4jãçšããæšè«ãã€ãã©ã€ã³
- 03倿¬¡å ã®ä¿¡é ŒåºŠã¹ã³ã¢ãªã³ã°
- 04ã¢ãžã¥ãŒã«åã®Pythonã»FastAPIã¢ããª
- 05Dockerãããã€å¯Ÿå¿
掻çšã·ãŒã³
- 01è€éãªç§åŠçåãã®åæ
- 02ç ç©¶æŠå¿µéã®é¢ä¿ã®æ€èš
MCP 察å¿
Claude Desktopãªã©ã®AIã¯ã©ã€ã¢ã³ããç§åŠæšè«ã¯ãšãªãéä¿¡ããå¿çãåãåãããã®MCPãšã³ããã€ã³ããæäŸããŸãã
èšå®
ããŒã«ã«ãµãŒããŒã®èšå®ã¯ã©ã®ã¯ã©ã€ã¢ã³ãã§ãå ±éã§ããã³ããŒããŠã¯ã©ã€ã¢ã³ãã® MCP èšå®ãã¡ã€ã«ã«è²Œãä»ããŠãã ããã
ãã®ãµãŒããŒã®ããã±ãŒãžããªã¢ãŒããšã³ããã€ã³ãã¯ãŸã ååŸã§ããŠããŸããããããžã§ã¯ãã® README ã®æé ã«åŸã£ãŠãã ããã
ããŒã«
ããŒã«ã«ãµãŒããŒã®ããŒã«ã¯ãã·ã³äžã§èµ·åããŠåããŠååŸã§ããŸããã¡ã³ãããŒã¯ãŸã ããŒã«äžèЧãæäŸããŠããŸããã
詳现
ð§ NexusMind
ââââââââââââââââââââââââââââââââââââââââ
â â
â ð§ NexusMind ð§ â
â â
â Intelligent Scientific â
â Reasoning through â
â Graph-of-Thoughts â
â â
ââââââââââââââââââââââââââââââââââââââââ
Graph-of-Thoughts ã«ããã€ã³ããªãžã§ã³ããªç§åŠçæšè«
ð ç§åŠç ç©¶åãæ¬¡äžä»£ AI æšè«ãã¬ãŒã ã¯ãŒã¯
ã°ã©ãæ§é ãæŽ»çšããAI ã·ã¹ãã ã«ããç§åŠçæšè«ã®æ¹æ³ãå€é©ããŸã
ð ããã¥ã¡ã³ã
詳现ãªã€ã³ã¹ããŒã«æé ã䜿çšã¬ã€ããèšå®ãªãã·ã§ã³ãAPI ãªãã¡ã¬ã³ã¹ãè²¢ç®ã¬ã€ãã©ã€ã³ããããžã§ã¯ãã®ããŒãããããªã©ãNexusMind ã«é¢ããå æ¬çãªæ å ±ã«ã€ããŠã¯ã以äžã®å®å šçããã¥ã¡ã³ããµã€ããã芧ãã ããã
â¡ïž NexusMind ããã¥ã¡ã³ããµã€ã (æ³šïŒæ°ããã¯ãŒã¯ãããŒã§ GitHub Pages ãµã€ãããããã€ããããšããã®ãªã³ã¯ãæå¹ã«ãªããŸãã)
ð æŠèŠ
NexusMind ã¯ãNeo4j ã°ã©ãããŒã¿ããŒã¹ã掻çšããŠé«åºŠãªç§åŠçæšè«ãå®è¡ãããã€ãã©ã€ã³ã®åã¹ããŒãžå ã§ã°ã©ãæäœã管çããŸãã**Model Context ProtocolïŒMCPïŒ**ãå®è£ ããããšã§ãClaude Desktop ãªã©ã® AI ã¢ããªã±ãŒã·ã§ã³ãšé£æºããŸããè€éãªç ç©¶ã¿ã¹ã¯åãã«èšèšããããAdvanced Scientific Reasoning Graph-of-ThoughtsïŒASR-GoTïŒãã¬ãŒã ã¯ãŒã¯ãæäŸããŸãã
äž»ãªç¹é·ïŒ
- ã°ã©ãããŒã¹ã®æšè«ã䜿çšããŠè€éãªç§åŠçã¯ãšãªãåŠç
- 倿¬¡å è©äŸ¡ã«ããåçãªä¿¡é ŒåºŠã¹ã³ã¢ãªã³ã°
- é«ãããã©ãŒãã³ã¹ãå®çŸãããææ°ã® Python ãš FastAPI ã«ããæ§ç¯
- ãããã€ã容æãª Docker å
- æ¡åŒµãã«ã¹ã¿ãã€ãºã«å¯Ÿå¿ããã¢ãžã¥ãŒã«èšèš
- MCP ãããã³ã«ãä»ãã Claude Desktop ãšã®é£æº
ð ãããžã§ã¯ãæ§æ
ãããžã§ã¯ãã¯æ¬¡ã®ããã«æ§æãããŠããŸãïŒè©³ããã¯ããã¥ã¡ã³ããµã€ããã芧ãã ããïŒã
NexusMind/
âââ ð .github/ # GitHub specific files (workflows)
âââ ð config/ # Configuration files (settings.yaml)
âââ ð docs_src/ # Source files for MkDocs documentation
âââ ð src/ # Source code
â âââ ð asr_got_reimagined/ # Main application package
âââ ð tests/ # Test suite
âââ Dockerfile # Docker container definition
âââ docker-compose.yml # Docker Compose for development
âââ docker-compose.prod.yml # Docker Compose for production
âââ mkdocs.yml # MkDocs configuration
âââ poetry.lock # Poetry dependency lock file
âââ pyproject.toml # Python project configuration (Poetry)
âââ pyrightconfig.json # Pyright type checker configuration
âââ README.md # This file
âââ setup_claude_connection.py # Script for Claude Desktop connection setup (manual run)
ð ã¯ããã«
ãããã€ã®åææ¡ä»¶
NexusMind ãå®è¡ããåã«ïŒNeo4j ãå«ãæäŸæžã¿ã® docker-compose.prod.yml ã䜿çšãããããŒã«ã«ãŸã㯠Docker çµç±ã§å®è¡ããå ŽåïŒãæ¬¡ã®æ¡ä»¶ãæºãããŠããããšã確èªããŠãã ããã
-
皌åäžã® Neo4j ã€ã³ã¹ã¿ã³ã¹ïŒNexusMind 㯠Neo4j ã°ã©ãããŒã¿ããŒã¹ãžã®æ¥ç¶ãå¿ èŠãšããŸãã
- APOC ã©ã€ãã©ãªïŒéèŠãªç¹ãšããŠãNeo4j ã€ã³ã¹ã¿ã³ã¹ã«ã¯ APOCïŒAwesome Procedures On CypherïŒã©ã€ãã©ãªãã€ã³ã¹ããŒã«ãããŠããå¿
èŠããããŸããã¢ããªã±ãŒã·ã§ã³ã®æšè«ã¹ããŒãžã§äœ¿çšãããè€æ°ã® Cypher ã¯ãšãªã¯ãAPOC ã®ããã·ãŒãžã£ïŒäŸïŒ
apoc.create.addLabelsãapoc.merge.nodeïŒãå©çšããŠããŸããAPOC ããªãå Žåãã¢ããªã±ãŒã·ã§ã³ã¯æ£ããåäœããŸãããã€ã³ã¹ããŒã«æé ã«ã€ããŠã¯APOC å ¬åŒãµã€ããã芧ãã ããã - èšå®ïŒ
config/settings.yamlïŒãŸãã¯å¯Ÿå¿ããç°å¢å€æ°ïŒã§ãNeo4j ã€ã³ã¹ã¿ã³ã¹ã® URIããŠãŒã¶ãŒåããã¹ã¯ãŒããæ£ããæå®ãããŠããããšã確èªããŠãã ããã - ã€ã³ããã¯ã¹äœæïŒæé©ãªããã©ãŒãã³ã¹ãåŸãã«ã¯ãé©å㪠Neo4j ã€ã³ããã¯ã¹ãäœæãããŠããããšã確èªããŠãã ããã詳ããã¯Neo4j ã®ã€ã³ããã¯ã¹æŠç¥ãã芧ãã ããã
æ³šïŒæäŸæžã¿ã®
docker-compose.ymlïŒéçºçšïŒãšdocker-compose.prod.ymlïŒæ¬çªçšïŒã«ã¯ãAPOC ã©ã€ãã©ãªããããããèšå®ããã Neo4j ãµãŒãã¹ãå«ãŸããŠãããããDocker Compose ã䜿çšããå Žåã¯ãã®èŠä»¶ãæºãããŠããŸãã - APOC ã©ã€ãã©ãªïŒéèŠãªç¹ãšããŠãNeo4j ã€ã³ã¹ã¿ã³ã¹ã«ã¯ APOCïŒAwesome Procedures On CypherïŒã©ã€ãã©ãªãã€ã³ã¹ããŒã«ãããŠããå¿
èŠããããŸããã¢ããªã±ãŒã·ã§ã³ã®æšè«ã¹ããŒãžã§äœ¿çšãããè€æ°ã® Cypher ã¯ãšãªã¯ãAPOC ã®ããã·ãŒãžã£ïŒäŸïŒ
åææ¡ä»¶
- Python 3.11+ïŒ
pyproject.tomlã§æå®ãäŸïŒDocker ã€ã¡ãŒãžã§ã¯ Python 3.11.xã3.12.xããŸã㯠3.13.x ã䜿çšïŒ - PoetryïŒäŸåé¢ä¿ã®ç®¡çã«äœ¿çš
- Docker ããã³ Docker ComposeïŒã³ã³ããåããããããã€ã«äœ¿çš
ã€ã³ã¹ããŒã«ãšã»ããã¢ããïŒããŒã«ã«éçºïŒ
-
ãªããžããªãã¯ããŒã³ããŸãïŒ
git clone https://github.com/SaptaDey/NexusMind.git cd NexusMind -
Poetry ã䜿ã£ãŠäŸåé¢ä¿ãã€ã³ã¹ããŒã«ããŸãïŒ
poetry installããã«ããä»®æ³ç°å¢ãäœæããã
pyproject.tomlã«æå®ãããŠããå¿ èŠãªããã±ãŒãžããã¹ãŠã€ã³ã¹ããŒã«ãããŸãã -
ä»®æ³ç°å¢ãæå¹ã«ããŸãïŒ
poetry shell -
ã¢ããªã±ãŒã·ã§ã³ãèšå®ããŸãïŒ
# Copy example configuration cp config/settings.example.yaml config/settings.yaml # Edit configuration as needed vim config/settings.yaml -
ç°å¢å€æ°ãèšå®ããŸãïŒä»»æïŒïŒ
# Create .env file for sensitive configuration echo "LOG_LEVEL=DEBUG" > .env echo "API_HOST=0.0.0.0" >> .env echo "API_PORT=8000" >> .env -
éçºãµãŒããŒãå®è¡ããŸãïŒ
python src/asr_got_reimagined/main.pyãŸãã¯ããã现ããå¶åŸ¡ããã«ã¯ïŒ
uvicorn asr_got_reimagined.main:app --reload --host 0.0.0.0 --port 8000API ã¯
http://localhost:8000ã§å©çšã§ããŸãã
Docker ã«ãããããã€
graph TB
subgraph "Development Environment"
A[ðšâð» Developer] --> B[ð³ Docker Compose]
end
subgraph "Container Orchestration"
B --> C[ðŠ NexusMind Container]
B --> D[ð Monitoring Container]
B --> E[ðïž Database Container]
end
subgraph "NexusMind Application"
C --> F[â¡ FastAPI Server]
F --> G[ð§ ASR-GoT Engine]
F --> H[ð MCP Protocol]
end
subgraph "External Integrations"
H --> I[ð€ Claude Desktop]
H --> J[ð Other AI Clients]
end
style A fill:#e1f5fe
style B fill:#f3e5f5
style C fill:#e8f5e8
style F fill:#fff3e0
style G fill:#ffebee
style H fill:#f1f8e9
-
Docker Compose ã«ããã¯ã€ãã¯ã¹ã¿ãŒãïŒ
# Build and run all services docker-compose up --build # For detached mode (background) docker-compose up --build -d # View logs docker-compose logs -f nexusmind -
åå¥ã® Docker ã³ã³ãããŒïŒ
# Build the image docker build -t nexusmind:latest . # Run the container docker run -p 8000:8000 -v $(pwd)/config:/app/config nexusmind:latest -
æ¬çªç°å¢ãžã®ãããã€ïŒ
# Use production compose file docker-compose -f docker-compose.prod.yml up --build -d
ç¹å®ã®ãããã€ãã©ãããã©ãŒã ã«é¢ããæ³šæäºé
- Smithery.aiïŒSmithery.ai ãã©ãããã©ãŒã ãžã®ãããã€ã§ã¯ãéåžžãæäŸãããŠãã Docker ã€ã¡ãŒãžããã®ãŸãŸäœ¿çšããŸãã
- ã«ã¹ã¿ã Docker ã€ã¡ãŒãžã®ãããã€æé ã«ã€ããŠã¯ãSmithery.ai ã®å ¬åŒããã¥ã¡ã³ããåç §ããŠãã ããã
- ããŒãèšå®ïŒNexusMind ã³ã³ãããŒã§ããŒã 8000ïŒãŸãã¯
APP_PORTã§èšå®ããããŒããäžæžããããŠããå ŽåïŒãå ¬éããããããã©ãããã©ãŒã ãèšå®ãããŠããããšã確èªããŠãã ããããã㯠FastAPI ã¢ããªã±ãŒã·ã§ã³ãããã©ã«ãã§äœ¿çšããããŒãã§ãã - ãã«ã¹ãã§ãã¯ïŒSmithery.ai ã¯ãã³ã³ãããŒã®ç¶æ
ãç£èŠããããã«ãã«ã¹ãã§ãã¯ã䜿çšããå ŽåããããŸããNexusMind ã® Docker ã€ã¡ãŒãžã«ã¯ã
/healthãšã³ããã€ã³ãïŒäŸïŒhttp://localhost:8000/healthïŒã確èªããHEALTHCHECKåœä»€ãå«ãŸããŠããŸããSmithery.ai ã§ç¹å®ã®ãã«ã¹ãã§ãã¯ãã¹ãå¿ èŠãªå Žåã¯ããã®ãšã³ããã€ã³ãã䜿çšããããã«èšå®ããŠãã ããã - æäŸãããŠãã
Dockerfileãšdocker-compose.prod.ymlã¯ãã³ã³ãããŒã®ã»ããã¢ãããçè§£ããããã®ããŒã¹ã©ã€ã³ã§ããSmithery.ai ã®èŠä»¶ã«å¿ããŠèª¿æŽããŠãã ããã
- ãµãŒãã¹ã«ã¢ã¯ã»ã¹ããŸãïŒ
- API ããã¥ã¡ã³ãïŒ
http://localhost:8000/docs - ãã«ã¹ãã§ãã¯ïŒ
http://localhost:8000/health - MCP ãšã³ããã€ã³ãïŒ
http://localhost:8000/mcp
- API ããã¥ã¡ã³ãïŒ
ð API ãšã³ããã€ã³ã
NexusMind ãå ¬éãã䞻㪠API ãšã³ããã€ã³ãã¯æ¬¡ã®ãšããã§ãã
-
MCP ãããã³ã«ãšã³ããã€ã³ãïŒ
POST /mcp- ãã®ãšã³ããã€ã³ãã¯ãClaude Desktop ãªã©ã® MCP ã¯ã©ã€ã¢ã³ããšã®éä¿¡ã«äœ¿çšããŸãã
asr_got.queryã¡ãœããã®ãªã¯ãšã¹ãäŸïŒ{ "jsonrpc": "2.0", "method": "asr_got.query", "params": { "query": "ãã€ã¯ããã€ãªãŒã ã®å€æ§æ§ãšããã®é²è¡ãšã®é¢ä¿ãåæããŠãã ããã", "parameters": { "include_reasoning_trace": true, "include_graph_state": false } }, "id": "123" }- ã»ãã«ã
initializeãšshutdownã® MCP ã¡ãœããããµããŒãããŠããŸãã
-
ãã«ã¹ãã§ãã¯ãšã³ããã€ã³ãïŒ
GET /health- ã¢ããªã±ãŒã·ã§ã³ã®ç°¡æçãªãã«ã¹ã¹ããŒã¿ã¹ãè¿ããŸãã
- ã¬ã¹ãã³ã¹äŸïŒ
ïŒæ³šïŒä»¥åã«ç€ºãããŠããã¿ã€ã ã¹ã¿ã³ããã£ãŒã«ãã¯ãçŸåšã®ãã«ã¹ãã§ãã¯ã¬ã¹ãã³ã¹ã«ã¯å«ãŸããŠããŸãããïŒ{ "status": "healthy", "version": "0.1.0" }
以åã«èšèŒãããŠããé«åºŠãª API ãšã³ããã€ã³ãïŒäŸïŒ/api/v1/graph/queryïŒã¯ãçŸåšã®ããŒãžã§ã³ã§ã¯å®è£
ãããŠããããå°æ¥ã®éçºã«åããŠäºçŽãããŠããŸãã
ã»ãã·ã§ã³ã®åŠçïŒsession_idïŒ
çŸåšãAPI ãªã¯ãšã¹ãïŒäŸïŒasr_got.queryïŒã§å©çšã§ããã¬ã¹ãã³ã¹ã«ãå«ãŸãã session_id ãã©ã¡ãŒã¿ãŒã¯ãäž»ã«åäžã®å®å
šãªã¯ãšãªãšã¬ã¹ãã³ã¹ã®ãµã€ã¯ã«ãèå¥ãã远跡ããããã«äœ¿ãããŠããŸãããŸããé²è¡ç¶æ³éç¥ïŒgot/queryProgress ãªã©ïŒãå
ã®ã¯ãšãªãšé¢é£ä»ããããã«ã䜿çšãããŸãã
ã·ã¹ãã 㯠session_id ãçæããŠå©çšããŸãããNexusMind ã¯çŸåšãåã session_id ã䜿ã£ãåŸç¶ã®ã¯ãšãªã«å¯ŸããŠã以åã®ã¯ãšãªã®è©³çްãªã°ã©ãç¶æ
ãæšè«ã³ã³ããã¹ããèªåçã«èªã¿èŸŒãã§åå©çšãããçã®ãã«ãã¿ãŒã³äŒè©±ã®ç¶ç¶ã«ã¯å¯Ÿå¿ããŠããŸãããçŸæç¹ã§ã¯ãåã¯ãšãªã¯åå¥ã«åŠçãããŸãã
å°æ¥çãªæ©èœåŒ·åïŒã»ãã·ã§ã³ã®æ°žç¶å
NexusMind ã®å°æ¥çãªæ©èœåŒ·åãšããŠãã»ãã·ã§ã³ã®æ°žç¶åãèããããŸããããã«ããããŠãŒã¶ãŒã¯æ¬¡ã®ããšãå¯èœã«ãªãããã察話çã§çºå±æ§ã®ããæšè«ããã»ã¹ãå®çŸã§ããŸãã
- ç¶æ
ã®æ°žç¶åïŒ ã¯ãšãªããçæãããã°ã©ãã®ç¶æ
ãšé¢é£ããæšè«ã³ã³ããã¹ããããã®
session_idã«é¢é£ä»ããŠä¿åããŸããä¿åå ãšããŠã¯ãNeo4j ããŒã¿ããŒã¹ãèããããŸãã - ç¶æ
ã®åèªã¿èŸŒã¿ïŒ æ¢åã®
session_idãæå®ããŠæ°ããã¯ãšãªãéä¿¡ãããéã«ãä¿åæžã¿ã®ç¶æ ãèªã¿èŸŒã¿ããã®åŸã®åŠçã®éå§ç¹ãšããŠäœ¿çšããŸãã - ä¿®æ£ãšæ¡åŒµïŒ æ°ããã¯ãšãªã§èªã¿èŸŒãã ã°ã©ããæäœã§ããããã«ããŸããããšãã°ã以åã®ä»®èª¬ãä¿®æ£ããããæ¢åã®æ§é ã«æ°ããªèšŒæ ã远å ãããã確ç«ãããã³ã³ããã¹ãã«åºã¥ããŠå¥ã®æšè«çµè·¯ãæ¢çŽ¢ãããã§ããŸãã
ã»ãã·ã§ã³ã®æ°žç¶åãå®è£ ããã«ã¯ã次ã®ãããªå ç¢ãªæ¹æ³ãéçºããå¿ èŠããããŸãã
- Neo4j ã§ã»ãã·ã§ã³åºæã®ã°ã©ãããŒã¿ãå¹ççã«ä¿åããã³ååŸããæ¹æ³ã
- ã»ãã·ã§ã³ããŒã¿ã®ã©ã€ããµã€ã¯ã«ïŒäœæãæŽæ°ãæå¹æéåããªã©ïŒã管çããæ¹æ³ã
- æ°ããã¯ãšãªãæ¢åã®ã»ãã·ã§ã³ã³ã³ããã¹ãããã³ã°ã©ãã«çµ±åãåæ ããŸãã¯æ¡åŒµããããã®é«åºŠãªããžãã¯ã®èšèšã
ããã¯ãNexusMind ã®å¯Ÿè©±æ©èœãå€§å¹ ã«åŒ·åã§ããéèŠãªæ©èœã§ããã»ãã·ã§ã³ã®æ°žç¶åæ©èœã®èšèšãšå®è£ ã«é¢ããã³ãã¥ããã£ããã®è²¢ç®ãæè¿ããŸãã
å°æ¥çãªæ©èœåŒ·åïŒéåæããã³äžŠåã®ã¹ããŒãžå®è¡
çŸåšãNexusMind ã®æšè«ãã€ãã©ã€ã³ã® 8 ã€ã®ã¹ããŒãžã¯é 次å®è¡ãããŸããè€éãªã¯ãšãªã«å¯Ÿå¿ããå Žåããããã©ãŒãã³ã¹ãããã«æé©åããå Žåãäžéšã®ãã€ãã©ã€ã³åŠçãéåæãŸãã¯äžŠåã§å®è¡ããæ¹æ³ãæ€èšããããšããå°æ¥çãªæ©èœåŒ·åãšããŠèããããŸãã
䞊ååã§ããå¯èœæ§ã®ããé åïŒ
- 仮説ã®çæïŒ
HypothesisStageã¯ãDecompositionStageã§ç¹å®ããã忬¡å ã«ã€ããŠä»®èª¬ãçæããŸããäºãã«ç¬ç«ããç°ãªã次å ã®ä»®èª¬ãçæããåŠçã¯ã䞊ååã§ããå¯èœæ§ããããŸããããšãã°ã3 ã€ã®æ¬¡å ã«åè§£ãããå Žåãããããã®æ¬¡å ã®ä»®èª¬ãçæãã 3 ã€ã®äžŠåã¿ã¹ã¯ãå®è¡ã§ããŸãã - 蚌æ ã®çµ±åïŒäžéšïŒïŒ
EvidenceStageã§è©äŸ¡å¯Ÿè±¡ãšããŠè€æ°ã®ä»®èª¬ãéžæãããå Žåããããã®ç°ãªã仮説ã«å¯Ÿãããèšç»ã®å®è¡ããã§ãŒãºïŒèšŒæ åéã®ã·ãã¥ã¬ãŒã·ã§ã³ïŒãåæã«å®è¡ã§ããå¯èœæ§ããããŸãã
課é¡ãšèæ ®äºé ïŒ
ã¹ããŒãžã®äžŠåå®è¡ãå®è£ ãããšãæ éãªç®¡çãå¿ èŠãªè€éããçããŸãã
- ããŒã¿ã®æŽåæ§ïŒ åæå®è¡ãããåŠçãç¹ã« Neo4j ããŒã¿ããŒã¹ãžã®æžã蟌ã¿ïŒè€æ°ã®ä»®èª¬ããŒãã蚌æ ããŒããåæã«äœæããå Žåãªã©ïŒã¯ãããŒã¿ã®å®å šæ§ã確ä¿ããç«¶åç¶æ ãåé¿ã§ããããæ éã«åŠçããå¿ èŠããããŸãã䞊åå®è¡ã«å¯Ÿå¿ããå ç¢ãªäžæ ID ã®çææ¹åŒãå¿ èŠã§ãã
- ãã©ã³ã¶ã¯ã·ã§ã³ç®¡çïŒ åææžã蟌ã¿ã«å¯Ÿãã Neo4j ã®ãã©ã³ã¶ã¯ã·ã§ã³ãé©åã«ç®¡çããå¿ èŠããããŸãã
- äŸåé¢ä¿ã®ç®¡çïŒ ä»ã®ã¹ããŒãžã®åºåã«å®éã«äŸåããã¹ããŒãžïŒãŸãã¯ã¹ããŒãžã®äžéšïŒãæ£ããé åºã§å®è¡ãããããã«ããããšãéèŠã§ãã
- ãªãœãŒã¹ã®äœ¿çšïŒ 䞊åå®è¡ã«ãã£ãŠããªãœãŒã¹ïŒCPUãã¡ã¢ãªãããŒã¿ããŒã¹æ¥ç¶ïŒã®éèŠãå¢ããå¯èœæ§ããããŸãã
- è€éãïŒ
GoTProcessorå šäœã®å¶åŸ¡ãããŒãããè€éã«ãªããŸãã
çŸåšã®é 次å®è¡ã§ã¯æç¢ºã§ç®¡çããããããŒã¿ãããŒã確ä¿ãããŠããŸãããç¬ç«ããæ¬¡å ã®ä»®èª¬çæãªã©ã察象ãçµã£ã䞊ååã«ãããNexusMind ã®å°æ¥ã®ããŒãžã§ã³ã§ããã©ãŒãã³ã¹ãåäžããå¯èœæ§ããããŸããããã¯åŒãç¶ãç ç©¶éçºãæ±ããããåéã§ãã
𧪠ãã¹ããšå質ä¿èšŒ
| 𧪠ãã¹ã | ð åãã§ã㯠| âš ãªã³ãã£ã³ã° | ð ã«ãã¬ããž |
poetry run pytest make test |
poetry run mypy src/ pyright src/ |
poetry run ruff check . poetry run ruff format . |
poetry run pytest --cov=src coverage html |
éçºã³ãã³ã
# Run full test suite with coverage using Poetry
poetry run pytest --cov=src --cov-report=html --cov-report=term
# Or using Makefile for the default test run
make test
# Run specific test categories (using poetry)
poetry run pytest tests/unit/stages/ # Stage-specific tests
poetry run pytest tests/integration/ # Integration tests
poetry run pytest -k "test_confidence" # Tests matching pattern
# Type checking and linting (can also be run via Makefile targets: make lint, make check-types)
poetry run mypy src/ --strict # Strict type checking
poetry run ruff check . --fix # Auto-fix linting issues
poetry run ruff format . # Format code
# Pre-commit hooks (recommended)
poetry run pre-commit install # Install hooks
poetry run pre-commit run --all-files # Run all hooks
# See Makefile for other useful targets like 'make all-checks'.
ðºïž ããŒãããããšä»åŸã®å±æ
NexusMind ã®å°æ¥ã«ã¯ããããããããããªããžã§ã³ããããŸãïŒããŒããããã«ã¯ãã°ã©ãã®å¯èŠåã®åŒ·åãArxiv ãªã©ã®ããŒã¿ãœãŒã¹ãšã®é£æºãã³ã¢æšè«ãšã³ãžã³ã®ãããªãæ¹è¯ãå«ãŸããŠããŸãã
èšç»äžã®æ©èœãé·æç®æšã®è©³çްã«ã€ããŠã¯ãããŒããããïŒããã¥ã¡ã³ããµã€ããããã芧ããã ããŸãïŒãã確èªãã ããã
ðºïž ããŒãããããšä»åŸã®å±æ
NexusMind ã®å°æ¥ã«ã¯ããããããããããªããžã§ã³ããããŸãïŒããŒããããã«ã¯ãã°ã©ãã®å¯èŠåã®åŒ·åãArxiv ãªã©ã®ããŒã¿ãœãŒã¹ãšã®é£æºãã³ã¢æšè«ãšã³ãžã³ã®ãããªãæ¹è¯ãå«ãŸããŠããŸãã
èšç»äžã®æ©èœãé·æç®æšã®è©³çްã«ã€ããŠã¯ãããŒãããããã確èªãã ããã
ð€ ã³ã³ããªãã¥ãŒã·ã§ã³
ã³ã³ããªãã¥ãŒã·ã§ã³ãæè¿ããŸãïŒå§ãæ¹ããã©ã³ãæŠç¥ãã³ãŒãã¹ã¿ã€ã«ãªã©ã®è©³çްã«ã€ããŠã¯ãã³ã³ããªãã¥ãŒã·ã§ã³ã¬ã€ãã©ã€ã³ïŒããã¥ã¡ã³ããµã€ããããã芧ããã ããŸãïŒãã確èªãã ããã
ð ã©ã€ã»ã³ã¹
ãã®ãããžã§ã¯ã㯠Apache License 2.0 ã®äžã§ã©ã€ã»ã³ã¹ãããŠããŸããã©ã€ã»ã³ã¹ã
ð è¬èŸ
- ã°ã©ãåææ©èœãæäŸããŠããã NetworkX ã³ãã¥ããã£
- åªãããŠã§ããã¬ãŒã ã¯ãŒã¯ãæäŸããŠããã FastAPI ããŒã
- å ç¢ãªããŒã¿æ€èšŒãå®çŸãã Pydantic
- ã€ã³ã¹ãã¬ãŒã·ã§ã³ãšãã£ãŒãããã¯ãæäŸããŠãããç§åŠç ç©¶ã³ãã¥ããã£
ç§åŠç ç©¶ã³ãã¥ããã£ã®ããã« â€ïž ã蟌ããŠéçº
NexusMind - ã€ã³ããªãžã§ã³ããªã°ã©ãæ§é ãéããŠç§åŠçæšè«ãæšé²
ã³ã¡ã³ã
MCP ã¯åããŠã§ããïŒ
ãããã³ã«ã®æŠèŠããæåã®ãµãŒããŒã®å°å ¥ãŸã§ãããããçåã«ãŸãšããŠçããŸãã
AI ã¢ããªã±ãŒã·ã§ã³ãå€éšã®ããŒã«ãããŒã¿ãœãŒã¹ã«çµ±äžçãªæ¹æ³ã§æ¥ç¶ããããã®ãªãŒãã³ãªãããã³ã«ã§ããã¯ã©ã€ã¢ã³ãã¯ã¢ãã«ãšã®å¯Ÿè©±ãæ ããMCP ãµãŒããŒã¯ããŒã«ã»ãªãœãŒã¹ã»ããã³ãããã³ãã¬ãŒããæäŸããŸããæšæºã¡ãã»ãŒãžã§ããåãããããã1 ã€ã®ãµãŒããŒãè€æ°ã®ã¯ã©ã€ã¢ã³ãã§åå©çšã§ããŸãã