openfree commited on
Commit
371a9fc
·
verified ·
1 Parent(s): beb0aac

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +21 -6
app.py CHANGED
@@ -51,13 +51,14 @@ def do_web_search(query: str) -> str:
51
  try:
52
  url = "https://api.serphouse.com/serp/live"
53
 
54
- # 기본 GET 방식으로 파라미터 간소화
55
  params = {
56
  "q": query,
57
  "domain": "google.com",
58
  "serp_type": "web", # 기본 웹 검색
59
  "device": "desktop",
60
- "lang": "en"
 
61
  }
62
 
63
  headers = {
@@ -98,12 +99,26 @@ def do_web_search(query: str) -> str:
98
  logger.debug(f"results 구조: {list(results.keys())}")
99
  return "No web search results found or unexpected API response structure."
100
 
 
 
 
 
 
101
  summary_lines = []
102
- for idx, item in enumerate(organic[:20], start=1):
103
- item_json = json.dumps(item, ensure_ascii=False, indent=2)
104
- summary_lines.append(f"Result {idx}:\n{item_json}\n")
 
 
 
 
 
 
 
 
 
105
 
106
- logger.info(f"검색 결과 {len(organic)} 찾음")
107
  return "\n".join(summary_lines)
108
 
109
  except Exception as e:
 
51
  try:
52
  url = "https://api.serphouse.com/serp/live"
53
 
54
+ # 기본 GET 방식으로 파라미터 간소화하고 결과 수를 20개로 제한
55
  params = {
56
  "q": query,
57
  "domain": "google.com",
58
  "serp_type": "web", # 기본 웹 검색
59
  "device": "desktop",
60
+ "lang": "en",
61
+ "num": "20" # 최대 20개 결과만 요청
62
  }
63
 
64
  headers = {
 
99
  logger.debug(f"results 구조: {list(results.keys())}")
100
  return "No web search results found or unexpected API response structure."
101
 
102
+ # 결과 수 제한 및 컨텍스트 길이 최적화
103
+ max_results = min(20, len(organic))
104
+ limited_organic = organic[:max_results]
105
+
106
+ # 결과 형식 간소화 - 전체 JSON 대신 중요 필드만 포함
107
  summary_lines = []
108
+ for idx, item in enumerate(limited_organic, start=1):
109
+ title = item.get("title", "No title")
110
+ link = item.get("link", "#")
111
+ snippet = item.get("snippet", "No description")
112
+
113
+ # 간소화된 형식
114
+ summary_lines.append(
115
+ f"Result {idx}:\n"
116
+ f"- Title: {title}\n"
117
+ f"- Link: {link}\n"
118
+ f"- Snippet: {snippet}\n"
119
+ )
120
 
121
+ logger.info(f"검색 결과 {len(limited_organic)}개 처리 완료")
122
  return "\n".join(summary_lines)
123
 
124
  except Exception as e: