Kevin Hu commited on
Commit
19268e7
·
1 Parent(s): a5476f5

Add component 'Template' (#3562)

Browse files

### What problem does this PR solve?

#3560

### Type of change

- [x] New Feature (non-breaking change which adds functionality)

agent/component/__init__.py CHANGED
@@ -30,6 +30,7 @@ from .tushare import TuShare, TuShareParam
30
  from .akshare import AkShare, AkShareParam
31
  from .crawler import Crawler, CrawlerParam
32
  from .invoke import Invoke, InvokeParam
 
33
 
34
 
35
  def component_class(class_name):
 
30
  from .akshare import AkShare, AkShareParam
31
  from .crawler import Crawler, CrawlerParam
32
  from .invoke import Invoke, InvokeParam
33
+ from .template import Template, TemplateParam
34
 
35
 
36
  def component_class(class_name):
agent/component/generate.py CHANGED
@@ -145,7 +145,7 @@ class Generate(ComponentBase):
145
  else: retrieval_res = pd.DataFrame([])
146
 
147
  for n, v in kwargs.items():
148
- prompt = re.sub(r"\{%s\}" % re.escape(n), re.escape(str(v)), prompt)
149
 
150
  if not self._param.inputs and prompt.find("{input}") >= 0:
151
  retrieval_res = self.get_input()
 
145
  else: retrieval_res = pd.DataFrame([])
146
 
147
  for n, v in kwargs.items():
148
+ prompt = re.sub(r"\{%s\}" % re.escape(n), str(v), prompt)
149
 
150
  if not self._param.inputs and prompt.find("{input}") >= 0:
151
  retrieval_res = self.get_input()
agent/component/template.py CHANGED
@@ -79,7 +79,7 @@ class Template(ComponentBase):
79
  self._param.inputs.append({"component_id": para["component_id"], "content": kwargs[para["key"]]})
80
 
81
  for n, v in kwargs.items():
82
- content = re.sub(r"\{%s\}" % re.escape(n), re.escape(str(v)), content)
83
 
84
  return Template.be_output(content)
85
 
 
79
  self._param.inputs.append({"component_id": para["component_id"], "content": kwargs[para["key"]]})
80
 
81
  for n, v in kwargs.items():
82
+ content = re.sub(r"\{%s\}" % re.escape(n), str(v), content)
83
 
84
  return Template.be_output(content)
85
 
api/apps/kb_app.py CHANGED
@@ -167,9 +167,7 @@ def rm():
167
  if not KnowledgebaseService.delete_by_id(req["kb_id"]):
168
  return get_data_error_result(
169
  message="Database error (Knowledgebase removal)!")
170
- tenants = UserTenantService.query(user_id=current_user.id)
171
- for tenant in tenants:
172
- settings.docStoreConn.deleteIdx(search.index_name(tenant.tenant_id), req["kb_id"])
173
  return get_json_result(data=True)
174
  except Exception as e:
175
  return server_error_response(e)
 
167
  if not KnowledgebaseService.delete_by_id(req["kb_id"]):
168
  return get_data_error_result(
169
  message="Database error (Knowledgebase removal)!")
170
+ settings.docStoreConn.delete({"kb_id": req["kb_id"]}, search.index_name(kbs[0].tenant_id), req["kb_id"])
 
 
171
  return get_json_result(data=True)
172
  except Exception as e:
173
  return server_error_response(e)
api/apps/user_app.py CHANGED
@@ -517,8 +517,8 @@ def user_register(user_id, user):
517
  "llm_name": llm.llm_name,
518
  "model_type": llm.model_type,
519
  "api_key": settings.API_KEY,
520
- "api_base": settings.LLM_BASE_URL,
521
- "max_tokens": llm.max_tokens
522
  }
523
  )
524
 
 
517
  "llm_name": llm.llm_name,
518
  "model_type": llm.model_type,
519
  "api_key": settings.API_KEY,
520
+ "api_base": settings.LLM_BASE_URL
521
+ #"max_tokens": llm.max_tokens if llm.max_tokens else 8192
522
  }
523
  )
524
 
rag/utils/es_conn.py CHANGED
@@ -238,7 +238,7 @@ class ESConnection(DocStoreConnection):
238
  for _ in range(ATTEMPT_TIME):
239
  try:
240
  r = self.es.bulk(index=(indexName), operations=operations,
241
- refresh=False, timeout="600s")
242
  if re.search(r"False", str(r["errors"]), re.IGNORECASE):
243
  return res
244
 
@@ -249,7 +249,9 @@ class ESConnection(DocStoreConnection):
249
  return res
250
  except Exception as e:
251
  logging.warning("ESConnection.insert got exception: " + str(e))
 
252
  if re.search(r"(Timeout|time out)", str(e), re.IGNORECASE):
 
253
  time.sleep(3)
254
  continue
255
  return res
 
238
  for _ in range(ATTEMPT_TIME):
239
  try:
240
  r = self.es.bulk(index=(indexName), operations=operations,
241
+ refresh=False, timeout="60s")
242
  if re.search(r"False", str(r["errors"]), re.IGNORECASE):
243
  return res
244
 
 
249
  return res
250
  except Exception as e:
251
  logging.warning("ESConnection.insert got exception: " + str(e))
252
+ res = []
253
  if re.search(r"(Timeout|time out)", str(e), re.IGNORECASE):
254
+ res.append(str(e))
255
  time.sleep(3)
256
  continue
257
  return res