mirror of
https://github.com/Mintplex-Labs/anything-llm.git
synced 2026-07-19 14:13:35 -04:00
Closed
opened 2026-02-22 18:30:16 -05:00 by yindo
·
11 comments
No Branch/Tag Specified
master
5846-bug-when-scrolling-up-scrolling-jumps
refactor-remove-workspace-pfp
5969-bug-stopgenerationbutton-disappears-on-the-first-prompt-that-initiates-an-agent-session
2235-bug-how-to-upload-a-folder-with-subfolders-with-files-to-anythingllm
5990-workspace-update-fails-with-unknown-argument-router_id-v1130v1150-intel-mac
opencomputer-examples
pg
feat/image-generation-translations
feat/image-generation
5924-bug-meeting-summary-fails-with-sincludes-is-not-a-function-when-default-llm-is-anthropic-claude
render
feat/uniform-modal-component
5883-bug-unescaped-content-in-json-strings-being-passed-to-document-generator-tools
5901-bug-api-update-embeddings-fails-prisma-argument-filename-is-missing-on-workspace_documentscreate-desktop-windows-v1141
hybrid-search
1981-translations
5752-bug-prompts-to-local-jan-endpoint-unresponsive
feat-disable-native-tool-calling-env-var
5676-bug-non-ollama-agent-providers-do-not-parse-and-present-reasoning-content
feat/markdown-web-scraping
5717-bug-apiv1documentupload-silently-drops-metadata-field-in-desktop-1130-arg-count-mismatch-nested-payload-key
fix/aibitat-context-overflow
5711-bug-erratic-deepseek-v4-flash-the-agent-model-failed-to-respond-400-the-reasoning_content
5631-feat-custom-api-request-timeouts-for-ai-providers
feat-reasoning-control
feat-agent-clarifying-questions-translations
5583-bug-lm-studio-provider-does-not-present-reasoning-output
5313-normalize-translations
feat/memory-translations
5305-lemonade-embedding-engine-swallows-errors-falsely-reports-documents-as-embedded
5060-bug-agent-interactions-agent-are-not-persisted-to-thread-history-via-api
pptx-subagent
feat-render-images-from-mcp-tool-results
stt-provider-expansion-openai-api-compatible
feat-file-search-agent-tool
feat-native-embedder-job-queue
5189-normalize-translations
feat-file-search-agent-tool-translations
i18n-eslint
5140-auto-migration
5112-bug-openrouter-failed-message-bug
3506-feat-parameters-for-openrouter-models
4992-feat-preserve-scroll-position
4973-bug-markdown-numbered-list-display-in-reasoning-pane
desktop
4938-bug-pending-chat-rerendering-ui-bug
quickstart-env
node-llama-cpp-in-container-cuda
node-llama-cpp-in-container
ollama-in-container
4817-feat-set-cooldown-per-mcp-server
4845-keyboard-shortcuts-to-navigate-in-chat
4844-feat-reorder-threads-by-latest-interaction
standardize-username-constraints-normalize-translations
4792-feat-refactor-workspacepfp-image
1382-embed-ip-improvements
1382-bug-embed-api-improvements
refactor-eslint-frontend
4687-feat-refactor-vector-db-providers
4615-feat-disable-apidocs-with-environment-variable
4559-feat-agent-web-search-enable-ordering-of-results
4599-bug-ollama-race-condition-bug
4572-bug-lmstudio-provided-llm-stopped-working-with-anything-llm-after-upgrading-to-190
4508-agent-youtube-transcript-analysis
4497-feat-workspace-names
frontend-eslint
ollama-lmstudio-auto-context-window
4431-validate-vector-database-connectioN
2019-slash-command-keyboard-selection
microsoft-foundry-provider
4431-validate-vector-database-connection
4325-sys-prompt-var-improvements
3209-feat-apiv1workspacestream-chat-sources-citations
4210-bug-voice-to-text-overwrite
4136-feat-jan-as-a-backend-server-option
4172-feat-openai-o3-support
1.8.3-rerelease
web-push-notifications-service
tasks
3955-feat-jinaai-embedder-provider-support
3921-feat-agent-skills-uiux-improvements
3901-bug-validfunccall-checks-optional-arguments
keyboard-dev
1787-custom-roles-and-permissions
add-jira-slack-data-connector
office-extension-wip
lightmode-dropdown-color-update
3586-bug-agent-flow-function-description-provided-by-user-is-not-seen-in-the-llm-query
3463-bug-agent-continues-to-run-if-request-failed-even-after-exit
3439-feat-call-variables-within-the-flow-api-block-url-field
3282-manager-view-models-workspace
3280-token-counting-server-side-truncation-improvements
3147-bug-embedded-chat-widget---not-considering-query-mode-option-always-working-in-chat-mode
2995-feat-disable-temperature-setting-for-deepseek-r1-deepseek-reasoner-model
2827-feat-perplexity-citations
2866-feat-finally-a-gemini-models-endpoint
2647-feat-hpp-header-for-a-c++-code-file-mime-addition
lancedb-revert
1656-feat-implement-tooltip-ui-designs
2011-feat-bump-perplexity-models
1873-feat-auto-add-and-watch-folder-for-document-uploads
1297-feat-gemini-agent-support
1759-bug-ui-bug-fixes
1686-feat-implement-winston-for-logging
1536-bug-toggling-on-users-can-delete-workspaces-does-not-take-effect
agent-ui-mobile-styles
1522-feat-chromadb-support
1595-bug-unable-to-get-live-web-search-and-browsing-agent-working-using-google-custom-search-engine-error-getaddrinfo-enotfound-http-errno-3008
1582-bug-lm-studio-does-not-allow-for-different-model-selection
1312-bug-usernames-should-not-be-case-sensitive-when-logging-in
1029-feat-hf-serverless-inference-api
1086-feat-implement-normalized-input-fields
knowledge-graph-support
644-bug-uploaded-file-name-does-not-match-the-displayed-file-name-after-the-upload
v1.15.0
v1.14.2
v1.14.1
v1.14.0
v1.13.0
v1.12.1
v1.12.0
v1.11.2
v1.11.1
v1.11.0
v1.10.0
v1.9.1
v1.9.0
v1.8.5
v1.8.4
v1.8.3
v1.8.2
v1.8.1
v1.8.0
v1.7.8
v1.7.6
v1.7.5
v1.7.4
v1.4.0
v1.3.0
v1.2.4
v1.2.3
v1.2.2
v1.2.1
v1.2.0
v1.1.1
v1.1.0
v1.0.0
Labels
Clear labels
Desktop
Docker
Integration Request
Integration Request
OS: Linux
OS: Mobile
OS: Windows
UI/UX
blocked
bug
bug
core-team-only
documentation
duplicate
embed-widget
enhancement
feature request
github_actions
good first issue
investigating
needs info / can't replicate
possible bug
pull-request
question
stage: specifications
wontfix
Mirrored from GitHub Pull Request
No Label
needs info / can't replicate
Milestone
No items
No Milestone
Projects
Clear projects
No project
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: Mintplex-Labs/anything-llm#2565
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @reekob on GitHub (Jun 23, 2025).
Original GitHub issue: https://github.com/Mintplex-Labs/anything-llm/issues/4033
Chat mode. Chunking, overlap make no difference with a larger source set.
I have fine tuned the source documents with markdown title, descriptions and keywords which contains multiple models of cars and service related entries. For initial queries with car model included it is always accurate. The system seems to struggle with retrieval on subsequent queries after the initial query because it doesn’t appear to keep the context consistent, example:
Question 1) How much is a Tesla Model 3 tyre change?
Notes: 90%+ match in most instances with correct price.
Question 2) What about a service?
Notes: Very low level %, misses often, is not consistent.
Question 3: What about a windscreen replacement?
Notes: Very low level %, misses often, is not consistent.
It appears this is a basic RAG flaw, where context for subsequent queries is lost.
Without creating an external rewrite wrapper for the users query is this a problem that anythingllm has an out the box solution for?
@digitalassassins commented on GitHub (Jun 23, 2025):
This has only started happening in 1.8.2 I've noticed. It used to work perfectly. Now the RAG seems useless as it doesn't seem to use the pinned document in each consecutive question. The AI Model says it has no context.. There also seems like a problem with the Embedding model built into AnythingLLM now. don't know if it is a coding issue with the chats, will test today with other chat providers and embedding providers.
Before I upgraded, embedding with 1.8.1 via the API used to take about 30 seconds to 1 minute to complete. Now it is done almost instantly with barely any vectors stored in the database. Not sure if it is timing out or breaking the embedding or something.
It could be a configuration problem on my end. I will also test on a new machine. I'm still trying to work it out.
@reekob commented on GitHub (Jun 23, 2025):
Does it work with your first initial query or does that not work either?
Have you tried rewriting your query to suit the llm and sources?
@digitalassassins commented on GitHub (Jun 23, 2025):
The query is automatically written for each question to get the perfect answer and is sent programmatically to the API.
When I do a fresh install, it seems to work with the first query from the API, but then it breaks.
So I'm heading down the path of it could be something to do with the built-in embedding model or LanceDB hitting a snag, then breaking subsequent requests after that. because the embedding takes like 1 second to do a massive document, whereas before the API would be waiting for a response back for minutes for large documents in v1.8.1.
I couldn't tell users of the Plugin, ask a question on a document, then totally reinstall AnythingLLM, then ask another question. Wouldn't be feasible 😂
@reekob commented on GitHub (Jun 23, 2025):
How do you automatically rewrite the initial query?
How do you automatically rewrite the subsequent queries?
@timothycarambat commented on GitHub (Jun 24, 2025):
Any logs at all?
@reekob commented on GitHub (Jun 24, 2025):
For individual queries with the correct information (see question 1 above) the answer is accurate. The issue seems to be in the subsequent questions, the context of previous questions is not maintained for that new unique query. For instance - if question 2 was "What about a service on my Tesla 3" then the answer would be accurate.
This seems to be a RAG limitation, not an anythingllm thing. Just wondered if anythingllm had an out the box solution for this? What I think it needs is a middle wrapper (an llm with system prompt) to re-write the users query using the recent conversation history. This would be extra tokens on the rewrite request but would be less tokens than having larger max snippets.
I believe that if the query was rewritten to be in context of the conversation then the answer would be accurate. It would also allow lower max snippet to account for more accurate searching. RAG without query rewriting doesn't really work for chat mode without the user giving clear queries.
@timothycarambat commented on GitHub (Jun 24, 2025):
Assuming you are in
chatmode and not query, have you tried reranking in the workspace?This is enabled when using the default vector db and really helps a ton, especially with those followup questions which usually have lower semantic meaning than an original query.
@reekob commented on GitHub (Jun 24, 2025):
Yes, chat mode not query.
Yes, tried accuracy mode. Interestingly with accuracy mode on and max snippets set to 200 the max snippets the OpenAI logs show is 50. Not sure if that's deliberate or a bug but either way makes no difference to the problem.
Unless you can advise otherwise I'm quite confident that each query is unique and not in context of the conversation with regards to the rag query.
If a previously matched source from a prior question matches the new query, then it is used for answer, accurately.
If the previous questions results had nothing to match the new query then the rag query for the new question is unique to that question - for my example the lack of car model means that the hits are more broad and random (lower %). It's more of a lottery if matched or not.
Ideally we could set our chunks to 300 to match our source content and then keep max snippets at 10 ish. If the query was rewritten to be more accurate then this would hit every time (like the first question does with the model).
@reekob commented on GitHub (Jun 24, 2025):
If I create a separate workspace with the below prompt, and write question 2 and 3 into it, then use that for my main workspace, the answers and recall are accurate.
SYSTEM
You are an INLINE rewriter for a Tesla–focused auto service.
Your task on every turn:
STEP 1 CLASSIFY SERVICE
• Examine the NEW_USER message (and, if needed, the last five turns in HISTORY).
• Return exactly one of:
“repair” – vehicle fixes (battery, tire, body damage, software update…)
“tradein” – user wants to trade in or sell their car
“sales” – user wants to buy a new or used Tesla
“general” – anything else (charging station locations, pricing info, thanks, etc.)
STEP 2 EXTRACT or INHERIT MODEL & ISSUE
• If NEW_USER already names a car model (e.g. “Model 3”, “Model Y Long Range”), use it.
• Else, if HISTORY contains a model mentioned by the user in the last five turns, inherit that model.
• Otherwise set model = "" (blank).
• For repair: extract an issue keyword (e.g. “battery,” “tire,” “autopilot,” “door sensor”).
• For tradein / sales: issue = "".
STEP 3 REWRITE
• If service = “general” → rewritten = NEW_USER unchanged.
• If service ≠ “general” and model ≠ "" →
– produce a single English sentence that explicitly includes the model and the user’s intent/issue.
Examples:
NEW_USER: “what about the battery?”
➜ rewritten: “How much is a Tesla Model 3 battery replacement?”
NEW_USER: “looking to trade in” + model inherited = “Model Y”
➜ rewritten: “What trade-in value can I get for my Tesla Model Y?”
• If service ≠ “general” but model = "" →
rewritten = NEW_USER unchanged (assistant should ask for clarification).
RESPONSE FORMAT
Return strict JSON exactly as below, with no extra commentary:
{
"service": "<repair|tradein|sales|general>",
"model": "",
"issue": "",
"rewritten":""
}
================ INPUTS ================
HISTORY (up to five prior user+assistant turns):
◆〈history〉◆
NEW_USER:
◆〈current_user〉◆
@timothycarambat commented on GitHub (Jun 24, 2025):
It is deliberate since reranking
ndocuments can be very intensive, esp on CPU.This is true, each query is embedded and sent to search for similarity (results filtered base on relevance threshold). However, we also will dedupe and backfill the context from previous query sources to at least fill the window since often followup questions are within semantically similar chunks of content.
https://github.com/Mintplex-Labs/anything-llm/blob/c4f49ff6b445f8f1b15d3bd42f8a2d24317b745c/server/utils/helpers/chat/index.js#L348-L381
@reekob commented on GitHub (Jun 24, 2025):
This explains why larger chunking is more likely to give an accurate answer, but rag hit % is low, to subsequent questions. This seems like extra tokens but also a blind spot.
It seems that rewriting would give much better output and cost a lot less tokens. Does anythingllm have any out of the box solution for rewriting user queries? If no is it possible to do this via agent flow or as an external call in the natural process?
Conversation context lost when using RAGto [GH-ISSUE #4033] Conversation context lost when using RAG