{% extends "base.html" %} {% block title %}{{ t(request, 'page.notebook') }} — MoE Admin{% endblock %} {% block content %}
{{ t(request, 'page.notebook') }}
{{ t(request, 'lbl.notebook_intro') }}
{{ t(request, 'lbl.copy_paste_snippets') }}
import requests, os
ORCH = os.environ.get("MOE_BASE_URL", "https://moe-admin.local")
r = requests.get(f"{ORCH}/v1/graph/knowledge/export",
                 params={"min_trust": 0.5, "domains": "kg-physics"})
bundle = r.json()
print(len(bundle.get("entities", [])), "entities")
import requests
ORCH = "https://moe-admin.local"
bundle = {"@context": "moe", "entities": [{"name": "Test"}]}
r = requests.post(f"{ORCH}/v1/graph/knowledge/import/pending",
                  json={"bundle": bundle, "source_tag": "notebook-test"})
print(r.json())  # {"status": "pending", "branch": "pending/..."}
import requests
r = requests.post("https://moe-admin.local/api/explorer/cypher",
                  json={"query": "MATCH (e:Entity) RETURN e.name LIMIT 10"})
data = r.json()
for row in data.get("rows", []):
    print(row)
# OpenLineage runs from Marquez (Phase 16)
import requests
r = requests.get("https://moe-admin.local/api/codex/runs?limit=10")
for run in r.json().get("runs", []):
    print(f"{run['startedAt']}  {run['job']}  {run['state']}")
{% if jupyterlab_configured %}
{% if jupyterlab_direct_url %} {% else %} {# Fallback: no direct URL configured — open in new tab instead #} {% endif %}
{% else %}
JUPYTERLAB_URL not configured
Set JUPYTERLAB_URL=http://moe-jupyterlab:8888 in .env.
{% endif %} {% endblock %}