mirror of
https://github.com/open-webui/open-webui.git
synced 2025-12-16 20:07:49 +01:00
refac/fix: web/youtube file attachment handling
This commit is contained in:
@@ -491,25 +491,37 @@ def get_sources_from_items(
|
|||||||
# Raw Text
|
# Raw Text
|
||||||
# Used during temporary chat file uploads or web page & youtube attachements
|
# Used during temporary chat file uploads or web page & youtube attachements
|
||||||
|
|
||||||
if item.get("collection_name"):
|
if item.get("context") == "full":
|
||||||
# If item has a collection name, use it
|
if item.get("file"):
|
||||||
collection_names.append(item.get("collection_name"))
|
# if item has file data, use it
|
||||||
elif item.get("file"):
|
query_result = {
|
||||||
# if item has file data, use it
|
"documents": [
|
||||||
query_result = {
|
[item.get("file", {}).get("data", {}).get("content")]
|
||||||
"documents": [
|
],
|
||||||
[item.get("file", {}).get("data", {}).get("content")]
|
"metadatas": [[item.get("file", {}).get("meta", {})]],
|
||||||
],
|
}
|
||||||
"metadatas": [[item.get("file", {}).get("meta", {})]],
|
|
||||||
}
|
if query_result is None:
|
||||||
else:
|
# Fallback
|
||||||
# Fallback to item content
|
if item.get("collection_name"):
|
||||||
query_result = {
|
# If item has a collection name, use it
|
||||||
"documents": [[item.get("content")]],
|
collection_names.append(item.get("collection_name"))
|
||||||
"metadatas": [
|
elif item.get("file"):
|
||||||
[{"file_id": item.get("id"), "name": item.get("name")}]
|
# If item has file data, use it
|
||||||
],
|
query_result = {
|
||||||
}
|
"documents": [
|
||||||
|
[item.get("file", {}).get("data", {}).get("content")]
|
||||||
|
],
|
||||||
|
"metadatas": [[item.get("file", {}).get("meta", {})]],
|
||||||
|
}
|
||||||
|
else:
|
||||||
|
# Fallback to item content
|
||||||
|
query_result = {
|
||||||
|
"documents": [[item.get("content")]],
|
||||||
|
"metadatas": [
|
||||||
|
[{"file_id": item.get("id"), "name": item.get("name")}]
|
||||||
|
],
|
||||||
|
}
|
||||||
|
|
||||||
elif item.get("type") == "note":
|
elif item.get("type") == "note":
|
||||||
# Note Attached
|
# Note Attached
|
||||||
|
|||||||
@@ -1466,7 +1466,9 @@
|
|||||||
const messages = createMessagesList(history, history.currentId);
|
const messages = createMessagesList(history, history.currentId);
|
||||||
const _files = JSON.parse(JSON.stringify(files));
|
const _files = JSON.parse(JSON.stringify(files));
|
||||||
|
|
||||||
chatFiles.push(..._files.filter((item) => ['doc', 'file', 'collection'].includes(item.type)));
|
chatFiles.push(
|
||||||
|
..._files.filter((item) => ['doc', 'text', 'file', 'collection'].includes(item.type))
|
||||||
|
);
|
||||||
chatFiles = chatFiles.filter(
|
chatFiles = chatFiles.filter(
|
||||||
// Remove duplicates
|
// Remove duplicates
|
||||||
(item, index, array) =>
|
(item, index, array) =>
|
||||||
|
|||||||
Reference in New Issue
Block a user