MCPcopy Create free account
hub / github.com/nlweb-ai/NLWeb / prepare

Method prepare

AskAgent/python/methods/generate_answer.py:62–83  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

60 raise
61
62 async def prepare(self):
63 # runs the tasks that need to be done before retrieval, ranking, etc.
64 logger.info("Starting preparation phase")
65 tasks = []
66
67 # Adding all necessary preparation tasks
68 tasks.append(asyncio.create_task(analyze_query.DetectItemType(self).do()))
69 tasks.append(asyncio.create_task(self.decontextualizeQuery().do()))
70 tasks.append(asyncio.create_task(relevance_detection.RelevanceDetection(self).do()))
71 tasks.append(asyncio.create_task(memory.Memory(self).do()))
72 tasks.append(asyncio.create_task(required_info.RequiredInfo(self).do()))
73
74 try:
75 logger.debug(f"Running {len(tasks)} preparation tasks concurrently")
76 await asyncio.gather(*tasks, return_exceptions=True)
77 except Exception as e:
78 logger.exception(f"Error during preparation tasks: {e}")
79 finally:
80 self.pre_checks_done_event.set() # Signal completion regardless of errors
81 self.state.set_pre_checks_done()
82
83 logger.info("Preparation phase completed")
84
85 async def rankItem(self, url, json_str, name, site):
86 if not self.connection_alive_event.is_set():

Callers 1

runQueryMethod · 0.95

Calls 7

decontextualizeQueryMethod · 0.80
setMethod · 0.80
set_pre_checks_doneMethod · 0.80
infoMethod · 0.45
doMethod · 0.45
debugMethod · 0.45
exceptionMethod · 0.45

Tested by

no test coverage detected