Add agent.py
This commit is contained in:
@@ -0,0 +1,40 @@
|
||||
import os
|
||||
import json
|
||||
import requests
|
||||
from pathlib import Path
|
||||
|
||||
# Simple deep agent that searches web and writes virtual files
|
||||
|
||||
def search(query: str, num_results: int = 3):
|
||||
"""Return list of URLs from DuckDuckGo API (no key)."""
|
||||
url = f'https://duckduckgo.com/html/?q={requests.utils.quote(query)}'
|
||||
r = requests.get(url)
|
||||
links = []
|
||||
for line in r.text.splitlines():
|
||||
if '<a class="result__url"' in line:
|
||||
start = line.find('href="') + 6
|
||||
end = line.find('"', start)
|
||||
links.append(line[start:end])
|
||||
if len(links) >= num_results:
|
||||
break
|
||||
return links
|
||||
|
||||
# Create virtual file content
|
||||
virtual_files = {}
|
||||
|
||||
def add_virtual_file(name: str, content: str):
|
||||
virtual_files[name] = content
|
||||
|
||||
# Main workflow
|
||||
if __name__ == "__main__":
|
||||
queries = ["deep agents from scratch", "langchain deep agent example"]
|
||||
for q in queries:
|
||||
urls = search(q)
|
||||
add_virtual_file(f'{q.replace(" ", "_")}.txt', json.dumps(urls, indent=2))
|
||||
|
||||
# Write virtual files to disk
|
||||
out_dir = Path('output')
|
||||
out_dir.mkdir(exist_ok=True)
|
||||
for name, content in virtual_files.items():
|
||||
(out_dir / name).write_text(content)
|
||||
print(f'Wrote {len(virtual_files)} virtual files to {out_dir}')
|
||||
Reference in New Issue
Block a user