Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

no models in custom provider

Đang mở
#392 5 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 2 ngày

Chưa có ai nhận issue này.

Đánh giá

Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức phù hợp với người mới
45/100
Loại issue
Lỗi
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Đình trệ
Công nghệ
clojure
Lĩnh vực
backend-api-design

Hướng nghiên cứu

Start by tracing how configured providers and their static models are initialized and added to db[:models], then check when model sync completes relative to chat startup. Reproduce with the supplied fetchModels: false configuration and inspect /providers-list, /doctor, and a chat request. Done when the custom model is available and the default model is shown and usable.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

Describe the bug

ECA 0.123.2 reads a custom provider from =config.json= correctly, but the provider is not registered as an available runtime model. As a result:

  • =/config= shows the provider and =defaultModel= correctly
  • =/providers-list= shows the provider as configured, but with =0 models=
  • =/doctor= shows empty =Default model:=
  • chat requests can fail with:
    #+begin_src text :results output
    API url not found.
    Make sure you have provider '' configured properly.
    #+end_src

This seems to affect custom OpenAI-compatible providers configured with =api: "openai-chat"= and explicit static models in config.

To Reproduce

  1. Create =~/.config/eca/config.json= with a custom provider, for example:
    #+begin_src json :results output
    {
    "$schema": "https://eca.dev/config.json",
    "defaultModel": "aitunnel/qwen3.5-397b-a17b",
    "providers": {
    "aitunnel": {
    "api": "openai-chat",
    "url": "https://api.aitunnel.ru/v1",
    "key": "REDACTED",
    "fetchModels": false,
    "models": {
    "qwen3.5-397b-a17b": {}
    }
    }
    }
    }
    #+end_src
  2. Start ECA server.
  3. Open chat and run =/config=.
  4. Run =/providers-list= and =/doctor=.
  5. Send a normal chat message.

Expected behavior

If a custom provider is present in =/config= and has explicit static models in =providers..models=, ECA should register those models as available runtime models even when =fetchModels=false=.

Expected result:

  • =/providers-list= should show at least 1 model for the custom provider
  • =/doctor= should show a non-empty =Default model:=
  • chat should use =aitunnel/qwen3.5-397b-a17b= successfully

Actual behavior

  • =/config= shows the merged config correctly, including:
    • =defaultModel "aitunnel/qwen3.5-397b-a17b"=
    • the custom provider
    • =fetchModels false=
    • the static =models= entry
  • =/providers-list= shows:
    #+begin_src text :results output
    aitunnel ✓ configured
    API Key · (config) · active
    api: openai-chat
    url: https://api.aitunnel.ru/v1
    fetchModels: false
    0 models
    #+end_src
  • =/doctor= shows:
    #+begin_src text :results output
    Default model:

Logged providers:
openai: Unknown
#+end_src

  • sending a chat message can fail with:
    #+begin_src text :results output
    API url not found.
    Make sure you have provider '' configured properly.
    #+end_src

Doctor

#+begin_src text :results output
ECA version: 0.123.2

Server cmd: /home/zoya/.emacs.d/eca/eca server

Workspaces: /home/zoya/.config/eca

Default model:

Logged providers:
openai: Unknown
#+end_src

Additional context

From source inspection, this looks like a runtime model registration / initialization issue rather than a config parsing issue:

  • =/config= proves the config is loaded correctly
  • custom providers with =api "openai-chat"= appear to be supported by runtime dispatch
  • the failure seems to happen because the custom model does not end up in =db[:models]=
  • chat/model selection then has no valid runtime model to use
  • there may also be an initialization race, because model sync is started asynchronously during startup

Relevant symptoms are consistent with:

  • static models from custom providers not being surfaced into available models
  • or chat starting before model sync completes
  • or both
Ngôn ngữ chính
Clojure
Star
1k
Fork
82
Merge trung bình
1 ngày 14 giờ
Pull request đã merge (30 ngày)
16

Chuẩn bị môi trường

Dự án này không cung cấp dev container, Dockerfile hay hướng dẫn đóng góp, nên bạn cần tự thiết lập môi trường: hãy bắt đầu từ README và xem hướng dẫn đóng góp lần đầu của chúng tôi để biết các bước chung.

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của editor-code-assistant/eca

Tất cả issue của editor-code-assistant/eca

Issue tương tự

Thêm issue về Clojure

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.