mirror of
http://112.124.100.131/huang.ze/ebiz-dify-ai.git
synced 2025-12-10 19:36:53 +08:00
Fixed the issue where recall the knowledge base in the iteration of the workflow and report errors when executing (#10060)
This commit is contained in:
@@ -10,6 +10,7 @@ from core.variables import (
|
|||||||
ArrayNumberVariable,
|
ArrayNumberVariable,
|
||||||
ArrayObjectSegment,
|
ArrayObjectSegment,
|
||||||
ArrayObjectVariable,
|
ArrayObjectVariable,
|
||||||
|
ArraySegment,
|
||||||
ArrayStringSegment,
|
ArrayStringSegment,
|
||||||
ArrayStringVariable,
|
ArrayStringVariable,
|
||||||
FileSegment,
|
FileSegment,
|
||||||
@@ -79,7 +80,7 @@ def build_segment(value: Any, /) -> Segment:
|
|||||||
if isinstance(value, list):
|
if isinstance(value, list):
|
||||||
items = [build_segment(item) for item in value]
|
items = [build_segment(item) for item in value]
|
||||||
types = {item.value_type for item in items}
|
types = {item.value_type for item in items}
|
||||||
if len(types) != 1:
|
if len(types) != 1 or all(isinstance(item, ArraySegment) for item in items):
|
||||||
return ArrayAnySegment(value=value)
|
return ArrayAnySegment(value=value)
|
||||||
match types.pop():
|
match types.pop():
|
||||||
case SegmentType.STRING:
|
case SegmentType.STRING:
|
||||||
|
|||||||
Reference in New Issue
Block a user