Заставить агент LangChain выводить также информацию о получении

Я работаю над созданием агента langchain

      logging.info("Initializing the tools")
        tools = [
            StructuredTool.from_function(some_func),
            Tool(
                name="QA",
                func=(lambda message: extract_QA(docsearch, message, company, language, info=info)),
                description="useful for when you need to answer questions. You should ask targeted questions",
                return_direct=True,
                verbose=True
            )
        ]

        # Init the agent
        logging.info("Initializing the agent")
        agent = initialize_agent(
            tools,
            chat_model,
            agent=AgentType.OPENAI_FUNCTIONS,
            verbose=True,
            system_message=system_message,
            max_iterations=2,
            agent_kwargs={
                "system_message": system_message
              } | agent_kwargs,
            memory=memory
        )

Где функция extract_QA — это поиск по сходству

      def extract_QA(docsearch: Pinecone, message:str, company: str, language: str = "spanish", info: str = ""):
  result = docsearch(inputs={"message": message, "question": message, "company": company, "language": language})
  info = result.get("summaries", "")
  return result["answer"]

Однако я хотел бы получить в качестве вывода не только строку окончательного вывода агента, но и ближайший документ, полученный при поиске документов, есть ли способ сделать это?

У меня нет идей, и документация не поддерживает этот вариант использования.

0 ответов

Другие вопросы по тегам