Skip to content

feat:Setup wizard gets confusing when configuring EverOS memory embedding with DeepSeek #81

Description

@Moonawn

Problem

Summary

The Raven setup wizard can get confusing during EverOS long-term memory configuration, specifically when configuring the memory embedding model with a provider that does not support embeddings, such as DeepSeek.

In my case, the main chat LLM and memory LLM were successfully configured with DeepSeek, but the embedding step repeatedly offered or returned to the same provider/endpoint flow without clearly explaining that DeepSeek may not provide a usable embedding model.

Environment

  • Raven version: 0.1.2
  • OS: macOS
  • Terminal: weztrm
  • Provider used for main LLM: DeepSeek
  • Main model: deepseek/deepseek-v4-pro
  • Memory LLM: reused main conversation model
  • Memory embedding: attempted to reuse DeepSeek endpoint

Steps to reproduce

  1. Run the Raven setup wizard.
  2. Configure the main LLM provider as DeepSeek.
  3. Enter an invalid model name first, for example deepseek/deepseek-v4Pro.
  4. Retry with the correct model name: deepseek/deepseek-v4-pro.
  5. Continue to EverOS long-term memory.
  6. Enable EverOS long-term memory.
  7. Configure memory LLM by reusing the main conversation model.
  8. For memory embedding, choose to reuse the memory LLM endpoint: https://api.deepseek.com/v1.
  9. The wizard attempts to fetch models and shows only a generic model selection / return flow.
  10. Returning and retrying leads back into the same unclear selection state.

Observed behavior

  • The main DeepSeek model test works after correcting the model id.
  • Memory LLM validation succeeds when reusing deepseek/deepseek-v4-pro.
  • During memory embedding setup, Raven allows selecting or reusing the DeepSeek endpoint.
  • The wizard tries to fetch models, but the flow does not clearly indicate whether the provider has embedding models available.
  • The user can end up repeatedly choosing:
    • reuse memory LLM endpoint
    • return
    • custom OpenAI-compatible endpoint
    • return again
  • There is no clear explanation of what embedding model is required or which providers are known to support embeddings.

Expected behavior

The setup wizard should make the embedding configuration clearer when the selected/reused provider does not expose a usable embedding model.

Ideally, Raven should:

  • Detect that the reused DeepSeek endpoint does not provide compatible embedding models, if applicable.
  • Show a clear message such as:
    DeepSeek does not appear to provide embedding models for EverOS memory. Please choose an embedding-capable provider such as OpenAI, SiliconFlow, DashScope, or a custom OpenAI-compatible embedding endpoint.
  • Avoid offering “reuse memory LLM endpoint” when the endpoint is known or detected to be unsuitable for embeddings.
  • Explain that the memory LLM and memory embedding model can come from different providers.
  • Provide an example embedding model id for common providers.

Proposal

Suggested scope

  • Improve the EverOS memory embedding setup UX.
  • Add provider capability checks or clearer warnings for providers without embedding support.
  • Improve fallback messages when model list fetching succeeds but no embedding-compatible model is available.
  • Make the “return” flow less loop-like by showing what the user still needs to configure.
  • Optionally document recommended embedding providers/models for EverOS memory.

Acceptance criteria

  • Users configuring EverOS memory with DeepSeek as the LLM are clearly told that they need a separate embedding-capable provider if DeepSeek cannot be used for embeddings.
  • The wizard does not leave users in an unclear loop between “reuse endpoint” and “return”.
  • The embedding step explains what kind of model is required.
  • At least one valid example configuration is shown or documented.

Alternatives considered

No response

Area

CLI / TUI

Additional context

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions