Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: Add LM Studio Support and Thinking Model Panel #576

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

haddadrm
Copy link

LM Studio Integration:

  • Added LM Studio provider with OpenAI-compatible API support
  • Dynamic model discovery via /v1/models endpoint
  • Support for both chat and embeddings models
  • Docker-compatible networking configuration

Thinking Model Panel:

  • Added collapsible UI panel for model's chain of thought
  • Parses responses with tags to separate reasoning
  • Maintains backward compatibility with regular responses
  • Styled consistently with app theme for light/dark modes
  • Preserves all existing message functionality (sources, markdown, etc.)

These improvements enhance the app's compatibility with local LLMs and provide better visibility into model reasoning processes while maintaining existing functionality.

Thinking Panel 1
Thinking Panel 2
LM_STudio

LM Studio Integration:
- Added LM Studio provider with OpenAI-compatible API support
- Dynamic model discovery via /v1/models endpoint
- Support for both chat and embeddings models
- Docker-compatible networking configuration

Thinking Model Panel:
- Added collapsible UI panel for model's chain of thought
- Parses responses with <think> tags to separate reasoning
- Maintains backward compatibility with regular responses
- Styled consistently with app theme for light/dark modes
- Preserves all existing message functionality (sources, markdown, etc.)

These improvements enhance the app's compatibility with local LLMs and
provide better visibility into model reasoning processes while maintaining
existing functionality.
@tanm-sys
Copy link

how to use this

@tanm-sys
Copy link

i am getting this error 2025-01-29 12:18:06 [ERROR]
Unexpected endpoint or method. (GET /api/tags). Returning 200 anyway
2025-01-29 12:18:06 [ERROR]
Unexpected endpoint or method. (GET /api/tags). Returning 200 anyway
2025-01-29 12:18:06 [ERROR]
Unexpected endpoint or method. (GET /api/tags). Returning 200 anyway
2025-01-29 12:18:06 [ERROR]
Unexpected endpoint or method. (GET /api/tags). Returning 200 anyway
2025-01-29 12:19:37 [ERROR]
Unexpected endpoint or method. (GET /api/tags). Returning 200 anyway
2025-01-29 12:19:37 [ERROR]
Unexpected endpoint or method. (GET /api/tags). Returning 200 anyway
2025-01-29 12:19:37 [ERROR]
Unexpected endpoint or method. (GET /api/tags). Returning 200 anyway
2025-01-29 12:19:37 [ERROR]
Unexpected endpoint or method. (GET /api/tags). Returning 200 anyway
2025-01-29 12:19:37 [ERROR]
Unexpected endpoint or method. (GET /api/tags). Returning 200 anyway
2025-01-29 12:19:37 [ERROR]
Unexpected endpoint or method. (GET /api/tags). Returning 200 anyway
2025-01-29 12:19:37 [ERROR]
Unexpected endpoint or method. (GET /api/tags). Returning 200 anyway
2025-01-29 12:19:37 [ERROR]
Unexpected endpoint or method. (GET /api/tags). Returning 200 anyway
2025-01-29 12:19:38 [ERROR]
Unexpected endpoint or method. (GET /api/tags). Returning 200 anyway
2025-01-29 12:19:38 [ERROR]
Unexpected endpoint or method. (GET /api/tags). Returning 200 anyway
2025-01-29 12:19:38 [ERROR]
Unexpected endpoint or method. (GET /api/tags). Returning 200 anyway
2025-01-29 12:19:38 [ERROR]
Unexpected endpoint or method. (GET /api/tags). Returning 200 anyway
2025-01-29 12:19:38 [ERROR]
Unexpected endpoint or method. (GET /api/tags). Returning 200 anyway
2025-01-29 12:19:38 [ERROR]
Unexpected endpoint or method. (GET /api/tags). Returning 200 anyway
2025-01-29 12:19:38 [ERROR]
Unexpected endpoint or method. (GET /api/tags). Returning 200 anyway
2025-01-29 12:19:38 [ERROR]
Unexpected endpoint or method. (GET /api/tags). Returning 200 anyway
2025-01-29 12:19:38 [ERROR]
Unexpected endpoint or method. (GET /api/tags). Returning 200 anyway
2025-01-29 12:19:38 [ERROR]
Unexpected endpoint or method. (GET /api/tags). Returning 200 anyway
2025-01-29 12:19:38 [ERROR]
Unexpected endpoint or method. (GET /api/tags). Returning 200 anyway
2025-01-29 12:19:38 [ERROR]
Unexpected endpoint or method. (GET /api/tags). Returning 200 anyway
2025-01-29 12:19:38 [ERROR]
Unexpected endpoint or method. (GET /api/tags). Returning 200 anyway
2025-01-29 12:19:38 [ERROR]
Unexpected endpoint or method. (GET /api/tags). Returning 200 anyway
2025-01-29 12:19:38 [ERROR]
Unexpected endpoint or method. (GET /api/tags). Returning 200 anyway
2025-01-29 12:19:38 [ERROR]
Unexpected endpoint or method. (GET /api/tags). Returning 200 anyway
2025-01-29 12:19:38 [ERROR]
Unexpected endpoint or method. (GET /api/tags). Returning 200 anyway
2025-01-29 12:19:38 [ERROR]
Unexpected endpoint or method. (GET /api/tags). Returning 200 anyway
2025-01-29 12:19:38 [ERROR]
Unexpected endpoint or method. (GET /api/tags). Returning 200 anyway
2025-01-29 12:19:38 [ERROR]
Unexpected endpoint or method. (GET /api/tags). Returning 200 anyway
2025-01-29 12:19:38 [ERROR]
Unexpected endpoint or method. (GET /api/tags). Returning 200 anyway
2025-01-29 12:19:38 [ERROR]
Unexpected endpoint or method. (GET /api/tags). Returning 200 anyway
2025-01-29 12:19:38 [ERROR]
Unexpected endpoint or method. (GET /api/tags). Returning 200 anyway
2025-01-29 12:19:38 [ERROR]
Unexpected endpoint or method. (GET /api/tags). Returning 200 anyway
2025-01-29 12:19:42 [ERROR]
Unexpected endpoint or method. (GET /api/tags). Returning 200 anyway
2025-01-29 12:19:42 [ERROR]
Unexpected endpoint or method. (GET /api/tags). Returning 200 anyway
2025-01-29 12:20:12 [ERROR]
Unexpected endpoint or method. (GET /api/tags). Returning 200 anyway
2025-01-29 12:20:12 [ERROR]
Unexpected endpoint or method. (GET /api/tags). Returning 200 anyway
2025-01-29 12:20:12 [ERROR]
Unexpected endpoint or method. (GET /api/tags). Returning 200 anyway
2025-01-29 12:20:12 [ERROR]
Unexpected endpoint or method. (GET /api/tags). Returning 200 anyway

@haddadrm
Copy link
Author

haddadrm commented Feb 1, 2025

how to use this

Set the end point in the config.yml

[API_ENDPOINTS]
LMSTUDIO = "http://host.docker.internal:1234/v1"

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants