First /add can fail when tiktoken downloads o200k_base at runtime
メンテナーはふだん 1 日以内に返信
評価
調査の方向性
Start by tracing the /add request to where tiktoken.get_encoding("o200k_base") is initialized, and review the cold-start failure evidence in this issue. Compare the proposed approaches with open pull request #285 before choosing a direction. Done means cold /add no longer returns a generic 500 when tokenizer asset fetching fails, with behavior verified in an isolated restart/cold-start test.
索引モデルが issue の本文から書いたものです。
説明
Summary
The first /add request can fail with HTTP 500 if tokenizer initialization tries to download o200k_base.tiktoken at runtime and that network request fails.
In an isolated restart/cold-start test, the failure happened before any business write was committed. After prewarming the tokenizer cache with tiktoken.get_encoding("o200k_base"), the same test shape worked with a new memory root/session.
Why this matters
This makes a fresh EverOS service depend on runtime network access to an external tokenizer asset during the first memory write. If that download fails, users see a generic /add 500 even though the memory pipeline itself has not started writing data yet.
This is especially surprising for Docker/Linux isolated tests and server deployments where outbound network/TLS behavior may vary.
Observed evidence
First cold /add:
/add -> HTTP 500
Failure occurred before writes:
unprocessed_buffer: 0
memcell: 0
conversation_status: 0
md_change_state: 0
Markdown marker: none
search result count: 0
Traceback shape:
tiktoken_ext/openai_public.py: o200k_base
tiktoken/load.py: read_file_cached
requests.get("https://openaipublic.blob.core.windows.net/encodings/o200k_base.tiktoken")
SSLError: UNEXPECTED_EOF_WHILE_READING
After tokenizer prewarm:
tiktoken.get_encoding("o200k_base")
A new memory root/session completed successfully, and restart recovery worked as expected.
Expected behavior
EverOS could make this cold-start dependency more explicit and reliable. Possible options:
- Prewarm tokenizer assets during
everos initor server startup. - Document that first use may download tokenizer assets and how to pre-cache them.
- Fail startup or preflight checks with a clear tokenizer/cache error instead of returning a generic
/add500. - Avoid runtime network fetches in the request path where possible.
- Provide an offline/cache configuration path for Docker/server deployments.
Environment
EverOS: 1.0.0 source checkout
Runtime: Docker Linux runtime
Python: 3.12
Data: synthetic sample only
No real user memory or secrets were used.
- 主要言語
- Python
- スター
- 13.3k
- フォーク
- 926
- 平均マージ
- 23時間 31分
- マージ済み PR(30日)
- 26
環境構築
このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
EverMind-AI/EverOS のほかの issue
-
難易度 2/5 半日 初心者へのやさしさ 62/100
EverMind-AI/EverOS#414 ·
メンテナーはふだん 1 日以内に返信
-
難易度 3/5 1〜2日 初心者へのやさしさ 67/100
EverMind-AI/EverOS#551 ·
メンテナーはふだん 1 日以内に返信
-
[Bug]: cascade retry budget is forgotten by a restart during the inline backoff; a row can retry forever without becoming failed対応中かも @feiiiiii5 が 1 日前に担当しました。 オープンbug
難易度 4/5 3〜5日 初心者へのやさしさ 56/100
EverMind-AI/EverOS#549 ·
メンテナーはふだん 1 日以内に返信
-
[Bug]: cascade row stays processing forever when its terminal write (mark_failed / mark_done) fails once対応中かも @feiiiiii5 が 1 日前に担当しました。 オープンbug
難易度 4/5 3〜5日 初心者へのやさしさ 48/100
EverMind-AI/EverOS#548 ·
メンテナーはふだん 1 日以内に返信
-
bug
難易度 4/5 3〜5日 初心者へのやさしさ 52/100
EverMind-AI/EverOS#547 ·
メンテナーはふだん 1 日以内に返信
EverMind-AI/EverOS の issue をすべて見る
似ている issue
-
URLValidator ignores an explicit empty scheme allowlist対応中かも @IlyaKhalafi が今日担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 85/100
tortoise/tortoise-orm#2393 ·
メンテナーはふだん 2 日以内に返信
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 62/100
frappe/frappe_docker#2046 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 62/100
-
AXI SMU SPEC
難易度 2/5 1〜3時間 初心者へのやさしさ 62/100
tenstorrent/tt-oca-harness#3556 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 66/100
microsoft/agent-framework#9946 ·
メンテナーはふだん 1 日以内に返信