agromatrix: add shared-memory review api and crawl4ai robustness
This commit is contained in:
@@ -3362,7 +3362,11 @@ class ToolManager:
|
||||
|
||||
if results:
|
||||
result = results[0] if isinstance(results, list) else results
|
||||
markdown = result.get("markdown", "") or result.get("cleaned_html", "") or result.get("text", "")
|
||||
raw_content = result.get("markdown", "") or result.get("cleaned_html", "") or result.get("text", "")
|
||||
if isinstance(raw_content, (dict, list, tuple)):
|
||||
markdown = json.dumps(raw_content, ensure_ascii=False)
|
||||
else:
|
||||
markdown = str(raw_content or "")
|
||||
title = result.get("title", url)
|
||||
|
||||
if len(markdown) > 3000:
|
||||
@@ -3371,13 +3375,30 @@ class ToolManager:
|
||||
response_parts = [f"**{title}**", "", markdown]
|
||||
|
||||
if extract_links:
|
||||
links = result.get("links", [])
|
||||
if links:
|
||||
links_raw = result.get("links", [])
|
||||
normalized_links: List[Any] = []
|
||||
if isinstance(links_raw, dict):
|
||||
for bucket in links_raw.values():
|
||||
if isinstance(bucket, list):
|
||||
normalized_links.extend(bucket)
|
||||
elif bucket:
|
||||
normalized_links.append(bucket)
|
||||
elif isinstance(links_raw, list):
|
||||
normalized_links = links_raw
|
||||
elif links_raw:
|
||||
normalized_links = [links_raw]
|
||||
|
||||
if normalized_links:
|
||||
response_parts.append("")
|
||||
response_parts.append("**Посилання:**")
|
||||
for link in links[:10]:
|
||||
for link in normalized_links[:10]:
|
||||
if isinstance(link, dict):
|
||||
link_url = link.get("href", "")
|
||||
link_url = (
|
||||
link.get("href")
|
||||
or link.get("url")
|
||||
or link.get("link")
|
||||
or ""
|
||||
)
|
||||
else:
|
||||
link_url = str(link)
|
||||
if link_url:
|
||||
|
||||
Reference in New Issue
Block a user