인간은 도구를 만들고 활용하는 능력을 가지고 있어 신체의 한계를 뛰어넘고 더 넓은 세계를 탐험할 수 있습니다.
인공지능의 기본 모델은 훈련 단계에서 얻은 가중치에만 의존한다면 활용 시나리오가 매우 제한적일 것입니다. 그러나 최근 제안된 도구 학습은 대규모 기본과 특정 분야의 전문 도구를 결합합니다. 모델을 사용하면 더 높은 효율성과 성능을 얻을 수 있습니다.
그러나 현재 도구 학습에 대한 연구는 깊이가 충분하지 않으며 관련 오픈 소스 데이터 및 코드가 부족합니다.
최근 칭화대학교 자연어 처리 연구소 등이 지원하는 오픈 소스 커뮤니티인 OpenBMB(Open Lab for Big Model Base)는 개발자가 오픈 소스, 대규모, 고성능을 구축하는 데 도움을 줄 수 있는 ToolBench 프로젝트를 출시했습니다. 품질 지침 튜닝 데이터는 공통 도구를 사용할 수 있는 기능을 통해 대규모 언어 모델의 구축을 촉진합니다.
Repository 링크: https://github.com/OpenBMB/ToolBench
ToolBench 저장소는 관련 데이터 세트, 교육 및 평가 스크립트, ToolBench에서 미세 조정된 기능 모델 ToolLLaMA를 제공합니다.
1. 단일 도구 및 다중 도구 솔루션 지원
단일 도구 설정은 LangChain 프롬프트 스타일을 따르고 다중 도구 설정은 AutoGPT 프롬프트 스타일을 따릅니다.
2 모델 응답에는 최종 답변뿐만 아니라 모델의 사고 체인 프로세스, 도구 실행 및 도구 실행 결과도 포함됩니다
3. 실제 수준의 복잡성과 다단계 도구 호출을 지원합니다
.4. 날씨 정보, 검색, 주식 업데이트, 파워포인트 자동화 등 실제 시나리오에 사용할 수 있는 풍부한 API
5. 모든 데이터는 OpenAI API에 의해 자동 생성되고 개발팀에 의해 필터링됩니다. . 생성 프로세스는 쉽게 확장 가능합니다
그러나 지금까지 공개된 데이터는 최종 데이터가 아니며 연구자들은 데이터 품질을 개선하고 실제 도구의 적용 범위를 늘리기 위해 여전히 데이터를 후처리하고 있다는 점에 유의하는 것이 중요합니다. .
ToolBench의 일반적인 아이디어는 지도 데이터에서 대규모 언어 모델을 훈련하는 BMTools를 기반으로 합니다.
웨어하우스에는 단일 도구 시나리오와 다중 도구 시나리오를 포괄하는 312,000개의 실제 API 호출에서 얻은 9,800개의 데이터가 포함되어 있습니다. 다음은 단일 도구의 통계 정보입니다.
데이터의 각 행은 데이터 생성을 위한 프롬프트 템플릿, 도구 사용을 위한 수동 지침(쿼리), 중간 사고/도구 실행 루프 및 최종을 포함하는 json dict입니다. 답변.
Tool Descrition:BMTools Tool_name: translationTool action: get_translationaction_input: {"text": target texts, "tgt_lang": target language}Generated Data:{"prompt": "Answer the following questions as best you can. Specifically, you have access to the following APIs:\n\nget_translation: . Your input should be a json (args json schema): {{\"text\" : string, \"tgt_lang\" : string, }} The Action to trigger this API should be get_translation and the input parameters should be a json dict string. Pay attention to the type of parameters.\n\nUse the following format:\n\nQuestion: the input question you must answer\nThought: you should always think about what to do\nAction: the action to take, should be one of [get_translation]\nAction Input: the input to the action\nObservation: the result of the action\n... (this Thought/Action/Action Input/Observation can repeat N times, max 7 times)\nThought: I now know the final answer\nFinal Answer: the final answer to the original input question\n\nBegin! Remember: (1) Follow the format, i.e,\nThought:\nAction:\nAction Input:\nObservation:\nFinal Answer:\n (2) Provide as much as useful information in your Final Answer. (3) Do not make up anything, and if your Observation has no link, DO NOT hallucihate one. (4) If you have enough information and want to stop the process, please use \nThought: I have got enough information\nFinal Answer: **your response. \n The Action: MUST be one of the following:get_translation\nQuestion: {input}\n Agent scratchpad (history actions):\n {agent_scratchpad}","query": "My intention is to convert the data provided in ما هي الأقسام الثلاثة للقوات المسلحة؟ into Arabic(ara).\n","chains": [{"thought": "I need to use the get_translation API to convert the text into Arabic.","action": "get_translation","action_input": "{\"text\": \"What are the three branches of the military?\", \"tgt_lang\": \"ara\"}","observation": "\"ما هي الفروع الثلاثة للجيش ؟\""}],"answer": "The translation of \"What are the three branches of the military?\" into Arabic is \"ما هي الفروع الثلاثة للجيش ؟\"."}
기계 평가: 연구원들은 기계 평가 테스트 플랫폼을 구축하기 위해 각 도구에 대해 무작위로 100개의 체인 단계를 선택했으며, 평균 27개의 최종 단계와 73개의 중간 도구 호출 단계가 있습니다. 단계는 Rouge-L 측정항목을 사용하여 평가되고 중간 단계는 ExactMatch 측정항목을 사용하여 평가됩니다.
수동 평가: 날씨, 지도, 주식, 번역, 화학, WolframAlpha 도구 중 무작위로 10개의 쿼리를 선택한 후 도구 호출 프로세스의 합격률을 평가하고 최종 답변 및 ChatGPT 최종 답변 비교.
ChatGPT 평가: ChatGPT를 통해 LLaMA 및 ChatGPT에 대한 답변 및 도구 사용 체인을 자동으로 평가합니다.
평가 결과는 다음과 같습니다(점수가 높을수록 좋음). 다양한 시나리오에서 ToolLLaMA가 ChatGPT와 동일하거나 더 나은 성능을 보이는 것을 알 수 있습니다.
칭화대학교, 런민대학교, 북경 우편통신대학교 등 국내외 유명 대학이 공동으로 발표한 논문에서 도구 학습 체계적으로 연구된 연구로, 인지적 기원, 기본 모델의 패러다임 전환, 도구와 모델의 보완적 역할을 포함한 도구 학습의 배경을 소개합니다.
논문 링크: https://arxiv.org/pdf/2304.08354.pdf
이 기사는 또한 도구 강화 및 도구 중심 학습을 포함한 기존 도구 학습 연구를 검토하고 일반적인 도구 학습 프레임워크를 공식화합니다. 사용자 지침을 이해하는 것부터 시작하여 모델은 복잡한 작업을 여러 하위 구성 요소로 분해하는 방법을 학습해야 합니다. , 추론을 통해 계획을 동적으로 조정하고 올바른 도구를 선택하여 각 하위 작업을 효율적으로 완료합니다.
이 기사에서는 도구 사용을 개선하고 도구 학습의 대중화를 촉진하기 위해 모델을 훈련하는 방법도 논의합니다.
이전 연구에서는 체계적인 도구 학습 평가가 부족한 점을 고려하여 연구원들은 17개의 대표적인 도구를 사용하여 실험을 수행하고 도구를 능숙하게 활용하는 데 있어 현재 기본 모델의 잠재력을 입증했습니다.
이 문서는 안전하고 신뢰할 수 있는 도구 사용 보장, 기본 모델을 사용한 도구 생성 구현, 개인화 문제 해결 등 추가 연구가 필요한 도구 학습의 여러 공개 문제를 논의하는 것으로 마무리됩니다.
참조:
https://github.com/OpenBMB/ToolBench
위 내용은 Tsinghua University 및 기타 오픈 소스 '도구 학습 벤치마크' ToolBench, 미세 조정 모델 ToolLLaMA의 성능이 ChatGPT를 능가함의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!