Skip to content

feat: English translation + self-hosted Graphiti (replaces Zep Cloud)#334

Open
t-STRBRDR wants to merge 4 commits into666ghj:mainfrom
t-STRBRDR:main
Open

feat: English translation + self-hosted Graphiti (replaces Zep Cloud)#334
t-STRBRDR wants to merge 4 commits into666ghj:mainfrom
t-STRBRDR:main

Conversation

@t-STRBRDR
Copy link
Copy Markdown

Summary

  • Full English translation of frontend UI (11 Vue components) and backend prompts/strings (8 service files)
  • Replace Zep Cloud with self-hosted Graphiti + Neo4j — eliminates rate limits, episode limits, and $25/mo subscription
  • ARM64 Docker support — fixes build on Apple Silicon (M1/M2/M3)
  • Increase ontology max_tokens from 4096 to 16384 to prevent truncated JSON with large documents

Details

English Translation

All user-facing text, labels, placeholders, button text, log messages, error messages, prompts, and comments translated from Chinese to English across the entire codebase.

Zep Cloud → Graphiti + Neo4j

  • New GraphitiAdapter provides sync wrapper for async graphiti-core API
  • Uses Neo4j as local graph database (no cloud dependency)
  • Native Gemini support for LLM, embeddings, and reranking
  • Passes ontology entity_types to Graphiti for typed node labels
  • Removes zep_paging.py (no pagination needed with local DB)
  • Graphiti processes episodes synchronously — removes _wait_for_episodes polling

Docker Fixes

  • Install uv via pip instead of COPY from ghcr.io (fixes ARM64 + BuildKit DNS issues)
  • Switch docker-compose to local build instead of pre-built image

Test plan

  • Upload a PDF/TXT document and verify ontology generation
  • Verify graph build completes with nodes and edges visible
  • Proceed through Environment Setup → Run Simulation
  • Generate report and verify search/tools work
  • Test Deep Interaction chat

🤖 Generated with Claude Code

t-STRBRDR and others added 4 commits March 22, 2026 09:44
Translate all user-facing text, labels, placeholders, button text,
log messages, error messages, and comments across all Vue components
and views to English.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Change Dockerfile to install uv via pip instead of COPY from ghcr.io
  (fixes ARM64 build and BuildKit DNS issues)
- Switch docker-compose to local build instead of pre-built image
- Increase ontology generation max_tokens from 4096 to 16384 to prevent
  truncated JSON responses with large documents

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Replace the zep_cloud managed SaaS dependency with graphiti-core
backed by a local Neo4j instance. This eliminates rate limits,
episode limits, and the $25/mo Zep subscription.

Changes:
- Add GraphitiAdapter: sync wrapper for async graphiti-core API
- Migrate graph_builder, zep_entity_reader, zep_tools,
  zep_graph_memory_updater, oasis_profile_generator to use adapter
- Remove zep_paging.py (no pagination needed with local DB)
- Update config: add NEO4J_URI/USER/PASSWORD, remove ZEP_API_KEY
- Use Gemini native support for LLM, embeddings, and reranking
- Increase default chunk size to 2000 for faster graph builds
- Pass ontology entity_types to Graphiti for typed node labels
- Remove _wait_for_episodes (Graphiti processes synchronously)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Port English translations from MiroFish-Offline for all backend
service files: prompts, comments, docstrings, and log messages.

- oasis_profile_generator: persona generation prompts, default US
- report_agent: PLAN/SECTION/CHAT system prompts, ReACT prompts
- zep_tools: InsightForge/Panorama/Interview prompts, to_text()
- simulation_config_generator: config generation prompts
- simulation_manager/runner: comments and log messages
- graph API: status messages

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@dosubot dosubot bot added size:XXL This PR changes 1000+ lines, ignoring generated files. enhancement New feature or request labels Mar 24, 2026
mohamedsorour1998 added a commit to mohamedsorour1998/MiroFish that referenced this pull request Mar 27, 2026
# Conflicts:
#	backend/app/services/graph_builder.py
#	backend/app/services/oasis_profile_generator.py
#	backend/app/services/report_agent.py
#	backend/app/services/simulation_config_generator.py
#	backend/app/services/simulation_manager.py
#	frontend/src/components/GraphPanel.vue
#	frontend/src/components/HistoryDatabase.vue
#	frontend/src/components/Step1GraphBuild.vue
#	frontend/src/components/Step2EnvSetup.vue
#	frontend/src/components/Step3Simulation.vue
#	frontend/src/components/Step4Report.vue
#	frontend/src/components/Step5Interaction.vue
#	frontend/src/views/Home.vue
#	frontend/src/views/MainView.vue
#	frontend/src/views/Process.vue
#	frontend/src/views/SimulationView.vue
@666ghj
Copy link
Copy Markdown
Owner

666ghj commented Apr 2, 2026

The project already has i18n support in place — please refer to [PR #428] for reference.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request size:XXL This PR changes 1000+ lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants