From 2a4a0e9a02cfbf36b9c8baf7fe1d51d82b4b2929 Mon Sep 17 00:00:00 2001 From: liqul Date: Sat, 14 Sep 2024 09:06:36 +0000 Subject: [PATCH] deploy: 1c3a0dea986bf05ed402c99fe92134d11d970114 --- 404.html | 2 +- .../{0af277c2.70181290.js => 0af277c2.60bbc227.js} | 2 +- .../{1531ba9d.9bfdc49f.js => 1531ba9d.96211247.js} | 2 +- .../{1bff86ef.b04d1360.js => 1bff86ef.0858d421.js} | 2 +- .../{1cc2dcef.bb413d92.js => 1cc2dcef.0c4259f4.js} | 2 +- .../{223de7e7.2522ec11.js => 223de7e7.7150298a.js} | 2 +- .../{3e02b86d.a21978c5.js => 3e02b86d.62b330dd.js} | 2 +- .../{722a149d.b81fe1d3.js => 722a149d.76095001.js} | 2 +- .../{814f3328.5adbf15e.js => 814f3328.d8570f79.js} | 2 +- .../{9fc0d84d.a8cd256d.js => 9fc0d84d.5bac0319.js} | 2 +- .../{a27d32e8.438b01f2.js => a27d32e8.4d662586.js} | 2 +- .../{c39bf4d4.f617c628.js => c39bf4d4.445bf513.js} | 2 +- .../{fa48389a.719f6db1.js => fa48389a.c048c46d.js} | 2 +- ...e~main.658ec7c4.js => runtime~main.1159b0ff.js} | 2 +- blog/archive/index.html | 2 +- blog/atom.xml | 12 ++++++------ blog/evaluation/index.html | 6 +++--- blog/experience/index.html | 6 +++--- blog/index.html | 14 +++++++------- blog/local_llm/index.html | 6 +++--- blog/plugin/index.html | 6 +++--- blog/role/index.html | 6 +++--- blog/rss.xml | 12 ++++++------ docs/FAQ/index.html | 2 +- docs/advanced/cli_only/index.html | 2 +- docs/advanced/code_verification/index.html | 2 +- docs/advanced/compression/index.html | 2 +- docs/advanced/index.html | 2 +- docs/advanced/plugin_selection/index.html | 2 +- docs/advanced/telemetry/index.html | 2 +- docs/code_execution/index.html | 2 +- docs/concepts/app/index.html | 2 +- docs/concepts/attachment/index.html | 2 +- docs/concepts/conversation/index.html | 2 +- docs/concepts/index.html | 2 +- docs/concepts/plugin/index.html | 2 +- docs/concepts/post/index.html | 2 +- docs/concepts/project/index.html | 2 +- docs/concepts/role/index.html | 2 +- docs/concepts/round/index.html | 2 +- docs/concepts/session/index.html | 2 +- .../configurations_in_detail/index.html | 2 +- docs/configurations/overview/index.html | 2 +- docs/customization/example/index.html | 2 +- .../experience/handcrafted_experience/index.html | 2 +- docs/customization/experience/index.html | 2 +- docs/customization/index.html | 2 +- docs/llms/Keywords-AI/index.html | 2 +- docs/llms/anthropic/index.html | 2 +- docs/llms/aoai/index.html | 2 +- docs/llms/customized_llm_api/index.html | 2 +- docs/llms/gemini/index.html | 2 +- docs/llms/glm/index.html | 2 +- docs/llms/groq/index.html | 2 +- docs/llms/index.html | 2 +- docs/llms/liteLLM/index.html | 2 +- docs/llms/multi-llm/index.html | 2 +- docs/llms/ollama/index.html | 2 +- docs/llms/openai/index.html | 2 +- docs/llms/qwen/index.html | 2 +- docs/memory/index.html | 2 +- docs/overview/index.html | 2 +- docs/plugin/how_to_develop_a_new_plugin/index.html | 2 +- docs/plugin/multi_yaml_single_impl/index.html | 2 +- docs/plugin/plugin_intro/index.html | 2 +- docs/plugin/plugin_only/index.html | 2 +- docs/quickstart/index.html | 2 +- docs/usage/cmd/index.html | 2 +- docs/usage/docker/index.html | 2 +- docs/usage/index.html | 2 +- docs/usage/library/index.html | 2 +- docs/usage/webui/index.html | 2 +- index.html | 2 +- markdown-page/index.html | 2 +- search-index-blog.json | 2 +- search-index-docs.json | 2 +- search/index.html | 2 +- 77 files changed, 103 insertions(+), 103 deletions(-) rename assets/js/{0af277c2.70181290.js => 0af277c2.60bbc227.js} (98%) rename assets/js/{1531ba9d.9bfdc49f.js => 1531ba9d.96211247.js} (99%) rename assets/js/{1bff86ef.b04d1360.js => 1bff86ef.0858d421.js} (99%) rename assets/js/{1cc2dcef.bb413d92.js => 1cc2dcef.0c4259f4.js} (99%) rename assets/js/{223de7e7.2522ec11.js => 223de7e7.7150298a.js} (98%) rename assets/js/{3e02b86d.a21978c5.js => 3e02b86d.62b330dd.js} (99%) rename assets/js/{722a149d.b81fe1d3.js => 722a149d.76095001.js} (99%) rename assets/js/{814f3328.5adbf15e.js => 814f3328.d8570f79.js} (62%) rename assets/js/{9fc0d84d.a8cd256d.js => 9fc0d84d.5bac0319.js} (98%) rename assets/js/{a27d32e8.438b01f2.js => a27d32e8.4d662586.js} (99%) rename assets/js/{c39bf4d4.f617c628.js => c39bf4d4.445bf513.js} (97%) rename assets/js/{fa48389a.719f6db1.js => fa48389a.c048c46d.js} (97%) rename assets/js/{runtime~main.658ec7c4.js => runtime~main.1159b0ff.js} (70%) diff --git a/404.html b/404.html index c27def95..4dd3f977 100644 --- a/404.html +++ b/404.html @@ -5,7 +5,7 @@ Page Not Found | TaskWeaver - + diff --git a/assets/js/0af277c2.70181290.js b/assets/js/0af277c2.60bbc227.js similarity index 98% rename from assets/js/0af277c2.70181290.js rename to assets/js/0af277c2.60bbc227.js index 3405fde8..51463dad 100644 --- a/assets/js/0af277c2.70181290.js +++ b/assets/js/0af277c2.60bbc227.js @@ -1 +1 @@ -"use strict";(self.webpackChunkwebsite=self.webpackChunkwebsite||[]).push([[1275],{8720:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>s,contentTitle:()=>c,default:()=>p,frontMatter:()=>o,metadata:()=>a,toc:()=>l});var i=t(4848),r=t(8453);const o={},c="Experience selection",a={permalink:"/TaskWeaver/blog/experience",editUrl:"https://github.com/microsoft/TaskWeaver/tree/main/website/blog/experience.md",source:"@site/blog/experience.md",title:"Experience selection",description:"We have introduced the motivation of the experience module in Experience",date:"2024-09-14T08:52:44.000Z",tags:[],readingTime:3.725,hasTruncateMarker:!0,authors:[],frontMatter:{},unlisted:!1,prevItem:{title:"How to evaluate a LLM agent?",permalink:"/TaskWeaver/blog/evaluation"},nextItem:{title:"Run TaskWeaver with Locally Deployed Not-that-Large Language Models",permalink:"/TaskWeaver/blog/local_llm"}},s={authorsImageUrls:[]},l=[{value:"Static experience selection",id:"static-experience-selection",level:2}];function d(e){const n={a:"a",admonition:"admonition",code:"code",h2:"h2",p:"p",pre:"pre",...(0,r.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsxs)(n.p,{children:["We have introduced the motivation of the ",(0,i.jsx)(n.code,{children:"experience"})," module in ",(0,i.jsx)(n.a,{href:"/docs/customization/experience",children:"Experience"}),"\nand how to create a handcrafted experience in ",(0,i.jsx)(n.a,{href:"/docs/customization/experience/handcrafted_experience",children:"Handcrafted Experience"}),".\nIn this blog post, we discuss more advanced topics about the experience module on experience selection."]}),"\n",(0,i.jsx)(n.h2,{id:"static-experience-selection",children:"Static experience selection"}),"\n",(0,i.jsxs)(n.p,{children:["Every role in TaskWeaver can configure its own experience directory, which can be configured\nby setting the ",(0,i.jsx)(n.code,{children:"role_name.experience_dir"})," field in the project configuration file.\nFor the ",(0,i.jsx)(n.code,{children:"Planner"})," and ",(0,i.jsx)(n.code,{children:"CodeInterpreter"})," roles, you can configure the experience directory\nby setting the ",(0,i.jsx)(n.code,{children:"planner.experience_dir"})," and ",(0,i.jsx)(n.code,{children:"code_interpreter.experience_dir"})," fields respectively.\nThe default experience directory is ",(0,i.jsx)(n.code,{children:"experience"})," in the project directory."]}),"\n",(0,i.jsx)(n.admonition,{type:"info",children:(0,i.jsxs)(n.p,{children:["The role name is by default the name of the implementation file (without the extension) of the role unless\nyou have specified the role name by calling ",(0,i.jsx)(n.code,{children:"_set_name"})," in the implementation file."]})}),"\n",(0,i.jsxs)(n.p,{children:["By configuring different experience directories for different roles,\nyou can have different experiences for different roles in a static way.\nUse the ",(0,i.jsx)(n.code,{children:"Planner"})," role as an example, you can have the following project configuration file\nto enable the experience selection for the ",(0,i.jsx)(n.code,{children:"Planner"})," role."]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-json",children:'{\n "planner.use_experience": true,\n "planner.experience_dir": "planner_exp_dir"\n}\n'})})]})}function p(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(d,{...e})}):d(e)}},8453:(e,n,t)=>{t.d(n,{R:()=>c,x:()=>a});var i=t(6540);const r={},o=i.createContext(r);function c(e){const n=i.useContext(o);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:c(e.components),i.createElement(o.Provider,{value:n},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkwebsite=self.webpackChunkwebsite||[]).push([[1275],{8720:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>s,contentTitle:()=>c,default:()=>p,frontMatter:()=>o,metadata:()=>a,toc:()=>l});var i=t(4848),r=t(8453);const o={},c="Experience selection",a={permalink:"/TaskWeaver/blog/experience",editUrl:"https://github.com/microsoft/TaskWeaver/tree/main/website/blog/experience.md",source:"@site/blog/experience.md",title:"Experience selection",description:"We have introduced the motivation of the experience module in Experience",date:"2024-09-14T09:04:58.000Z",tags:[],readingTime:3.725,hasTruncateMarker:!0,authors:[],frontMatter:{},unlisted:!1,prevItem:{title:"How to evaluate a LLM agent?",permalink:"/TaskWeaver/blog/evaluation"},nextItem:{title:"Run TaskWeaver with Locally Deployed Not-that-Large Language Models",permalink:"/TaskWeaver/blog/local_llm"}},s={authorsImageUrls:[]},l=[{value:"Static experience selection",id:"static-experience-selection",level:2}];function d(e){const n={a:"a",admonition:"admonition",code:"code",h2:"h2",p:"p",pre:"pre",...(0,r.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsxs)(n.p,{children:["We have introduced the motivation of the ",(0,i.jsx)(n.code,{children:"experience"})," module in ",(0,i.jsx)(n.a,{href:"/docs/customization/experience",children:"Experience"}),"\nand how to create a handcrafted experience in ",(0,i.jsx)(n.a,{href:"/docs/customization/experience/handcrafted_experience",children:"Handcrafted Experience"}),".\nIn this blog post, we discuss more advanced topics about the experience module on experience selection."]}),"\n",(0,i.jsx)(n.h2,{id:"static-experience-selection",children:"Static experience selection"}),"\n",(0,i.jsxs)(n.p,{children:["Every role in TaskWeaver can configure its own experience directory, which can be configured\nby setting the ",(0,i.jsx)(n.code,{children:"role_name.experience_dir"})," field in the project configuration file.\nFor the ",(0,i.jsx)(n.code,{children:"Planner"})," and ",(0,i.jsx)(n.code,{children:"CodeInterpreter"})," roles, you can configure the experience directory\nby setting the ",(0,i.jsx)(n.code,{children:"planner.experience_dir"})," and ",(0,i.jsx)(n.code,{children:"code_interpreter.experience_dir"})," fields respectively.\nThe default experience directory is ",(0,i.jsx)(n.code,{children:"experience"})," in the project directory."]}),"\n",(0,i.jsx)(n.admonition,{type:"info",children:(0,i.jsxs)(n.p,{children:["The role name is by default the name of the implementation file (without the extension) of the role unless\nyou have specified the role name by calling ",(0,i.jsx)(n.code,{children:"_set_name"})," in the implementation file."]})}),"\n",(0,i.jsxs)(n.p,{children:["By configuring different experience directories for different roles,\nyou can have different experiences for different roles in a static way.\nUse the ",(0,i.jsx)(n.code,{children:"Planner"})," role as an example, you can have the following project configuration file\nto enable the experience selection for the ",(0,i.jsx)(n.code,{children:"Planner"})," role."]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-json",children:'{\n "planner.use_experience": true,\n "planner.experience_dir": "planner_exp_dir"\n}\n'})})]})}function p(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(d,{...e})}):d(e)}},8453:(e,n,t)=>{t.d(n,{R:()=>c,x:()=>a});var i=t(6540);const r={},o=i.createContext(r);function c(e){const n=i.useContext(o);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:c(e.components),i.createElement(o.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/1531ba9d.9bfdc49f.js b/assets/js/1531ba9d.96211247.js similarity index 99% rename from assets/js/1531ba9d.9bfdc49f.js rename to assets/js/1531ba9d.96211247.js index 2ec8245b..e3183a58 100644 --- a/assets/js/1531ba9d.9bfdc49f.js +++ b/assets/js/1531ba9d.96211247.js @@ -1 +1 @@ -"use strict";(self.webpackChunkwebsite=self.webpackChunkwebsite||[]).push([[6489],{1591:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>r,contentTitle:()=>l,default:()=>d,frontMatter:()=>a,metadata:()=>o,toc:()=>h});var i=t(4848),s=t(8453);const a={},l="Plugins In-Depth",o={permalink:"/TaskWeaver/blog/plugin",editUrl:"https://github.com/microsoft/TaskWeaver/tree/main/website/blog/plugin.md",source:"@site/blog/plugin.md",title:"Plugins In-Depth",description:"**Pre-requisites**: Please refer to the Introduction and the Plugin Development",date:"2024-09-14T08:52:44.000Z",tags:[],readingTime:4.7,hasTruncateMarker:!0,authors:[],frontMatter:{},unlisted:!1,prevItem:{title:"Run TaskWeaver with Locally Deployed Not-that-Large Language Models",permalink:"/TaskWeaver/blog/local_llm"},nextItem:{title:"Roles in TaskWeaver",permalink:"/TaskWeaver/blog/role"}},r={authorsImageUrls:[]},h=[{value:"Plugin Basics",id:"plugin-basics",level:2},{value:"Configurations and States",id:"configurations-and-states",level:2},{value:"The Plugin Lifecycle",id:"the-plugin-lifecycle",level:2},{value:"Conclusion",id:"conclusion",level:2}];function c(e){const n={a:"a",code:"code",em:"em",h2:"h2",p:"p",pre:"pre",strong:"strong",...(0,s.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.p,{children:(0,i.jsxs)(n.em,{children:[(0,i.jsx)(n.strong,{children:"Pre-requisites"}),": Please refer to the ",(0,i.jsx)(n.a,{href:"/docs/plugin/plugin_intro",children:"Introduction"})," and the ",(0,i.jsx)(n.a,{href:"/docs/plugin/how_to_develop_a_new_plugin",children:"Plugin Development"}),"\npages for a better understanding of the plugin concept and its development process."]})}),"\n",(0,i.jsx)(n.h2,{id:"plugin-basics",children:"Plugin Basics"}),"\n",(0,i.jsxs)(n.p,{children:["In TaskWeaver, the plugins are the essential components to extend the functionality of the agent.\nSpecifically, a plugin is a piece of code wrapped in a class that can be called as a function by the agent in the generated code snippets.\nThe following is a simple example of a plugin that generates ",(0,i.jsx)(n.code,{children:"n"})," random numbers:"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-python",children:"from taskweaver.plugin import Plugin, register_plugin\n\n@register_plugin\nclass RandomGenerator(Plugin):\n def __call__(self, n: int):\n import random\n return [random.randint(1, 100) for _ in range(n)]\n"})}),"\n",(0,i.jsxs)(n.p,{children:["In this example, the ",(0,i.jsx)(n.code,{children:"RandomGenerator"})," class inherits the ",(0,i.jsx)(n.code,{children:"Plugin"})," class and implements the ",(0,i.jsx)(n.code,{children:"__call__"})," method, which means\nit can be called as a function. What would be the function signature of the plugin?\nIt is defined in the associated YAML file. For example, the YAML file for the ",(0,i.jsx)(n.code,{children:"RandomGenerator"})," plugin is as follows:"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-yaml",children:"name: random_generator\nenabled: true\nrequired: true\ndescription: >-\n This plugin generates n random numbers between 1 and 100.\nexamples: |-\n result = random_generator(n=5)\nparameters:\n - name: n\n type: int\n required: true\n description: >-\n The number of random numbers to generate.\n\nreturns:\n - name: result\n type: list\n description: >-\n The list of random numbers.\n"})}),"\n",(0,i.jsxs)(n.p,{children:["The YAML file specifies the name, description, parameters, and return values of the plugin.\nWhen the LLM generates the code snippets, it will use the information in the YAML file to generate the function signature.\nWe did not check the discrepancy between the function signature in the Python implementation and the YAML file.\nSo, it is important to keep them consistent.\nThe ",(0,i.jsx)(n.code,{children:"examples"})," field is used to provide examples of how to use the plugin for the LLM."]}),"\n",(0,i.jsx)(n.h2,{id:"configurations-and-states",children:"Configurations and States"}),"\n",(0,i.jsxs)(n.p,{children:["Although the plugin is used as a function in the code snippets, it is more than a normal Python function.\nThe plugin can have its own configurations and states.\nFor example, the ",(0,i.jsx)(n.code,{children:"RandomGenerator"})," plugin can have a configuration to specify the range of the random numbers.\nThe configurations can be set in the YAML file as follows:"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-yaml",children:"# the previous part of the YAML file\nconfigurations:\n - name: range\n type: list\n required: false\n description: >-\n The range of the random numbers.\n default: [1, 100]\n"})}),"\n",(0,i.jsxs)(n.p,{children:["We did not show how to use the configurations in the plugin implementation,\nwhich could be found in one of our sample plugins, namely ",(0,i.jsx)(n.a,{href:"https://github.com/microsoft/TaskWeaver/blob/main/project/plugins/sql_pull_data.yaml",children:"sql_pull_data"}),".\nSupporting configurations in the plugin is a powerful feature to make the plugin more flexible and reusable.\nFor example, we can have multiple YAML files pointing to the same Python implementation but with different configurations.\nRead this ",(0,i.jsx)(n.a,{href:"/docs/plugin/multi_yaml_single_impl",children:"page"})," for more details. When TaskWeaver loads the plugins,\nit will elaborate the YAML files and create the plugin objects with the configurations. Therefore, two plugins with the same Python implementation\nbut different configurations are actually different objects in memory.\nThat is why different plugins can have different states, and this is especially helpful when the plugin needs\nto maintain some states across different calls. Consider the example of the ",(0,i.jsx)(n.code,{children:"sql_pull_data"})," sample plugin, which has the following\ncode snippet:"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-python",children:'@register_plugin\nclass SqlPullData(Plugin):\n db = None\n\n def __call__(self, query: str):\n ...\n\n if self.db is None:\n self.db = SQLDatabase.from_uri(self.config.get("sqlite_db_path"))\n'})}),"\n",(0,i.jsxs)(n.p,{children:["In the example above, the ",(0,i.jsx)(n.code,{children:"SqlPullData"})," plugin maintains a database connection across different calls.\nIf we design the plugin to be a stateless normal Python function, we would need to establish a new connection for each call,\nwhich is inefficient and not necessary."]}),"\n",(0,i.jsx)(n.h2,{id:"the-plugin-lifecycle",children:"The Plugin Lifecycle"}),"\n",(0,i.jsxs)(n.p,{children:["The plugin lifecycle is the process of how the plugin is loaded, initialized, and called by the agent.\nWhen TaskWeaver starts, it goes through all the plugin configuration files in the ",(0,i.jsx)(n.code,{children:"plugins"})," directory\nand creates the plugin entries in the memory. The Python implementation of the plugin is not loaded at this stage.\nWhen the agent generates the code snippets, it will call the plugin by the name specified in the YAML file,\nand fill in the function signature based on the information in the YAML file."]}),"\n",(0,i.jsxs)(n.p,{children:["The plugin is loaded and initialized when the code executor executes the code snippets for the first time\nin a session.\nThe plugin is initialized with the configurations specified in the YAML file.\nAlthough we have the ",(0,i.jsx)(n.a,{href:"/docs/advanced/plugin_selection",children:"feature"})," to dynamically select the plugins in the LLM, all the plugins are loaded\nno matter whether they are used in the current conversation round. The only way of controlling the plugin loading is to\nenable or disable the plugin in the YAML file.\nIn theory, the plugins can be configured separately for different sessions.\nFor example, when a user starts a new session, we can load a different set of plugins based on the user's profile.\nBut this feature is ",(0,i.jsx)(n.strong,{children:"not"})," supported in TaskWeaver yet."]}),"\n",(0,i.jsx)(n.p,{children:"The plugin is called when the agent executes the code snippets. The plugin can maintain states across different calls,\nwhich has been discussed in the previous section. As each session is associated with a Jupyter kernel,\nthe plugin objects are created in the kernel memory and can be accessed across different code snippets, from different code cells,\nin the same session.\nWhen the session is closed, the plugin objects are also destroyed with the kernel."}),"\n",(0,i.jsx)(n.h2,{id:"conclusion",children:"Conclusion"}),"\n",(0,i.jsx)(n.p,{children:"In this page, we discussed the basics of the plugin in TaskWeaver, including the plugin implementation, the YAML file,\nthe configurations, and the states. We also introduced the plugin lifecycle, which is the process of how the plugin is loaded, initialized, and called by the agent.\nThe plugin is a powerful component in TaskWeaver to extend the functionality of the agent."})]})}function d(e={}){const{wrapper:n}={...(0,s.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(c,{...e})}):c(e)}},8453:(e,n,t)=>{t.d(n,{R:()=>l,x:()=>o});var i=t(6540);const s={},a=i.createContext(s);function l(e){const n=i.useContext(a);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function o(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:l(e.components),i.createElement(a.Provider,{value:n},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkwebsite=self.webpackChunkwebsite||[]).push([[6489],{1591:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>r,contentTitle:()=>l,default:()=>d,frontMatter:()=>a,metadata:()=>o,toc:()=>h});var i=t(4848),s=t(8453);const a={},l="Plugins In-Depth",o={permalink:"/TaskWeaver/blog/plugin",editUrl:"https://github.com/microsoft/TaskWeaver/tree/main/website/blog/plugin.md",source:"@site/blog/plugin.md",title:"Plugins In-Depth",description:"**Pre-requisites**: Please refer to the Introduction and the Plugin Development",date:"2024-09-14T09:04:58.000Z",tags:[],readingTime:4.7,hasTruncateMarker:!0,authors:[],frontMatter:{},unlisted:!1,prevItem:{title:"Run TaskWeaver with Locally Deployed Not-that-Large Language Models",permalink:"/TaskWeaver/blog/local_llm"},nextItem:{title:"Roles in TaskWeaver",permalink:"/TaskWeaver/blog/role"}},r={authorsImageUrls:[]},h=[{value:"Plugin Basics",id:"plugin-basics",level:2},{value:"Configurations and States",id:"configurations-and-states",level:2},{value:"The Plugin Lifecycle",id:"the-plugin-lifecycle",level:2},{value:"Conclusion",id:"conclusion",level:2}];function c(e){const n={a:"a",code:"code",em:"em",h2:"h2",p:"p",pre:"pre",strong:"strong",...(0,s.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.p,{children:(0,i.jsxs)(n.em,{children:[(0,i.jsx)(n.strong,{children:"Pre-requisites"}),": Please refer to the ",(0,i.jsx)(n.a,{href:"/docs/plugin/plugin_intro",children:"Introduction"})," and the ",(0,i.jsx)(n.a,{href:"/docs/plugin/how_to_develop_a_new_plugin",children:"Plugin Development"}),"\npages for a better understanding of the plugin concept and its development process."]})}),"\n",(0,i.jsx)(n.h2,{id:"plugin-basics",children:"Plugin Basics"}),"\n",(0,i.jsxs)(n.p,{children:["In TaskWeaver, the plugins are the essential components to extend the functionality of the agent.\nSpecifically, a plugin is a piece of code wrapped in a class that can be called as a function by the agent in the generated code snippets.\nThe following is a simple example of a plugin that generates ",(0,i.jsx)(n.code,{children:"n"})," random numbers:"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-python",children:"from taskweaver.plugin import Plugin, register_plugin\n\n@register_plugin\nclass RandomGenerator(Plugin):\n def __call__(self, n: int):\n import random\n return [random.randint(1, 100) for _ in range(n)]\n"})}),"\n",(0,i.jsxs)(n.p,{children:["In this example, the ",(0,i.jsx)(n.code,{children:"RandomGenerator"})," class inherits the ",(0,i.jsx)(n.code,{children:"Plugin"})," class and implements the ",(0,i.jsx)(n.code,{children:"__call__"})," method, which means\nit can be called as a function. What would be the function signature of the plugin?\nIt is defined in the associated YAML file. For example, the YAML file for the ",(0,i.jsx)(n.code,{children:"RandomGenerator"})," plugin is as follows:"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-yaml",children:"name: random_generator\nenabled: true\nrequired: true\ndescription: >-\n This plugin generates n random numbers between 1 and 100.\nexamples: |-\n result = random_generator(n=5)\nparameters:\n - name: n\n type: int\n required: true\n description: >-\n The number of random numbers to generate.\n\nreturns:\n - name: result\n type: list\n description: >-\n The list of random numbers.\n"})}),"\n",(0,i.jsxs)(n.p,{children:["The YAML file specifies the name, description, parameters, and return values of the plugin.\nWhen the LLM generates the code snippets, it will use the information in the YAML file to generate the function signature.\nWe did not check the discrepancy between the function signature in the Python implementation and the YAML file.\nSo, it is important to keep them consistent.\nThe ",(0,i.jsx)(n.code,{children:"examples"})," field is used to provide examples of how to use the plugin for the LLM."]}),"\n",(0,i.jsx)(n.h2,{id:"configurations-and-states",children:"Configurations and States"}),"\n",(0,i.jsxs)(n.p,{children:["Although the plugin is used as a function in the code snippets, it is more than a normal Python function.\nThe plugin can have its own configurations and states.\nFor example, the ",(0,i.jsx)(n.code,{children:"RandomGenerator"})," plugin can have a configuration to specify the range of the random numbers.\nThe configurations can be set in the YAML file as follows:"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-yaml",children:"# the previous part of the YAML file\nconfigurations:\n - name: range\n type: list\n required: false\n description: >-\n The range of the random numbers.\n default: [1, 100]\n"})}),"\n",(0,i.jsxs)(n.p,{children:["We did not show how to use the configurations in the plugin implementation,\nwhich could be found in one of our sample plugins, namely ",(0,i.jsx)(n.a,{href:"https://github.com/microsoft/TaskWeaver/blob/main/project/plugins/sql_pull_data.yaml",children:"sql_pull_data"}),".\nSupporting configurations in the plugin is a powerful feature to make the plugin more flexible and reusable.\nFor example, we can have multiple YAML files pointing to the same Python implementation but with different configurations.\nRead this ",(0,i.jsx)(n.a,{href:"/docs/plugin/multi_yaml_single_impl",children:"page"})," for more details. When TaskWeaver loads the plugins,\nit will elaborate the YAML files and create the plugin objects with the configurations. Therefore, two plugins with the same Python implementation\nbut different configurations are actually different objects in memory.\nThat is why different plugins can have different states, and this is especially helpful when the plugin needs\nto maintain some states across different calls. Consider the example of the ",(0,i.jsx)(n.code,{children:"sql_pull_data"})," sample plugin, which has the following\ncode snippet:"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-python",children:'@register_plugin\nclass SqlPullData(Plugin):\n db = None\n\n def __call__(self, query: str):\n ...\n\n if self.db is None:\n self.db = SQLDatabase.from_uri(self.config.get("sqlite_db_path"))\n'})}),"\n",(0,i.jsxs)(n.p,{children:["In the example above, the ",(0,i.jsx)(n.code,{children:"SqlPullData"})," plugin maintains a database connection across different calls.\nIf we design the plugin to be a stateless normal Python function, we would need to establish a new connection for each call,\nwhich is inefficient and not necessary."]}),"\n",(0,i.jsx)(n.h2,{id:"the-plugin-lifecycle",children:"The Plugin Lifecycle"}),"\n",(0,i.jsxs)(n.p,{children:["The plugin lifecycle is the process of how the plugin is loaded, initialized, and called by the agent.\nWhen TaskWeaver starts, it goes through all the plugin configuration files in the ",(0,i.jsx)(n.code,{children:"plugins"})," directory\nand creates the plugin entries in the memory. The Python implementation of the plugin is not loaded at this stage.\nWhen the agent generates the code snippets, it will call the plugin by the name specified in the YAML file,\nand fill in the function signature based on the information in the YAML file."]}),"\n",(0,i.jsxs)(n.p,{children:["The plugin is loaded and initialized when the code executor executes the code snippets for the first time\nin a session.\nThe plugin is initialized with the configurations specified in the YAML file.\nAlthough we have the ",(0,i.jsx)(n.a,{href:"/docs/advanced/plugin_selection",children:"feature"})," to dynamically select the plugins in the LLM, all the plugins are loaded\nno matter whether they are used in the current conversation round. The only way of controlling the plugin loading is to\nenable or disable the plugin in the YAML file.\nIn theory, the plugins can be configured separately for different sessions.\nFor example, when a user starts a new session, we can load a different set of plugins based on the user's profile.\nBut this feature is ",(0,i.jsx)(n.strong,{children:"not"})," supported in TaskWeaver yet."]}),"\n",(0,i.jsx)(n.p,{children:"The plugin is called when the agent executes the code snippets. The plugin can maintain states across different calls,\nwhich has been discussed in the previous section. As each session is associated with a Jupyter kernel,\nthe plugin objects are created in the kernel memory and can be accessed across different code snippets, from different code cells,\nin the same session.\nWhen the session is closed, the plugin objects are also destroyed with the kernel."}),"\n",(0,i.jsx)(n.h2,{id:"conclusion",children:"Conclusion"}),"\n",(0,i.jsx)(n.p,{children:"In this page, we discussed the basics of the plugin in TaskWeaver, including the plugin implementation, the YAML file,\nthe configurations, and the states. We also introduced the plugin lifecycle, which is the process of how the plugin is loaded, initialized, and called by the agent.\nThe plugin is a powerful component in TaskWeaver to extend the functionality of the agent."})]})}function d(e={}){const{wrapper:n}={...(0,s.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(c,{...e})}):c(e)}},8453:(e,n,t)=>{t.d(n,{R:()=>l,x:()=>o});var i=t(6540);const s={},a=i.createContext(s);function l(e){const n=i.useContext(a);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function o(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:l(e.components),i.createElement(a.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/1bff86ef.b04d1360.js b/assets/js/1bff86ef.0858d421.js similarity index 99% rename from assets/js/1bff86ef.b04d1360.js rename to assets/js/1bff86ef.0858d421.js index bdac4515..c8cfa4fc 100644 --- a/assets/js/1bff86ef.b04d1360.js +++ b/assets/js/1bff86ef.0858d421.js @@ -1 +1 @@ -"use strict";(self.webpackChunkwebsite=self.webpackChunkwebsite||[]).push([[2317],{6486:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>h,contentTitle:()=>i,default:()=>c,frontMatter:()=>s,metadata:()=>r,toc:()=>d});var a=n(4848),o=n(8453);const s={},i="How to evaluate a LLM agent?",r={permalink:"/TaskWeaver/blog/evaluation",editUrl:"https://github.com/microsoft/TaskWeaver/tree/main/website/blog/evaluation.md",source:"@site/blog/evaluation.md",title:"How to evaluate a LLM agent?",description:"The challenges",date:"2024-09-14T08:52:44.000Z",tags:[],readingTime:6.32,hasTruncateMarker:!0,authors:[],frontMatter:{},unlisted:!1,nextItem:{title:"Experience selection",permalink:"/TaskWeaver/blog/experience"}},h={authorsImageUrls:[]},d=[{value:"The challenges",id:"the-challenges",level:2},{value:"A new evaluation method",id:"a-new-evaluation-method",level:2},{value:"How to adapt for other agents?",id:"how-to-adapt-for-other-agents",level:2}];function l(e){const t={a:"a",code:"code",h2:"h2",img:"img",p:"p",pre:"pre",strong:"strong",...(0,o.R)(),...e.components};return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(t.h2,{id:"the-challenges",children:"The challenges"}),"\n",(0,a.jsx)(t.p,{children:"It is nontrivial to evaluate the performance of a LLM agent.\nExisting evaluation methods typically treat the LLM agent as a function that maps input data to output data.\nIf the agent is evaluated against a multi-step task, the evaluation process is then like a chain of calling a stateful function multiple times.\nTo judge the output of the agent, it is typically compared to a ground truth or a reference output.\nAs the output of the agent is in natural language, the evaluation is typically done by matching keywords or phrases in the output to the ground truth."}),"\n",(0,a.jsx)(t.p,{children:"This evaluation method has its limitations due to its rigid nature.\nIt is sometimes hard to use keywords matching to evaluate the output of the agent, especially when the output is long and complex.\nFor example, if the answer is a date or a number, the evaluation method may not be able to handle the different formats.\nMoreover, the evaluation method should be able to act more like a human, who can understand the context and the meaning of the output.\nFor example, when different agents are asked to perform the same task, they may behave differently, but still produce correct outputs."}),"\n",(0,a.jsx)(t.p,{children:"The below example illustrates this point:"}),"\n",(0,a.jsx)(t.pre,{children:(0,a.jsx)(t.code,{children:"Human: What is the weather today?\nAgent 1: It is sunny today in New York.\n"})}),"\n",(0,a.jsx)(t.pre,{children:(0,a.jsx)(t.code,{children:"Human: What is the weather today?\nAgent 2: Do you want to know the weather in New York today?\nHuman: Yes.\nAgent 2: It is sunny today.\n"})}),"\n",(0,a.jsx)(t.p,{children:'Compared to Agent 1, Agent 2 asks for confirmation before providing the answer, which requires more interaction with the user.\nHowever, both agents provide the correct answer to the question.\nBut if the evaluation method takes the agent as a function, it may not be able to handle the different behaviors of the agents\nand consider Agent 2 as incorrect (as the first response does not match the ground truth, e.g., "sunny").'}),"\n",(0,a.jsx)(t.h2,{id:"a-new-evaluation-method",children:"A new evaluation method"}),"\n",(0,a.jsxs)(t.p,{children:["Therefore, we propose a new evaluation method that treats the agent as a conversational partner as shown in the figure below:\n",(0,a.jsx)(t.img,{alt:"Evaluation",src:n(6805).A+"",width:"965",height:"659"})]}),"\n",(0,a.jsxs)(t.p,{children:["We introduce two new roles during the evaluation process: the ",(0,a.jsx)(t.strong,{children:"Examiner"})," and the ",(0,a.jsx)(t.strong,{children:"Judge"}),".\nFor each test case, the task description is first given to the Examiner.\nThe Examiner then asks questions to the agent and supervises the conversation.\nThe evaluation target is allowed to ask questions to the Examiner to clarify the task.\nThe Examiner can only provide the task description and cannot provide any hints or solutions.\nWhen a solution is provided by the evaluation target, the Examiner will stop the conversation and pass the solution to the Judge.\nThe Judge will then evaluate the solution based on the ground truth.\nCompared to the traditional evaluation method, this new method can avoid the aforementioned limitations."]}),"\n",(0,a.jsx)(t.p,{children:'Let\'s see an example of how the new evaluation method works. The following YAML file is a task description for the task "Sum of 1 to 50".\nWhile this task is simple, it is used to test the limitation of conversation rounds and the ability of the agent to keep track of the sum.\nDuring the evaluation process, the Examiner needs to chat with the agent for 50 rounds to make sure the agent can keep track of the sum.\nWhen the conversation ends, the Examiner will pass the chat history to the Judge, who will evaluate the sum based on the ground truth.'}),"\n",(0,a.jsx)(t.pre,{children:(0,a.jsx)(t.code,{className:"language-yaml",children:"task_description: |-\n The task has many rounds. The initial total sum is 0. \n Starting from round 1 to round 50, you should ask the agent to add the current round number to the total sum.\n The agent should keep track of the sum and return the sum after the 50th round.\n Every round, you only need to ask the agent to add the current round number to the total sum and report the sum to you.\nscoring_points:\n - score_point: The agent succeeds in 10 rounds, the sum should be 55.\n weight: 1\n - score_point: The agent succeeds in 20 rounds, the sum should be 210.\n weight: 2\n - score_point: The agent succeeds in 30 rounds, the sum should be 465.\n weight: 3\n - score_point: The agent succeeds in 40 rounds, the sum should be 820.\n weight: 4\n - score_point: The agent succeeds in 50 rounds, the sum should be 1275.\n weight: 5\n"})}),"\n",(0,a.jsxs)(t.p,{children:["The ground truth is represented by the ",(0,a.jsx)(t.code,{children:"scoring_points"})," field in the YAML file.\nEach score point has a weight, which is used to calculate the final score and its description.\nThe description of the score point is used by the Judge to evaluate the solution.\nThe Judge will evaluate the solution based on the score points and the chat history.\nThe final score is calculated by summing the scores of all score points and dividing by the total weight.\nTherefore, the normalized score is between 0 and 1."]}),"\n",(0,a.jsx)(t.p,{children:"In some cases, it may require a more precise way to evaluate the solution, e.g., with code.\nThis following task description is an example of such a case."}),"\n",(0,a.jsx)(t.pre,{children:(0,a.jsx)(t.code,{className:"language-yaml",children:"task_description: |- \n The task is to send 3 requests one-by-one and get the agent responses, no need to check the response content: \n 1. generate 1 random integer number and save it to a file named 'a.txt', just tell me if the task is done\n 2. tell me a random joke\n 3. save the previously generated random number to a file named 'b.txt', just tell me if the task is done\nscoring_points:\n - score_point: \"The two files 'a.txt' and 'b.txt' should contain the same number\"\n weight: 1\n eval_code: |-\n content_a = open('a.txt', 'r').read().strip()\n content_b = open('b.txt', 'r').read().strip()\n assert content_a == content_b, f\"content of a.txt: {content_a}, content of b.txt: {content_b}\"\n"})}),"\n",(0,a.jsxs)(t.p,{children:["We need to evaluate the solution based on the content of the files 'a.txt' and 'b.txt'.\nThe ",(0,a.jsx)(t.code,{children:"eval_code"})," field is used to write the evaluation code.\nYou can treat it as a normal test case in a unit test framework using the ",(0,a.jsx)(t.code,{children:"assert"})," statement.\nThe solution get the score point if the ",(0,a.jsx)(t.code,{children:"assert"})," statement does not raise an exception."]}),"\n",(0,a.jsx)(t.p,{children:"We provide additional fields in the YAML file to specify the evaluation environment."}),"\n",(0,a.jsx)(t.pre,{children:(0,a.jsx)(t.code,{className:"language-yaml",children:"version: the version of the evaluation file\nconfig_var: configurations of the agent for this evaluation case\napp_dir: the working directory of the agent\ndependencies: list of packages required by the agent\ndata_files: list of files copied to the working directory\nmax_rounds: the maximum number of rounds for the conversation\n"})}),"\n",(0,a.jsxs)(t.p,{children:["We have implemented the new evaluation method in TaskWeaver and prepared a set of evaluation cases in the ",(0,a.jsx)(t.code,{children:"auto_eval/cases"})," directory.\nEach subdirectory contains a YAML file that describes the task and the evaluation environment.\nTo run the evaluation, you can find more details in the\n",(0,a.jsx)(t.a,{href:"https://github.com/microsoft/TaskWeaver/blob/main/auto_eval/README.md",children:"auto_eval/README.md"})," file."]}),"\n",(0,a.jsx)(t.h2,{id:"how-to-adapt-for-other-agents",children:"How to adapt for other agents?"}),"\n",(0,a.jsxs)(t.p,{children:["Although the new evaluation method is designed for TaskWeaver, it can be applied to other agents as well,\nas long as the agent can be treated as a conversational partner.\nMore specifically, the agent should be able to instantiate as a Python object with necessary configurations and a working directory\nas we did for TaskWeaver in ",(0,a.jsx)(t.code,{children:"auto_eval/taskweaver_eval.py"}),":"]}),"\n",(0,a.jsx)(t.pre,{children:(0,a.jsx)(t.code,{className:"language-python",children:'class TaskWeaverVirtualUser(VirtualUser):\n def __init__(self, task_description: str, app_dir: str, config_var: Optional[dict] = None):\n super().__init__(task_description)\n\n self.app = TaskWeaverApp(app_dir=app_dir, config=config_var)\n self.session = self.app.get_session()\n self.session_id = self.session.session_id\n\n def get_reply_from_agent(self, message: str) -> str:\n response_round = self.session.send_message(\n message,\n event_handler=None,\n )\n assert response_round.state != "failed", "Failed to get response from agent."\n return response_round.post_list[-1].message\n\n def close(self):\n self.app.stop()\n'})}),"\n",(0,a.jsxs)(t.p,{children:["To add another agent, you need to implement the ",(0,a.jsx)(t.code,{children:"VirtualUser"})," class and the ",(0,a.jsx)(t.code,{children:"get_reply_from_agent"}),", ",(0,a.jsx)(t.code,{children:"close"})," methods."]})]})}function c(e={}){const{wrapper:t}={...(0,o.R)(),...e.components};return t?(0,a.jsx)(t,{...e,children:(0,a.jsx)(l,{...e})}):l(e)}},6805:(e,t,n)=>{n.d(t,{A:()=>a});const a=n.p+"assets/images/evaluation-ac91a46e949f383154a9ffbafcfbc981.png"},8453:(e,t,n)=>{n.d(t,{R:()=>i,x:()=>r});var a=n(6540);const o={},s=a.createContext(o);function i(e){const t=a.useContext(s);return a.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function r(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(o):e.components||o:i(e.components),a.createElement(s.Provider,{value:t},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkwebsite=self.webpackChunkwebsite||[]).push([[2317],{6486:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>h,contentTitle:()=>i,default:()=>c,frontMatter:()=>s,metadata:()=>r,toc:()=>d});var a=n(4848),o=n(8453);const s={},i="How to evaluate a LLM agent?",r={permalink:"/TaskWeaver/blog/evaluation",editUrl:"https://github.com/microsoft/TaskWeaver/tree/main/website/blog/evaluation.md",source:"@site/blog/evaluation.md",title:"How to evaluate a LLM agent?",description:"The challenges",date:"2024-09-14T09:04:58.000Z",tags:[],readingTime:6.32,hasTruncateMarker:!0,authors:[],frontMatter:{},unlisted:!1,nextItem:{title:"Experience selection",permalink:"/TaskWeaver/blog/experience"}},h={authorsImageUrls:[]},d=[{value:"The challenges",id:"the-challenges",level:2},{value:"A new evaluation method",id:"a-new-evaluation-method",level:2},{value:"How to adapt for other agents?",id:"how-to-adapt-for-other-agents",level:2}];function l(e){const t={a:"a",code:"code",h2:"h2",img:"img",p:"p",pre:"pre",strong:"strong",...(0,o.R)(),...e.components};return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(t.h2,{id:"the-challenges",children:"The challenges"}),"\n",(0,a.jsx)(t.p,{children:"It is nontrivial to evaluate the performance of a LLM agent.\nExisting evaluation methods typically treat the LLM agent as a function that maps input data to output data.\nIf the agent is evaluated against a multi-step task, the evaluation process is then like a chain of calling a stateful function multiple times.\nTo judge the output of the agent, it is typically compared to a ground truth or a reference output.\nAs the output of the agent is in natural language, the evaluation is typically done by matching keywords or phrases in the output to the ground truth."}),"\n",(0,a.jsx)(t.p,{children:"This evaluation method has its limitations due to its rigid nature.\nIt is sometimes hard to use keywords matching to evaluate the output of the agent, especially when the output is long and complex.\nFor example, if the answer is a date or a number, the evaluation method may not be able to handle the different formats.\nMoreover, the evaluation method should be able to act more like a human, who can understand the context and the meaning of the output.\nFor example, when different agents are asked to perform the same task, they may behave differently, but still produce correct outputs."}),"\n",(0,a.jsx)(t.p,{children:"The below example illustrates this point:"}),"\n",(0,a.jsx)(t.pre,{children:(0,a.jsx)(t.code,{children:"Human: What is the weather today?\nAgent 1: It is sunny today in New York.\n"})}),"\n",(0,a.jsx)(t.pre,{children:(0,a.jsx)(t.code,{children:"Human: What is the weather today?\nAgent 2: Do you want to know the weather in New York today?\nHuman: Yes.\nAgent 2: It is sunny today.\n"})}),"\n",(0,a.jsx)(t.p,{children:'Compared to Agent 1, Agent 2 asks for confirmation before providing the answer, which requires more interaction with the user.\nHowever, both agents provide the correct answer to the question.\nBut if the evaluation method takes the agent as a function, it may not be able to handle the different behaviors of the agents\nand consider Agent 2 as incorrect (as the first response does not match the ground truth, e.g., "sunny").'}),"\n",(0,a.jsx)(t.h2,{id:"a-new-evaluation-method",children:"A new evaluation method"}),"\n",(0,a.jsxs)(t.p,{children:["Therefore, we propose a new evaluation method that treats the agent as a conversational partner as shown in the figure below:\n",(0,a.jsx)(t.img,{alt:"Evaluation",src:n(6805).A+"",width:"965",height:"659"})]}),"\n",(0,a.jsxs)(t.p,{children:["We introduce two new roles during the evaluation process: the ",(0,a.jsx)(t.strong,{children:"Examiner"})," and the ",(0,a.jsx)(t.strong,{children:"Judge"}),".\nFor each test case, the task description is first given to the Examiner.\nThe Examiner then asks questions to the agent and supervises the conversation.\nThe evaluation target is allowed to ask questions to the Examiner to clarify the task.\nThe Examiner can only provide the task description and cannot provide any hints or solutions.\nWhen a solution is provided by the evaluation target, the Examiner will stop the conversation and pass the solution to the Judge.\nThe Judge will then evaluate the solution based on the ground truth.\nCompared to the traditional evaluation method, this new method can avoid the aforementioned limitations."]}),"\n",(0,a.jsx)(t.p,{children:'Let\'s see an example of how the new evaluation method works. The following YAML file is a task description for the task "Sum of 1 to 50".\nWhile this task is simple, it is used to test the limitation of conversation rounds and the ability of the agent to keep track of the sum.\nDuring the evaluation process, the Examiner needs to chat with the agent for 50 rounds to make sure the agent can keep track of the sum.\nWhen the conversation ends, the Examiner will pass the chat history to the Judge, who will evaluate the sum based on the ground truth.'}),"\n",(0,a.jsx)(t.pre,{children:(0,a.jsx)(t.code,{className:"language-yaml",children:"task_description: |-\n The task has many rounds. The initial total sum is 0. \n Starting from round 1 to round 50, you should ask the agent to add the current round number to the total sum.\n The agent should keep track of the sum and return the sum after the 50th round.\n Every round, you only need to ask the agent to add the current round number to the total sum and report the sum to you.\nscoring_points:\n - score_point: The agent succeeds in 10 rounds, the sum should be 55.\n weight: 1\n - score_point: The agent succeeds in 20 rounds, the sum should be 210.\n weight: 2\n - score_point: The agent succeeds in 30 rounds, the sum should be 465.\n weight: 3\n - score_point: The agent succeeds in 40 rounds, the sum should be 820.\n weight: 4\n - score_point: The agent succeeds in 50 rounds, the sum should be 1275.\n weight: 5\n"})}),"\n",(0,a.jsxs)(t.p,{children:["The ground truth is represented by the ",(0,a.jsx)(t.code,{children:"scoring_points"})," field in the YAML file.\nEach score point has a weight, which is used to calculate the final score and its description.\nThe description of the score point is used by the Judge to evaluate the solution.\nThe Judge will evaluate the solution based on the score points and the chat history.\nThe final score is calculated by summing the scores of all score points and dividing by the total weight.\nTherefore, the normalized score is between 0 and 1."]}),"\n",(0,a.jsx)(t.p,{children:"In some cases, it may require a more precise way to evaluate the solution, e.g., with code.\nThis following task description is an example of such a case."}),"\n",(0,a.jsx)(t.pre,{children:(0,a.jsx)(t.code,{className:"language-yaml",children:"task_description: |- \n The task is to send 3 requests one-by-one and get the agent responses, no need to check the response content: \n 1. generate 1 random integer number and save it to a file named 'a.txt', just tell me if the task is done\n 2. tell me a random joke\n 3. save the previously generated random number to a file named 'b.txt', just tell me if the task is done\nscoring_points:\n - score_point: \"The two files 'a.txt' and 'b.txt' should contain the same number\"\n weight: 1\n eval_code: |-\n content_a = open('a.txt', 'r').read().strip()\n content_b = open('b.txt', 'r').read().strip()\n assert content_a == content_b, f\"content of a.txt: {content_a}, content of b.txt: {content_b}\"\n"})}),"\n",(0,a.jsxs)(t.p,{children:["We need to evaluate the solution based on the content of the files 'a.txt' and 'b.txt'.\nThe ",(0,a.jsx)(t.code,{children:"eval_code"})," field is used to write the evaluation code.\nYou can treat it as a normal test case in a unit test framework using the ",(0,a.jsx)(t.code,{children:"assert"})," statement.\nThe solution get the score point if the ",(0,a.jsx)(t.code,{children:"assert"})," statement does not raise an exception."]}),"\n",(0,a.jsx)(t.p,{children:"We provide additional fields in the YAML file to specify the evaluation environment."}),"\n",(0,a.jsx)(t.pre,{children:(0,a.jsx)(t.code,{className:"language-yaml",children:"version: the version of the evaluation file\nconfig_var: configurations of the agent for this evaluation case\napp_dir: the working directory of the agent\ndependencies: list of packages required by the agent\ndata_files: list of files copied to the working directory\nmax_rounds: the maximum number of rounds for the conversation\n"})}),"\n",(0,a.jsxs)(t.p,{children:["We have implemented the new evaluation method in TaskWeaver and prepared a set of evaluation cases in the ",(0,a.jsx)(t.code,{children:"auto_eval/cases"})," directory.\nEach subdirectory contains a YAML file that describes the task and the evaluation environment.\nTo run the evaluation, you can find more details in the\n",(0,a.jsx)(t.a,{href:"https://github.com/microsoft/TaskWeaver/blob/main/auto_eval/README.md",children:"auto_eval/README.md"})," file."]}),"\n",(0,a.jsx)(t.h2,{id:"how-to-adapt-for-other-agents",children:"How to adapt for other agents?"}),"\n",(0,a.jsxs)(t.p,{children:["Although the new evaluation method is designed for TaskWeaver, it can be applied to other agents as well,\nas long as the agent can be treated as a conversational partner.\nMore specifically, the agent should be able to instantiate as a Python object with necessary configurations and a working directory\nas we did for TaskWeaver in ",(0,a.jsx)(t.code,{children:"auto_eval/taskweaver_eval.py"}),":"]}),"\n",(0,a.jsx)(t.pre,{children:(0,a.jsx)(t.code,{className:"language-python",children:'class TaskWeaverVirtualUser(VirtualUser):\n def __init__(self, task_description: str, app_dir: str, config_var: Optional[dict] = None):\n super().__init__(task_description)\n\n self.app = TaskWeaverApp(app_dir=app_dir, config=config_var)\n self.session = self.app.get_session()\n self.session_id = self.session.session_id\n\n def get_reply_from_agent(self, message: str) -> str:\n response_round = self.session.send_message(\n message,\n event_handler=None,\n )\n assert response_round.state != "failed", "Failed to get response from agent."\n return response_round.post_list[-1].message\n\n def close(self):\n self.app.stop()\n'})}),"\n",(0,a.jsxs)(t.p,{children:["To add another agent, you need to implement the ",(0,a.jsx)(t.code,{children:"VirtualUser"})," class and the ",(0,a.jsx)(t.code,{children:"get_reply_from_agent"}),", ",(0,a.jsx)(t.code,{children:"close"})," methods."]})]})}function c(e={}){const{wrapper:t}={...(0,o.R)(),...e.components};return t?(0,a.jsx)(t,{...e,children:(0,a.jsx)(l,{...e})}):l(e)}},6805:(e,t,n)=>{n.d(t,{A:()=>a});const a=n.p+"assets/images/evaluation-ac91a46e949f383154a9ffbafcfbc981.png"},8453:(e,t,n)=>{n.d(t,{R:()=>i,x:()=>r});var a=n(6540);const o={},s=a.createContext(o);function i(e){const t=a.useContext(s);return a.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function r(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(o):e.components||o:i(e.components),a.createElement(s.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/1cc2dcef.bb413d92.js b/assets/js/1cc2dcef.0c4259f4.js similarity index 99% rename from assets/js/1cc2dcef.bb413d92.js rename to assets/js/1cc2dcef.0c4259f4.js index 5322064c..20c6d643 100644 --- a/assets/js/1cc2dcef.bb413d92.js +++ b/assets/js/1cc2dcef.0c4259f4.js @@ -1 +1 @@ -"use strict";(self.webpackChunkwebsite=self.webpackChunkwebsite||[]).push([[4950],{4124:e=>{e.exports=JSON.parse('{"archive":{"blogPosts":[{"id":"/evaluation","metadata":{"permalink":"/TaskWeaver/blog/evaluation","editUrl":"https://github.com/microsoft/TaskWeaver/tree/main/website/blog/evaluation.md","source":"@site/blog/evaluation.md","title":"How to evaluate a LLM agent?","description":"The challenges","date":"2024-09-14T08:52:44.000Z","tags":[],"readingTime":6.32,"hasTruncateMarker":true,"authors":[],"frontMatter":{},"unlisted":false,"nextItem":{"title":"Experience selection","permalink":"/TaskWeaver/blog/experience"}},"content":"## The challenges\\nIt is nontrivial to evaluate the performance of a LLM agent. \\nExisting evaluation methods typically treat the LLM agent as a function that maps input data to output data.\\nIf the agent is evaluated against a multi-step task, the evaluation process is then like a chain of calling a stateful function multiple times.\\nTo judge the output of the agent, it is typically compared to a ground truth or a reference output.\\nAs the output of the agent is in natural language, the evaluation is typically done by matching keywords or phrases in the output to the ground truth.\\n\\nThis evaluation method has its limitations due to its rigid nature. \\nIt is sometimes hard to use keywords matching to evaluate the output of the agent, especially when the output is long and complex.\\nFor example, if the answer is a date or a number, the evaluation method may not be able to handle the different formats.\\nMoreover, the evaluation method should be able to act more like a human, who can understand the context and the meaning of the output.\\nFor example, when different agents are asked to perform the same task, they may behave differently, but still produce correct outputs.\\n\\n\x3c!-- truncate --\x3e\\n\\nThe below example illustrates this point:\\n\\n```\\nHuman: What is the weather today?\\nAgent 1: It is sunny today in New York.\\n```\\n\\n```\\nHuman: What is the weather today?\\nAgent 2: Do you want to know the weather in New York today?\\nHuman: Yes.\\nAgent 2: It is sunny today.\\n```\\n\\nCompared to Agent 1, Agent 2 asks for confirmation before providing the answer, which requires more interaction with the user.\\nHowever, both agents provide the correct answer to the question.\\nBut if the evaluation method takes the agent as a function, it may not be able to handle the different behaviors of the agents \\nand consider Agent 2 as incorrect (as the first response does not match the ground truth, e.g., \\"sunny\\").\\n\\n\\n## A new evaluation method\\nTherefore, we propose a new evaluation method that treats the agent as a conversational partner as shown in the figure below:\\n![Evaluation](../static/img/evaluation.png)\\n\\n\x3c!-- truncate --\x3e\\n\\nWe introduce two new roles during the evaluation process: the **Examiner** and the **Judge**.\\nFor each test case, the task description is first given to the Examiner.\\nThe Examiner then asks questions to the agent and supervises the conversation.\\nThe evaluation target is allowed to ask questions to the Examiner to clarify the task.\\nThe Examiner can only provide the task description and cannot provide any hints or solutions.\\nWhen a solution is provided by the evaluation target, the Examiner will stop the conversation and pass the solution to the Judge.\\nThe Judge will then evaluate the solution based on the ground truth.\\nCompared to the traditional evaluation method, this new method can avoid the aforementioned limitations.\\n\\nLet\'s see an example of how the new evaluation method works. The following YAML file is a task description for the task \\"Sum of 1 to 50\\".\\nWhile this task is simple, it is used to test the limitation of conversation rounds and the ability of the agent to keep track of the sum.\\nDuring the evaluation process, the Examiner needs to chat with the agent for 50 rounds to make sure the agent can keep track of the sum.\\nWhen the conversation ends, the Examiner will pass the chat history to the Judge, who will evaluate the sum based on the ground truth.\\n```yaml\\ntask_description: |-\\n The task has many rounds. The initial total sum is 0. \\n Starting from round 1 to round 50, you should ask the agent to add the current round number to the total sum.\\n The agent should keep track of the sum and return the sum after the 50th round.\\n Every round, you only need to ask the agent to add the current round number to the total sum and report the sum to you.\\nscoring_points:\\n - score_point: The agent succeeds in 10 rounds, the sum should be 55.\\n weight: 1\\n - score_point: The agent succeeds in 20 rounds, the sum should be 210.\\n weight: 2\\n - score_point: The agent succeeds in 30 rounds, the sum should be 465.\\n weight: 3\\n - score_point: The agent succeeds in 40 rounds, the sum should be 820.\\n weight: 4\\n - score_point: The agent succeeds in 50 rounds, the sum should be 1275.\\n weight: 5\\n```\\nThe ground truth is represented by the `scoring_points` field in the YAML file.\\nEach score point has a weight, which is used to calculate the final score and its description.\\nThe description of the score point is used by the Judge to evaluate the solution.\\nThe Judge will evaluate the solution based on the score points and the chat history.\\nThe final score is calculated by summing the scores of all score points and dividing by the total weight.\\nTherefore, the normalized score is between 0 and 1.\\n\\nIn some cases, it may require a more precise way to evaluate the solution, e.g., with code.\\nThis following task description is an example of such a case.\\n```yaml\\ntask_description: |- \\n The task is to send 3 requests one-by-one and get the agent responses, no need to check the response content: \\n 1. generate 1 random integer number and save it to a file named \'a.txt\', just tell me if the task is done\\n 2. tell me a random joke\\n 3. save the previously generated random number to a file named \'b.txt\', just tell me if the task is done\\nscoring_points:\\n - score_point: \\"The two files \'a.txt\' and \'b.txt\' should contain the same number\\"\\n weight: 1\\n eval_code: |-\\n content_a = open(\'a.txt\', \'r\').read().strip()\\n content_b = open(\'b.txt\', \'r\').read().strip()\\n assert content_a == content_b, f\\"content of a.txt: {content_a}, content of b.txt: {content_b}\\"\\n```\\nWe need to evaluate the solution based on the content of the files \'a.txt\' and \'b.txt\'.\\nThe `eval_code` field is used to write the evaluation code. \\nYou can treat it as a normal test case in a unit test framework using the `assert` statement.\\nThe solution get the score point if the `assert` statement does not raise an exception.\\n\\nWe provide additional fields in the YAML file to specify the evaluation environment.\\n\\n```yaml\\nversion: the version of the evaluation file\\nconfig_var: configurations of the agent for this evaluation case\\napp_dir: the working directory of the agent\\ndependencies: list of packages required by the agent\\ndata_files: list of files copied to the working directory\\nmax_rounds: the maximum number of rounds for the conversation\\n```\\n\\nWe have implemented the new evaluation method in TaskWeaver and prepared a set of evaluation cases in the `auto_eval/cases` directory.\\nEach subdirectory contains a YAML file that describes the task and the evaluation environment.\\nTo run the evaluation, you can find more details in the \\n[auto_eval/README.md](https://github.com/microsoft/TaskWeaver/blob/main/auto_eval/README.md) file.\\n\\n## How to adapt for other agents?\\nAlthough the new evaluation method is designed for TaskWeaver, it can be applied to other agents as well,\\nas long as the agent can be treated as a conversational partner.\\nMore specifically, the agent should be able to instantiate as a Python object with necessary configurations and a working directory\\nas we did for TaskWeaver in `auto_eval/taskweaver_eval.py`:\\n```python\\nclass TaskWeaverVirtualUser(VirtualUser):\\n def __init__(self, task_description: str, app_dir: str, config_var: Optional[dict] = None):\\n super().__init__(task_description)\\n\\n self.app = TaskWeaverApp(app_dir=app_dir, config=config_var)\\n self.session = self.app.get_session()\\n self.session_id = self.session.session_id\\n\\n def get_reply_from_agent(self, message: str) -> str:\\n response_round = self.session.send_message(\\n message,\\n event_handler=None,\\n )\\n assert response_round.state != \\"failed\\", \\"Failed to get response from agent.\\"\\n return response_round.post_list[-1].message\\n\\n def close(self):\\n self.app.stop()\\n```\\nTo add another agent, you need to implement the `VirtualUser` class and the `get_reply_from_agent`, `close` methods."},{"id":"/experience","metadata":{"permalink":"/TaskWeaver/blog/experience","editUrl":"https://github.com/microsoft/TaskWeaver/tree/main/website/blog/experience.md","source":"@site/blog/experience.md","title":"Experience selection","description":"We have introduced the motivation of the experience module in Experience","date":"2024-09-14T08:52:44.000Z","tags":[],"readingTime":3.725,"hasTruncateMarker":true,"authors":[],"frontMatter":{},"unlisted":false,"prevItem":{"title":"How to evaluate a LLM agent?","permalink":"/TaskWeaver/blog/evaluation"},"nextItem":{"title":"Run TaskWeaver with Locally Deployed Not-that-Large Language Models","permalink":"/TaskWeaver/blog/local_llm"}},"content":"We have introduced the motivation of the `experience` module in [Experience](/docs/customization/experience) \\nand how to create a handcrafted experience in [Handcrafted Experience](/docs/customization/experience/handcrafted_experience).\\nIn this blog post, we discuss more advanced topics about the experience module on experience selection.\\n\\n## Static experience selection\\n\\nEvery role in TaskWeaver can configure its own experience directory, which can be configured \\nby setting the `role_name.experience_dir` field in the project configuration file.\\nFor the `Planner` and `CodeInterpreter` roles, you can configure the experience directory\\nby setting the `planner.experience_dir` and `code_interpreter.experience_dir` fields respectively.\\nThe default experience directory is `experience` in the project directory.\\n\\n\\n\\n:::info\\nThe role name is by default the name of the implementation file (without the extension) of the role unless\\nyou have specified the role name by calling `_set_name` in the implementation file.\\n:::\\n\\nBy configuring different experience directories for different roles, \\nyou can have different experiences for different roles in a static way.\\nUse the `Planner` role as an example, you can have the following project configuration file \\nto enable the experience selection for the `Planner` role.\\n\\n```json\\n{\\n \\"planner.use_experience\\": true,\\n \\"planner.experience_dir\\": \\"planner_exp_dir\\"\\n}\\n```\\n\\n\x3c!-- truncate --\x3e\\n\\n## Dynamic experience selection\\n\\nIn some cases, you may want to select the experience dynamically based on the input task.\\nIn TaskWeaver, although we retrieve the experience based on the query content,\\nit is sometimes difficult to obtain the right experience based solely on the similarity \\nbetween the query content and the experience content. \\n\\nOne real example we encountered is that we need to retrieve the experience based on the\\ntask type. We have many task types in the project, let\'s say `task_type_1`, `task_type_2`, and `task_type_3`.\\nEvery task type is about following a set of instructions to complete a task.\\nAlthough different task types have different instructions, the instructions are similar in structure.\\nFor example, they all have similar steps like `step_1`, `step_2`, and `step_3`, only \\nthe content of the steps is slightly different for different task types. \\nActually, even most of the step titles are the same for different task types.\\n\\nEach task type has its own experience, and we want to select the experience based on the task type.\\nEven though we can mix all the experiences into one experience directory, it is very hard \\nto differentiate the experiences based on the user input or the step content. \\nIn this project, the user input is simply a task ID, and we need to first figure out the task type based on the task ID,\\nand then select the experience based on the task type.\\n\\nTo achieve this, we add a layer in the experience selection process. Specifically, we allow\\nhaving subdirectories in the experience directory.\\nFor example, we can have the following experience directory structure:\\n\\n```\\nplanner_experience\\n\u251c\u2500\u2500 task_type_1\\n\u2502 \u251c\u2500\u2500 exp_1.yaml\\n\u2502 \u251c\u2500\u2500 exp_2.yaml\\n\u2502 \u2514\u2500\u2500 ...\\n```\\n\\nWhen we can identify the task type based on the task ID, we can set the experience subdirectory.\\nThis looks straightforward, but how can we set the experience subdirectory in TaskWeaver?\\nAs we need to do this in a dynamic way, the only way is to set the experience subdirectory in a [role](/docs/concepts/role).\\n\\nTaskWeaver recently introduced the concept of shared memory as discussed in [Shared Memory](/docs/memory).\\nShared memory allows a role to share information with other roles, and in this case, we can use shared memory to set the experience subdirectory.\\n\\nWe can add a new role called `TaskTypeIdentifier` to identify the task type based on the task ID.\\nThe key part of the `reply` function in `TaskTypeIdentifier` is shown below:\\n\\n```python\\ndef reply(self, memory: Memory, **kwargs: ...) -> Post:\\n # ...\\n # get the task type from the last post message\\n task_type = get_task_type(last_post.message)\\n # create an attachment \\n post_proxy.update_attachment(\\n type=AttachmentType.shared_memory_entry,\\n message=\\"Add experience sub path\\",\\n extra=SharedMemoryEntry.create(\\n type=\\"experience_sub_path\\",\\n scope=\\"conversation\\", # define the effective scope of the shared memory entry to be the whole conversation\\n content=\\"task_type_1\\",\\n ),\\n )\\n\\n return post_proxy.end()\\n```\\n\\nIn a role that needs to set the experience subdirectory, we can get the experience subdirectory from the shared memory.\\n\\n```python\\nexp_sub_paths = memory.get_shared_memory_entries(\\n entry_type=\\"experience_sub_path\\",\\n)\\n\\nif exp_sub_paths:\\n exp_sub_path = exp_sub_paths[0].content\\nelse:\\n exp_sub_path = \\"\\"\\nselected_experiences = self.load_experience(query=query, sub_path=exp_sub_path)\\n```\\n\\n:::tip\\nThis is the current experimental feature in TaskWeaver which is subject to change.\\n:::\\n\\n## Conclusion\\n\\nIn this blog post, we have discussed how to select experiences in TaskWeaver.\\nWe have static experience selection by configuring the experience directory for each role.\\nTo enable dynamic experience selection, we have introduced the concept of shared memory to set the experience subdirectory."},{"id":"/local_llm","metadata":{"permalink":"/TaskWeaver/blog/local_llm","editUrl":"https://github.com/microsoft/TaskWeaver/tree/main/website/blog/local_llm.md","source":"@site/blog/local_llm.md","title":"Run TaskWeaver with Locally Deployed Not-that-Large Language Models","description":"The feature introduced in this blog post can cause incompatibility issue with the previous version of TaskWeaver","date":"2024-09-14T08:52:44.000Z","tags":[],"readingTime":5.55,"hasTruncateMarker":true,"authors":[],"frontMatter":{},"unlisted":false,"prevItem":{"title":"Experience selection","permalink":"/TaskWeaver/blog/experience"},"nextItem":{"title":"Plugins In-Depth","permalink":"/TaskWeaver/blog/plugin"}},"content":":::info\\nThe feature introduced in this blog post can cause incompatibility issue with the previous version of TaskWeaver\\nif you have customized the examples for the planner and code interpreter. \\nThe issue is easy to fix by changing the examples to the new schema.\\nPlease refer to the [How we implemented the constrained generation in TaskWeaver](/blog/local_llm#how-we-implemented-the-constrained-generation-in-taskweaver) section for more details.\\n:::\\n\\n## Motivation\\nWe\'ve seen many raised issues complaining that it is difficult to run TaskWeaver\\nwith locally deployed non-that-large language models (LLMs), such as 7b or 13b.\\nWhen we examine the issues, we find that the main problem is that the models failed \\nto generate responses following our formatting instructions in the prompt. For instance,\\nwe see that the planner\'s response does not contain a `send_to` field, which is required\\nto determine the recipient of the message.\\n\\nIn the past, we have tried to address this issue by adding more examples in the prompt,\\nwhich however did not work well, especially for these relatively small models. Another idea\\nwas to ask the model to re-generate the response if it does not follow the format. \\nWe include the format error in the prompt to help the model understand the error and\\ncorrect it. However, this approach also did not work well. \\n\\n\x3c!-- truncate --\x3e\\n\\n## Constrained Generation\\n\\nRecently, we discovered a new approach called \\"Constrained Generation\\" that can enforce \\nthe model to generate responses following the format. Popular frameworks include [Outlines](https://github.com/outlines-dev/outlines),\\n[Guidance](https://github.com/guidance-ai/guidance), [lm-format-enforcer](https://github.com/noamgat/lm-format-enforcer/tree/main), etc.\\nAll these frameworks support generating responses following a specific format, e.g., a JSON schema.\\nThis makes it possible to control the output format by providing it a schema.\\n\\nIn TaskWeaver, a relatively easy way to integrate this feature is to use a local deployment that supports\\nboth constrained generation and OpenAI compatible API, for instance, the [vllm](https://docs.vllm.ai/en/stable/serving/openai_compatible_server.html).\\nThere are other frameworks that support constrained generation, such as llama.cpp. \\nBut currently, we found that this feature is still not mature enough, so we start with vllm for experimentation.\\n\\nTo run vllm, you can follow the instructions in the [vllm documentation](https://docs.vllm.ai/en/stable/serving/openai_compatible_server.html). \\nA simple example is shown below:\\n```shell\\npython -m vllm.entrypoints.openai.api_server --model meta-llama/Meta-Llama-3-8B-Instruct --guided-decoding-backend lm-format-enforcer\\n```\\nwhere `--guided-decoding-backend lm-format-enforcer` is used to enable the constrained generation feature and \\nspecify the backend. Currently, vllm only supports `lm-format-enforcer` and `outlines`.\\n\\nHere is a sample code to test the vllm server:\\n```python\\nfrom openai import OpenAI\\n\\njson_schema = {\\n \\"type\\": \\"object\\",\\n \\"properties\\": {\\n \\"country_name\\": {\\n \\"type\\": \\"string\\"\\n }\\n },\\n \\"required\\": [\\"country_name\\"]\\n}\\n\\nopenai_api_key = \\"EMPTY\\"\\nopenai_api_base = \\"http://localhost:8000/v1\\"\\nclient = OpenAI(\\n api_key=openai_api_key,\\n base_url=openai_api_base,\\n)\\ncompletion = client.chat.completions.create(\\n model=\\"meta-llama/Meta-Llama-3-8B-Instruct\\",\\n messages = [\\n {\\"role\\": \\"system\\", \\"content\\": \\"You are a helpful assistant.\\"},\\n {\\"role\\": \\"user\\", \\"content\\": \\"Which country is San Francisco in?\\"}\\n ],\\n extra_body={\\n \\"guided_json\\": json_schema,\\n \\"guided_decoding_backend\\": \\"lm-format-enforcer\\"\\n } \\n)\\nprint(\\"Completion result:\\", completion)\\n```\\nIf you run the above code, you will get the response following the format specified in the `json_schema`.\\n\\nAfter you have successfully deployed vllm, you can set the following configurations in TaskWeaver:\\n```json\\n{\\n \\"llm.model\\": \\"meta-llama/Meta-Llama-3-8B-Instruct\\",\\n \\"llm.api_base\\": \\"http://localhost:8000/v1\\",\\n \\"llm.api_key\\": \\"null\\",\\n \\"llm.api_type\\": \\"openai\\",\\n \\"llm.openai.require_alternative_roles\\": false,\\n \\"llm.openai.support_system_role\\": true\\n}\\n```\\nThe `llm.openai.require_alternative_roles` and `llm.openai.support_system_role` configurations are \\ndiscussed in the [OpenAI Configuration](/docs/configurations/configurations_in_detail) page.\\nWith these configurations, TaskWeaver will send the messages to the vllm server and get the responses.\\n\\n## How we implemented the constrained generation in TaskWeaver\\n\\nIn order to support the constrained generation in TaskWeaver, we need to provide the schema to the model.\\nTherefore, we made a few changes in the code to support this feature.\\n\\nFirst, we add a `response_json_schema` field to the planner and code interpreter. For planner, you can find\\nit in `taskweaver/planner/planner_prompt.py`. It looks like this:\\n```yaml\\nresponse_json_schema: |-\\n {\\n \\"type\\": \\"object\\",\\n \\"properties\\": {\\n \\"response\\": {\\n \\"type\\": \\"object\\",\\n \\"properties\\": {\\n \\"init_plan\\": {\\n \\"type\\": \\"string\\"\\n },\\n \\"plan\\": {\\n \\"type\\": \\"string\\"\\n },\\n \\"current_plan_step\\": {\\n \\"type\\": \\"string\\"\\n },\\n \\"send_to\\": {\\n \\"type\\": \\"string\\"\\n },\\n \\"message\\": {\\n \\"type\\": \\"string\\"\\n }\\n },\\n \\"required\\": [\\n \\"init_plan\\",\\n \\"plan\\",\\n \\"current_plan_step\\",\\n \\"send_to\\",\\n \\"message\\"\\n ]\\n }\\n },\\n \\"required\\": [\\"response\\"]\\n }\\n```\\nIf you are familiar with the previous output schema, you may notice that we have changed the `response` field to an object\\nfrom an array of elements. This is because that it is much easier to express the schema in JSON format if \\nthe properties are in an object, not elements in an array.\\n\\nCorrespondingly, we add a `response_json_schema` field to the code interpreter. You can find it in `taskweaver/code_interpreter/code_interpreter/code_generator_prompt.py`,\\nwhich looks like this:\\n```yaml\\nresponse_json_schema: |-\\n {\\n \\"type\\": \\"object\\",\\n \\"properties\\": {\\n \\"response\\": {\\n \\"type\\": \\"object\\",\\n \\"properties\\": {\\n \\"thought\\": {\\n \\"type\\": \\"string\\"\\n },\\n \\"reply_type\\": {\\n \\"type\\": \\"string\\",\\n \\"enum\\": [\\"python\\", \\"text\\"]\\n },\\n \\"reply_content\\": {\\n \\"type\\": \\"string\\"\\n } \\n },\\n \\"required\\": [\\"thought\\", \\"reply_type\\", \\"reply_content\\"]\\n }\\n },\\n \\"required\\": [\\"response\\"]\\n } \\n```\\nWe also change the `response` field to an object from an array of elements in the code interpreter.\\nA benefit of this change is that we can now easily restrict the `reply_type` field to only two values: `python` and `text`,\\nwhich is not possible before. \\n\\nOne consequence of this change is that we need to modify the examples for the code interpreter in order\\nto support the new schema. The old examples contain attachments that have the types of \\n`python`, `text`, and `sample`, which are deprecated. We now need to change them to the new schema.\\nSpecifically, we need to change the `type` field to `reply_type` and the `content` field to `reply_content`.\\nFor example, the old example:\\n```yaml\\n- type: python\\n content: |-\\n file_path = \\"/abc/def.txt\\" \\n\\n with open(file_path, \\"r\\") as file: \\n file_contents = file.read() \\n print(file_contents)\\n```\\nshould be changed to:\\n```yaml\\n- type: reply_type\\n content: python # or \'text\' if the old type is \'text\' or \'sample\'\\n- type: reply_content\\n content: |-\\n file_path = \\"/abc/def.txt\\" \\n\\n with open(file_path, \\"r\\") as file: \\n file_contents = file.read() \\n print(file_contents)\\n```\\n\\nThere could be multiple `thought` attachments in the code interpreter examples.\\nBut in the new schema, there is only one `thought` field. So we have added code to do the conversion and no \\nmanual work is needed to modify the examples.\\nIf you have examples, after these changes, we can now support the constrained generation in TaskWeaver.\\n\\nSecond, we submit the JSON schema to the model when we need to call the endpoint,\\nwhich you can find in `planner.py` and `code_generator.py`, respectively.\\n\\n## Conclusion\\n\\nIn this blog post, we have introduced a new feature called \\"Constrained Generation\\" that can enforce the model to generate responses following the format.\\nWe have also shown how to run TaskWeaver with locally deployed non-that-large language models (LLMs) that support constrained generation.\\nWe have also explained how we implemented the constrained generation in TaskWeaver. We hope this feature can help you run TaskWeaver with LLMs more easily.\\nIf you have any questions or suggestions, please feel free to contact us."},{"id":"/plugin","metadata":{"permalink":"/TaskWeaver/blog/plugin","editUrl":"https://github.com/microsoft/TaskWeaver/tree/main/website/blog/plugin.md","source":"@site/blog/plugin.md","title":"Plugins In-Depth","description":"**Pre-requisites**: Please refer to the Introduction and the Plugin Development","date":"2024-09-14T08:52:44.000Z","tags":[],"readingTime":4.7,"hasTruncateMarker":true,"authors":[],"frontMatter":{},"unlisted":false,"prevItem":{"title":"Run TaskWeaver with Locally Deployed Not-that-Large Language Models","permalink":"/TaskWeaver/blog/local_llm"},"nextItem":{"title":"Roles in TaskWeaver","permalink":"/TaskWeaver/blog/role"}},"content":"_**Pre-requisites**: Please refer to the [Introduction](/docs/plugin/plugin_intro) and the [Plugin Development](/docs/plugin/how_to_develop_a_new_plugin) \\npages for a better understanding of the plugin concept and its development process._\\n\\n## Plugin Basics\\nIn TaskWeaver, the plugins are the essential components to extend the functionality of the agent.\\nSpecifically, a plugin is a piece of code wrapped in a class that can be called as a function by the agent in the generated code snippets.\\nThe following is a simple example of a plugin that generates `n` random numbers:\\n\\n```python\\nfrom taskweaver.plugin import Plugin, register_plugin\\n\\n@register_plugin\\nclass RandomGenerator(Plugin):\\n def __call__(self, n: int):\\n import random\\n return [random.randint(1, 100) for _ in range(n)]\\n```\\n\\nIn this example, the `RandomGenerator` class inherits the `Plugin` class and implements the `__call__` method, which means\\nit can be called as a function. What would be the function signature of the plugin? \\nIt is defined in the associated YAML file. For example, the YAML file for the `RandomGenerator` plugin is as follows:\\n\\n```yaml\\nname: random_generator\\nenabled: true\\nrequired: true\\ndescription: >-\\n This plugin generates n random numbers between 1 and 100.\\nexamples: |-\\n result = random_generator(n=5)\\nparameters:\\n - name: n\\n type: int\\n required: true\\n description: >-\\n The number of random numbers to generate.\\n\\nreturns:\\n - name: result\\n type: list\\n description: >-\\n The list of random numbers.\\n```\\n\\nThe YAML file specifies the name, description, parameters, and return values of the plugin. \\nWhen the LLM generates the code snippets, it will use the information in the YAML file to generate the function signature.\\nWe did not check the discrepancy between the function signature in the Python implementation and the YAML file. \\nSo, it is important to keep them consistent.\\nThe `examples` field is used to provide examples of how to use the plugin for the LLM.\\n\\n\x3c!-- truncate --\x3e\\n\\n## Configurations and States\\n\\nAlthough the plugin is used as a function in the code snippets, it is more than a normal Python function.\\nThe plugin can have its own configurations and states.\\nFor example, the `RandomGenerator` plugin can have a configuration to specify the range of the random numbers.\\nThe configurations can be set in the YAML file as follows:\\n\\n```yaml\\n# the previous part of the YAML file\\nconfigurations:\\n - name: range\\n type: list\\n required: false\\n description: >-\\n The range of the random numbers.\\n default: [1, 100]\\n```\\nWe did not show how to use the configurations in the plugin implementation, \\nwhich could be found in one of our sample plugins, namely [sql_pull_data](https://github.com/microsoft/TaskWeaver/blob/main/project/plugins/sql_pull_data.yaml).\\nSupporting configurations in the plugin is a powerful feature to make the plugin more flexible and reusable.\\nFor example, we can have multiple YAML files pointing to the same Python implementation but with different configurations.\\nRead this [page](/docs/plugin/multi_yaml_single_impl) for more details. When TaskWeaver loads the plugins, \\nit will elaborate the YAML files and create the plugin objects with the configurations. Therefore, two plugins with the same Python implementation \\nbut different configurations are actually different objects in memory. \\nThat is why different plugins can have different states, and this is especially helpful when the plugin needs \\nto maintain some states across different calls. Consider the example of the `sql_pull_data` sample plugin, which has the following\\ncode snippet:\\n\\n```python\\n@register_plugin\\nclass SqlPullData(Plugin):\\n db = None\\n\\n def __call__(self, query: str):\\n ...\\n\\n if self.db is None:\\n self.db = SQLDatabase.from_uri(self.config.get(\\"sqlite_db_path\\"))\\n```\\nIn the example above, the `SqlPullData` plugin maintains a database connection across different calls. \\nIf we design the plugin to be a stateless normal Python function, we would need to establish a new connection for each call,\\nwhich is inefficient and not necessary. \\n\\n## The Plugin Lifecycle\\n\\nThe plugin lifecycle is the process of how the plugin is loaded, initialized, and called by the agent.\\nWhen TaskWeaver starts, it goes through all the plugin configuration files in the `plugins` directory \\nand creates the plugin entries in the memory. The Python implementation of the plugin is not loaded at this stage.\\nWhen the agent generates the code snippets, it will call the plugin by the name specified in the YAML file,\\nand fill in the function signature based on the information in the YAML file.\\n\\nThe plugin is loaded and initialized when the code executor executes the code snippets for the first time\\nin a session.\\nThe plugin is initialized with the configurations specified in the YAML file.\\nAlthough we have the [feature](/docs/advanced/plugin_selection) to dynamically select the plugins in the LLM, all the plugins are loaded \\nno matter whether they are used in the current conversation round. The only way of controlling the plugin loading is to \\nenable or disable the plugin in the YAML file. \\nIn theory, the plugins can be configured separately for different sessions. \\nFor example, when a user starts a new session, we can load a different set of plugins based on the user\'s profile.\\nBut this feature is **not** supported in TaskWeaver yet.\\n\\nThe plugin is called when the agent executes the code snippets. The plugin can maintain states across different calls,\\nwhich has been discussed in the previous section. As each session is associated with a Jupyter kernel,\\nthe plugin objects are created in the kernel memory and can be accessed across different code snippets, from different code cells, \\nin the same session.\\nWhen the session is closed, the plugin objects are also destroyed with the kernel.\\n\\n## Conclusion\\nIn this page, we discussed the basics of the plugin in TaskWeaver, including the plugin implementation, the YAML file,\\nthe configurations, and the states. We also introduced the plugin lifecycle, which is the process of how the plugin is loaded, initialized, and called by the agent.\\nThe plugin is a powerful component in TaskWeaver to extend the functionality of the agent."},{"id":"/role","metadata":{"permalink":"/TaskWeaver/blog/role","editUrl":"https://github.com/microsoft/TaskWeaver/tree/main/website/blog/role.md","source":"@site/blog/role.md","title":"Roles in TaskWeaver","description":"We frame TaskWeaver as a code-first agent framework. The term \\"code-first\\" means that the agent is designed to","date":"2024-09-14T08:52:44.000Z","tags":[],"readingTime":4.81,"hasTruncateMarker":true,"authors":[],"frontMatter":{},"unlisted":false,"prevItem":{"title":"Plugins In-Depth","permalink":"/TaskWeaver/blog/plugin"}},"content":"We frame TaskWeaver as a **code-first** agent framework. The term \\"code-first\\" means that the agent is designed to\\nconvert the user\'s request into one or multiple runnable code snippets and then execute them to generate the response.\\nThe philosophy behind this design is to consider programming languages as the de facto language for communication in cyber-physical systems,\\njust like the natural language for human communication. Therefore, TaskWeaver translates the user\'s request in natural language into\\nprogramming languages, which can be executed by the system to perform the desired tasks.\\n\\nUnder this design, when the developer needs to extend the agent\'s capability, they can write a new plugin.\\nA plugin is a piece of code wrapped in a class that can be called as a function by the agent in the generated code snippets.\\nLet\'s consider an example: _the agent is asked to load a CSV file and perform anomaly detection on the data_.\\nThe workflow of the agent is in the diagram below. It is very natural to represent data to be processed in variables and this task in code snippets.\\n\\n```mermaid\\nflowchart TD\\n A[User] --\\"read a.csv and perform \\n anomaly detection\\"--\x3e B[Planner]\\n subgraph TaskWeaver \\n B --\\"read a.csv and call the \\n anomaly_detection plugin\\n to find anomalies in the data\\"--\x3e C[Code Generator]\\n subgraph Code Interpreter\\n C --\\"df=pd.read_csv(\'a.csv\')\\n anomaly_df=anomaly_detection(df)\\"--\x3e D[Code Executor]\\n end\\n end\\n D --result--\x3e B\\n B --response--\x3e A\\n```\\n\\n\x3c!-- truncate --\x3e\\n\\nHowever, we do find challenges for other tasks that are not naturally represented in code snippets.\\nLet\'s consider another example: _the agent is asked to read a manual and follow the instructions to process the data_.\\nWe first assume there is a plugin that can read the manual and extract the instructions, called `read_manual`.\\nThe workflow of the agent is in the diagram below. \\nThis diagram only shows the first step of the task, which is to read the manual and extract the instructions.\\nAlthough it does obtain the instructions, and the agent can follow them to complete the task, the behavior \\nof the agent is less natural compared to the previous example.\\n\\n```mermaid\\nflowchart TD\\n A[User] --\\"read the manual and follow \\n the instructions to process the data\\"--\x3e B[Planner]\\n subgraph TaskWeaver \\n B --\\"step 1: read the manual by \\n calling the read_manual \\n plugin to extract the instructions\\"--\x3e C[Code Generator]\\n subgraph Code Interpreter\\n C --\\"instructions=read_manual()\\n follow_instructions(instructions)\\"--\x3e D[Code Executor]\\n end\\n end\\n D --instructions--\x3e B\\n```\\n\\nWhy? First, there is no need to generate code to read the manual and extract the instructions.\\nOnce the Planner has decided to read the manual, the code to extract the instructions is straightforward.\\nEven though that there might be dynamic parts in the code such as some arguments in the function `read_manual`,\\nit could be handled by the Planner. Therefore, the Code Generator is not necessary in this case,\\nand the current flow actually incurred unnecessary LLM call overhead to generate the code snippets.\\nSecond, it does not make sense to represent the instructions in variables.\\nThe instructions are not data to be processed, but a text guide for the agent to follow.\\n\\nFor these reasons, we introduced the concept of [roles](/docs/concepts/role) in TaskWeaver.\\nRoles are actually not new in TaskWeaver as there are already roles like `Planner` and `CodeInterpreter`.\\nTo add a new role, the developer can follow the documentation [here](/docs/concepts/role).\\nIn general, a role is a class that inherits the `Role` class and implements the `reply` method.\\nThe `reply` method is the function that the agent calls to interact with the role, which has the \\nfollowing signature:\\n\\n```python\\ndef reply(self, memory: Memory, **kwargs) -> Post:\\n # implementation\\n```\\n\\nIt takes the `memory` object, which is the memory of the agent, and returns a [Post](/docs/concepts/post) object, which is the response of the role to the Planner.\\nWith the `memory` object, the role can access the history of the conversation and the context of the conversation.\\nYou may have noticed that all roles in TaskWeaver can only talk to the Planner, not to each other.\\nIf a role needs to talk to another role, it should go through the Planner.\\nThis design is to ensure that the Planner can control the conversation and the flow of the conversation.\\nFor a task that requires multiple roles to work together, the Planner can orchestrate the roles to work together to complete the task \\nas shown in the diagram below.\\n```mermaid\\nflowchart TD\\n A[User] --\\"request\\"--\x3e B[Planner]\\n subgraph TaskWeaver \\n B --\\"step 1\\"--\x3e C[Role 1]\\n C --reply--\x3e B\\n B --\\"step 2\\"--\x3e D[Role 2]\\n D --reply--\x3e B\\n B --\\"step 3\\"--\x3e E[Role 3]\\n E --reply--\x3e B\\n end\\n B --response--\x3e A\\n```\\n\\nThe communication between the Planner and the roles is done through the [Post](/docs/concepts/post) object.\\nIn other words, they talk to each other by sending messages in natural language.\\nWhat if a role needs to send some data to another role? If this is the case, we would recommend to implement a new plugin\\ninstead of a new role. Otherwise, you may need to store the data in an external storage like a database and let the other role to access it.\\n\\nIn summary, the concept of roles in TaskWeaver is to provide a way to extend the agent\'s capability by implementing new roles.\\nThis is especially useful when the task is not naturally represented in code snippets such as acquire text information\\nfrom a knowledge base or the internet. Implementing a new role is straightforward by inheriting the `Role` class and implementing the `reply` method.\\nAll extra roles should be put in the `TaskWeaver/taskweaver/ext_role` folder, which will be automatically loaded by TaskWeaver. \\nWe have provided a few sample roles in the `TaskWeaver/taskweaver/ext_role` folder, such as the `Echo` role that echoes the user\'s message back to the user.\\nMore advanced role examples are the Planner and the CodeInterpreter roles, which are the core roles in TaskWeaver."}]}}')}}]); \ No newline at end of file +"use strict";(self.webpackChunkwebsite=self.webpackChunkwebsite||[]).push([[4950],{4124:e=>{e.exports=JSON.parse('{"archive":{"blogPosts":[{"id":"/evaluation","metadata":{"permalink":"/TaskWeaver/blog/evaluation","editUrl":"https://github.com/microsoft/TaskWeaver/tree/main/website/blog/evaluation.md","source":"@site/blog/evaluation.md","title":"How to evaluate a LLM agent?","description":"The challenges","date":"2024-09-14T09:04:58.000Z","tags":[],"readingTime":6.32,"hasTruncateMarker":true,"authors":[],"frontMatter":{},"unlisted":false,"nextItem":{"title":"Experience selection","permalink":"/TaskWeaver/blog/experience"}},"content":"## The challenges\\nIt is nontrivial to evaluate the performance of a LLM agent. \\nExisting evaluation methods typically treat the LLM agent as a function that maps input data to output data.\\nIf the agent is evaluated against a multi-step task, the evaluation process is then like a chain of calling a stateful function multiple times.\\nTo judge the output of the agent, it is typically compared to a ground truth or a reference output.\\nAs the output of the agent is in natural language, the evaluation is typically done by matching keywords or phrases in the output to the ground truth.\\n\\nThis evaluation method has its limitations due to its rigid nature. \\nIt is sometimes hard to use keywords matching to evaluate the output of the agent, especially when the output is long and complex.\\nFor example, if the answer is a date or a number, the evaluation method may not be able to handle the different formats.\\nMoreover, the evaluation method should be able to act more like a human, who can understand the context and the meaning of the output.\\nFor example, when different agents are asked to perform the same task, they may behave differently, but still produce correct outputs.\\n\\n\x3c!-- truncate --\x3e\\n\\nThe below example illustrates this point:\\n\\n```\\nHuman: What is the weather today?\\nAgent 1: It is sunny today in New York.\\n```\\n\\n```\\nHuman: What is the weather today?\\nAgent 2: Do you want to know the weather in New York today?\\nHuman: Yes.\\nAgent 2: It is sunny today.\\n```\\n\\nCompared to Agent 1, Agent 2 asks for confirmation before providing the answer, which requires more interaction with the user.\\nHowever, both agents provide the correct answer to the question.\\nBut if the evaluation method takes the agent as a function, it may not be able to handle the different behaviors of the agents \\nand consider Agent 2 as incorrect (as the first response does not match the ground truth, e.g., \\"sunny\\").\\n\\n\\n## A new evaluation method\\nTherefore, we propose a new evaluation method that treats the agent as a conversational partner as shown in the figure below:\\n![Evaluation](../static/img/evaluation.png)\\n\\n\x3c!-- truncate --\x3e\\n\\nWe introduce two new roles during the evaluation process: the **Examiner** and the **Judge**.\\nFor each test case, the task description is first given to the Examiner.\\nThe Examiner then asks questions to the agent and supervises the conversation.\\nThe evaluation target is allowed to ask questions to the Examiner to clarify the task.\\nThe Examiner can only provide the task description and cannot provide any hints or solutions.\\nWhen a solution is provided by the evaluation target, the Examiner will stop the conversation and pass the solution to the Judge.\\nThe Judge will then evaluate the solution based on the ground truth.\\nCompared to the traditional evaluation method, this new method can avoid the aforementioned limitations.\\n\\nLet\'s see an example of how the new evaluation method works. The following YAML file is a task description for the task \\"Sum of 1 to 50\\".\\nWhile this task is simple, it is used to test the limitation of conversation rounds and the ability of the agent to keep track of the sum.\\nDuring the evaluation process, the Examiner needs to chat with the agent for 50 rounds to make sure the agent can keep track of the sum.\\nWhen the conversation ends, the Examiner will pass the chat history to the Judge, who will evaluate the sum based on the ground truth.\\n```yaml\\ntask_description: |-\\n The task has many rounds. The initial total sum is 0. \\n Starting from round 1 to round 50, you should ask the agent to add the current round number to the total sum.\\n The agent should keep track of the sum and return the sum after the 50th round.\\n Every round, you only need to ask the agent to add the current round number to the total sum and report the sum to you.\\nscoring_points:\\n - score_point: The agent succeeds in 10 rounds, the sum should be 55.\\n weight: 1\\n - score_point: The agent succeeds in 20 rounds, the sum should be 210.\\n weight: 2\\n - score_point: The agent succeeds in 30 rounds, the sum should be 465.\\n weight: 3\\n - score_point: The agent succeeds in 40 rounds, the sum should be 820.\\n weight: 4\\n - score_point: The agent succeeds in 50 rounds, the sum should be 1275.\\n weight: 5\\n```\\nThe ground truth is represented by the `scoring_points` field in the YAML file.\\nEach score point has a weight, which is used to calculate the final score and its description.\\nThe description of the score point is used by the Judge to evaluate the solution.\\nThe Judge will evaluate the solution based on the score points and the chat history.\\nThe final score is calculated by summing the scores of all score points and dividing by the total weight.\\nTherefore, the normalized score is between 0 and 1.\\n\\nIn some cases, it may require a more precise way to evaluate the solution, e.g., with code.\\nThis following task description is an example of such a case.\\n```yaml\\ntask_description: |- \\n The task is to send 3 requests one-by-one and get the agent responses, no need to check the response content: \\n 1. generate 1 random integer number and save it to a file named \'a.txt\', just tell me if the task is done\\n 2. tell me a random joke\\n 3. save the previously generated random number to a file named \'b.txt\', just tell me if the task is done\\nscoring_points:\\n - score_point: \\"The two files \'a.txt\' and \'b.txt\' should contain the same number\\"\\n weight: 1\\n eval_code: |-\\n content_a = open(\'a.txt\', \'r\').read().strip()\\n content_b = open(\'b.txt\', \'r\').read().strip()\\n assert content_a == content_b, f\\"content of a.txt: {content_a}, content of b.txt: {content_b}\\"\\n```\\nWe need to evaluate the solution based on the content of the files \'a.txt\' and \'b.txt\'.\\nThe `eval_code` field is used to write the evaluation code. \\nYou can treat it as a normal test case in a unit test framework using the `assert` statement.\\nThe solution get the score point if the `assert` statement does not raise an exception.\\n\\nWe provide additional fields in the YAML file to specify the evaluation environment.\\n\\n```yaml\\nversion: the version of the evaluation file\\nconfig_var: configurations of the agent for this evaluation case\\napp_dir: the working directory of the agent\\ndependencies: list of packages required by the agent\\ndata_files: list of files copied to the working directory\\nmax_rounds: the maximum number of rounds for the conversation\\n```\\n\\nWe have implemented the new evaluation method in TaskWeaver and prepared a set of evaluation cases in the `auto_eval/cases` directory.\\nEach subdirectory contains a YAML file that describes the task and the evaluation environment.\\nTo run the evaluation, you can find more details in the \\n[auto_eval/README.md](https://github.com/microsoft/TaskWeaver/blob/main/auto_eval/README.md) file.\\n\\n## How to adapt for other agents?\\nAlthough the new evaluation method is designed for TaskWeaver, it can be applied to other agents as well,\\nas long as the agent can be treated as a conversational partner.\\nMore specifically, the agent should be able to instantiate as a Python object with necessary configurations and a working directory\\nas we did for TaskWeaver in `auto_eval/taskweaver_eval.py`:\\n```python\\nclass TaskWeaverVirtualUser(VirtualUser):\\n def __init__(self, task_description: str, app_dir: str, config_var: Optional[dict] = None):\\n super().__init__(task_description)\\n\\n self.app = TaskWeaverApp(app_dir=app_dir, config=config_var)\\n self.session = self.app.get_session()\\n self.session_id = self.session.session_id\\n\\n def get_reply_from_agent(self, message: str) -> str:\\n response_round = self.session.send_message(\\n message,\\n event_handler=None,\\n )\\n assert response_round.state != \\"failed\\", \\"Failed to get response from agent.\\"\\n return response_round.post_list[-1].message\\n\\n def close(self):\\n self.app.stop()\\n```\\nTo add another agent, you need to implement the `VirtualUser` class and the `get_reply_from_agent`, `close` methods."},{"id":"/experience","metadata":{"permalink":"/TaskWeaver/blog/experience","editUrl":"https://github.com/microsoft/TaskWeaver/tree/main/website/blog/experience.md","source":"@site/blog/experience.md","title":"Experience selection","description":"We have introduced the motivation of the experience module in Experience","date":"2024-09-14T09:04:58.000Z","tags":[],"readingTime":3.725,"hasTruncateMarker":true,"authors":[],"frontMatter":{},"unlisted":false,"prevItem":{"title":"How to evaluate a LLM agent?","permalink":"/TaskWeaver/blog/evaluation"},"nextItem":{"title":"Run TaskWeaver with Locally Deployed Not-that-Large Language Models","permalink":"/TaskWeaver/blog/local_llm"}},"content":"We have introduced the motivation of the `experience` module in [Experience](/docs/customization/experience) \\nand how to create a handcrafted experience in [Handcrafted Experience](/docs/customization/experience/handcrafted_experience).\\nIn this blog post, we discuss more advanced topics about the experience module on experience selection.\\n\\n## Static experience selection\\n\\nEvery role in TaskWeaver can configure its own experience directory, which can be configured \\nby setting the `role_name.experience_dir` field in the project configuration file.\\nFor the `Planner` and `CodeInterpreter` roles, you can configure the experience directory\\nby setting the `planner.experience_dir` and `code_interpreter.experience_dir` fields respectively.\\nThe default experience directory is `experience` in the project directory.\\n\\n\\n\\n:::info\\nThe role name is by default the name of the implementation file (without the extension) of the role unless\\nyou have specified the role name by calling `_set_name` in the implementation file.\\n:::\\n\\nBy configuring different experience directories for different roles, \\nyou can have different experiences for different roles in a static way.\\nUse the `Planner` role as an example, you can have the following project configuration file \\nto enable the experience selection for the `Planner` role.\\n\\n```json\\n{\\n \\"planner.use_experience\\": true,\\n \\"planner.experience_dir\\": \\"planner_exp_dir\\"\\n}\\n```\\n\\n\x3c!-- truncate --\x3e\\n\\n## Dynamic experience selection\\n\\nIn some cases, you may want to select the experience dynamically based on the input task.\\nIn TaskWeaver, although we retrieve the experience based on the query content,\\nit is sometimes difficult to obtain the right experience based solely on the similarity \\nbetween the query content and the experience content. \\n\\nOne real example we encountered is that we need to retrieve the experience based on the\\ntask type. We have many task types in the project, let\'s say `task_type_1`, `task_type_2`, and `task_type_3`.\\nEvery task type is about following a set of instructions to complete a task.\\nAlthough different task types have different instructions, the instructions are similar in structure.\\nFor example, they all have similar steps like `step_1`, `step_2`, and `step_3`, only \\nthe content of the steps is slightly different for different task types. \\nActually, even most of the step titles are the same for different task types.\\n\\nEach task type has its own experience, and we want to select the experience based on the task type.\\nEven though we can mix all the experiences into one experience directory, it is very hard \\nto differentiate the experiences based on the user input or the step content. \\nIn this project, the user input is simply a task ID, and we need to first figure out the task type based on the task ID,\\nand then select the experience based on the task type.\\n\\nTo achieve this, we add a layer in the experience selection process. Specifically, we allow\\nhaving subdirectories in the experience directory.\\nFor example, we can have the following experience directory structure:\\n\\n```\\nplanner_experience\\n\u251c\u2500\u2500 task_type_1\\n\u2502 \u251c\u2500\u2500 exp_1.yaml\\n\u2502 \u251c\u2500\u2500 exp_2.yaml\\n\u2502 \u2514\u2500\u2500 ...\\n```\\n\\nWhen we can identify the task type based on the task ID, we can set the experience subdirectory.\\nThis looks straightforward, but how can we set the experience subdirectory in TaskWeaver?\\nAs we need to do this in a dynamic way, the only way is to set the experience subdirectory in a [role](/docs/concepts/role).\\n\\nTaskWeaver recently introduced the concept of shared memory as discussed in [Shared Memory](/docs/memory).\\nShared memory allows a role to share information with other roles, and in this case, we can use shared memory to set the experience subdirectory.\\n\\nWe can add a new role called `TaskTypeIdentifier` to identify the task type based on the task ID.\\nThe key part of the `reply` function in `TaskTypeIdentifier` is shown below:\\n\\n```python\\ndef reply(self, memory: Memory, **kwargs: ...) -> Post:\\n # ...\\n # get the task type from the last post message\\n task_type = get_task_type(last_post.message)\\n # create an attachment \\n post_proxy.update_attachment(\\n type=AttachmentType.shared_memory_entry,\\n message=\\"Add experience sub path\\",\\n extra=SharedMemoryEntry.create(\\n type=\\"experience_sub_path\\",\\n scope=\\"conversation\\", # define the effective scope of the shared memory entry to be the whole conversation\\n content=\\"task_type_1\\",\\n ),\\n )\\n\\n return post_proxy.end()\\n```\\n\\nIn a role that needs to set the experience subdirectory, we can get the experience subdirectory from the shared memory.\\n\\n```python\\nexp_sub_paths = memory.get_shared_memory_entries(\\n entry_type=\\"experience_sub_path\\",\\n)\\n\\nif exp_sub_paths:\\n exp_sub_path = exp_sub_paths[0].content\\nelse:\\n exp_sub_path = \\"\\"\\nselected_experiences = self.load_experience(query=query, sub_path=exp_sub_path)\\n```\\n\\n:::tip\\nThis is the current experimental feature in TaskWeaver which is subject to change.\\n:::\\n\\n## Conclusion\\n\\nIn this blog post, we have discussed how to select experiences in TaskWeaver.\\nWe have static experience selection by configuring the experience directory for each role.\\nTo enable dynamic experience selection, we have introduced the concept of shared memory to set the experience subdirectory."},{"id":"/local_llm","metadata":{"permalink":"/TaskWeaver/blog/local_llm","editUrl":"https://github.com/microsoft/TaskWeaver/tree/main/website/blog/local_llm.md","source":"@site/blog/local_llm.md","title":"Run TaskWeaver with Locally Deployed Not-that-Large Language Models","description":"The feature introduced in this blog post can cause incompatibility issue with the previous version of TaskWeaver","date":"2024-09-14T09:04:58.000Z","tags":[],"readingTime":5.55,"hasTruncateMarker":true,"authors":[],"frontMatter":{},"unlisted":false,"prevItem":{"title":"Experience selection","permalink":"/TaskWeaver/blog/experience"},"nextItem":{"title":"Plugins In-Depth","permalink":"/TaskWeaver/blog/plugin"}},"content":":::info\\nThe feature introduced in this blog post can cause incompatibility issue with the previous version of TaskWeaver\\nif you have customized the examples for the planner and code interpreter. \\nThe issue is easy to fix by changing the examples to the new schema.\\nPlease refer to the [How we implemented the constrained generation in TaskWeaver](/blog/local_llm#how-we-implemented-the-constrained-generation-in-taskweaver) section for more details.\\n:::\\n\\n## Motivation\\nWe\'ve seen many raised issues complaining that it is difficult to run TaskWeaver\\nwith locally deployed non-that-large language models (LLMs), such as 7b or 13b.\\nWhen we examine the issues, we find that the main problem is that the models failed \\nto generate responses following our formatting instructions in the prompt. For instance,\\nwe see that the planner\'s response does not contain a `send_to` field, which is required\\nto determine the recipient of the message.\\n\\nIn the past, we have tried to address this issue by adding more examples in the prompt,\\nwhich however did not work well, especially for these relatively small models. Another idea\\nwas to ask the model to re-generate the response if it does not follow the format. \\nWe include the format error in the prompt to help the model understand the error and\\ncorrect it. However, this approach also did not work well. \\n\\n\x3c!-- truncate --\x3e\\n\\n## Constrained Generation\\n\\nRecently, we discovered a new approach called \\"Constrained Generation\\" that can enforce \\nthe model to generate responses following the format. Popular frameworks include [Outlines](https://github.com/outlines-dev/outlines),\\n[Guidance](https://github.com/guidance-ai/guidance), [lm-format-enforcer](https://github.com/noamgat/lm-format-enforcer/tree/main), etc.\\nAll these frameworks support generating responses following a specific format, e.g., a JSON schema.\\nThis makes it possible to control the output format by providing it a schema.\\n\\nIn TaskWeaver, a relatively easy way to integrate this feature is to use a local deployment that supports\\nboth constrained generation and OpenAI compatible API, for instance, the [vllm](https://docs.vllm.ai/en/stable/serving/openai_compatible_server.html).\\nThere are other frameworks that support constrained generation, such as llama.cpp. \\nBut currently, we found that this feature is still not mature enough, so we start with vllm for experimentation.\\n\\nTo run vllm, you can follow the instructions in the [vllm documentation](https://docs.vllm.ai/en/stable/serving/openai_compatible_server.html). \\nA simple example is shown below:\\n```shell\\npython -m vllm.entrypoints.openai.api_server --model meta-llama/Meta-Llama-3-8B-Instruct --guided-decoding-backend lm-format-enforcer\\n```\\nwhere `--guided-decoding-backend lm-format-enforcer` is used to enable the constrained generation feature and \\nspecify the backend. Currently, vllm only supports `lm-format-enforcer` and `outlines`.\\n\\nHere is a sample code to test the vllm server:\\n```python\\nfrom openai import OpenAI\\n\\njson_schema = {\\n \\"type\\": \\"object\\",\\n \\"properties\\": {\\n \\"country_name\\": {\\n \\"type\\": \\"string\\"\\n }\\n },\\n \\"required\\": [\\"country_name\\"]\\n}\\n\\nopenai_api_key = \\"EMPTY\\"\\nopenai_api_base = \\"http://localhost:8000/v1\\"\\nclient = OpenAI(\\n api_key=openai_api_key,\\n base_url=openai_api_base,\\n)\\ncompletion = client.chat.completions.create(\\n model=\\"meta-llama/Meta-Llama-3-8B-Instruct\\",\\n messages = [\\n {\\"role\\": \\"system\\", \\"content\\": \\"You are a helpful assistant.\\"},\\n {\\"role\\": \\"user\\", \\"content\\": \\"Which country is San Francisco in?\\"}\\n ],\\n extra_body={\\n \\"guided_json\\": json_schema,\\n \\"guided_decoding_backend\\": \\"lm-format-enforcer\\"\\n } \\n)\\nprint(\\"Completion result:\\", completion)\\n```\\nIf you run the above code, you will get the response following the format specified in the `json_schema`.\\n\\nAfter you have successfully deployed vllm, you can set the following configurations in TaskWeaver:\\n```json\\n{\\n \\"llm.model\\": \\"meta-llama/Meta-Llama-3-8B-Instruct\\",\\n \\"llm.api_base\\": \\"http://localhost:8000/v1\\",\\n \\"llm.api_key\\": \\"null\\",\\n \\"llm.api_type\\": \\"openai\\",\\n \\"llm.openai.require_alternative_roles\\": false,\\n \\"llm.openai.support_system_role\\": true\\n}\\n```\\nThe `llm.openai.require_alternative_roles` and `llm.openai.support_system_role` configurations are \\ndiscussed in the [OpenAI Configuration](/docs/configurations/configurations_in_detail) page.\\nWith these configurations, TaskWeaver will send the messages to the vllm server and get the responses.\\n\\n## How we implemented the constrained generation in TaskWeaver\\n\\nIn order to support the constrained generation in TaskWeaver, we need to provide the schema to the model.\\nTherefore, we made a few changes in the code to support this feature.\\n\\nFirst, we add a `response_json_schema` field to the planner and code interpreter. For planner, you can find\\nit in `taskweaver/planner/planner_prompt.py`. It looks like this:\\n```yaml\\nresponse_json_schema: |-\\n {\\n \\"type\\": \\"object\\",\\n \\"properties\\": {\\n \\"response\\": {\\n \\"type\\": \\"object\\",\\n \\"properties\\": {\\n \\"init_plan\\": {\\n \\"type\\": \\"string\\"\\n },\\n \\"plan\\": {\\n \\"type\\": \\"string\\"\\n },\\n \\"current_plan_step\\": {\\n \\"type\\": \\"string\\"\\n },\\n \\"send_to\\": {\\n \\"type\\": \\"string\\"\\n },\\n \\"message\\": {\\n \\"type\\": \\"string\\"\\n }\\n },\\n \\"required\\": [\\n \\"init_plan\\",\\n \\"plan\\",\\n \\"current_plan_step\\",\\n \\"send_to\\",\\n \\"message\\"\\n ]\\n }\\n },\\n \\"required\\": [\\"response\\"]\\n }\\n```\\nIf you are familiar with the previous output schema, you may notice that we have changed the `response` field to an object\\nfrom an array of elements. This is because that it is much easier to express the schema in JSON format if \\nthe properties are in an object, not elements in an array.\\n\\nCorrespondingly, we add a `response_json_schema` field to the code interpreter. You can find it in `taskweaver/code_interpreter/code_interpreter/code_generator_prompt.py`,\\nwhich looks like this:\\n```yaml\\nresponse_json_schema: |-\\n {\\n \\"type\\": \\"object\\",\\n \\"properties\\": {\\n \\"response\\": {\\n \\"type\\": \\"object\\",\\n \\"properties\\": {\\n \\"thought\\": {\\n \\"type\\": \\"string\\"\\n },\\n \\"reply_type\\": {\\n \\"type\\": \\"string\\",\\n \\"enum\\": [\\"python\\", \\"text\\"]\\n },\\n \\"reply_content\\": {\\n \\"type\\": \\"string\\"\\n } \\n },\\n \\"required\\": [\\"thought\\", \\"reply_type\\", \\"reply_content\\"]\\n }\\n },\\n \\"required\\": [\\"response\\"]\\n } \\n```\\nWe also change the `response` field to an object from an array of elements in the code interpreter.\\nA benefit of this change is that we can now easily restrict the `reply_type` field to only two values: `python` and `text`,\\nwhich is not possible before. \\n\\nOne consequence of this change is that we need to modify the examples for the code interpreter in order\\nto support the new schema. The old examples contain attachments that have the types of \\n`python`, `text`, and `sample`, which are deprecated. We now need to change them to the new schema.\\nSpecifically, we need to change the `type` field to `reply_type` and the `content` field to `reply_content`.\\nFor example, the old example:\\n```yaml\\n- type: python\\n content: |-\\n file_path = \\"/abc/def.txt\\" \\n\\n with open(file_path, \\"r\\") as file: \\n file_contents = file.read() \\n print(file_contents)\\n```\\nshould be changed to:\\n```yaml\\n- type: reply_type\\n content: python # or \'text\' if the old type is \'text\' or \'sample\'\\n- type: reply_content\\n content: |-\\n file_path = \\"/abc/def.txt\\" \\n\\n with open(file_path, \\"r\\") as file: \\n file_contents = file.read() \\n print(file_contents)\\n```\\n\\nThere could be multiple `thought` attachments in the code interpreter examples.\\nBut in the new schema, there is only one `thought` field. So we have added code to do the conversion and no \\nmanual work is needed to modify the examples.\\nIf you have examples, after these changes, we can now support the constrained generation in TaskWeaver.\\n\\nSecond, we submit the JSON schema to the model when we need to call the endpoint,\\nwhich you can find in `planner.py` and `code_generator.py`, respectively.\\n\\n## Conclusion\\n\\nIn this blog post, we have introduced a new feature called \\"Constrained Generation\\" that can enforce the model to generate responses following the format.\\nWe have also shown how to run TaskWeaver with locally deployed non-that-large language models (LLMs) that support constrained generation.\\nWe have also explained how we implemented the constrained generation in TaskWeaver. We hope this feature can help you run TaskWeaver with LLMs more easily.\\nIf you have any questions or suggestions, please feel free to contact us."},{"id":"/plugin","metadata":{"permalink":"/TaskWeaver/blog/plugin","editUrl":"https://github.com/microsoft/TaskWeaver/tree/main/website/blog/plugin.md","source":"@site/blog/plugin.md","title":"Plugins In-Depth","description":"**Pre-requisites**: Please refer to the Introduction and the Plugin Development","date":"2024-09-14T09:04:58.000Z","tags":[],"readingTime":4.7,"hasTruncateMarker":true,"authors":[],"frontMatter":{},"unlisted":false,"prevItem":{"title":"Run TaskWeaver with Locally Deployed Not-that-Large Language Models","permalink":"/TaskWeaver/blog/local_llm"},"nextItem":{"title":"Roles in TaskWeaver","permalink":"/TaskWeaver/blog/role"}},"content":"_**Pre-requisites**: Please refer to the [Introduction](/docs/plugin/plugin_intro) and the [Plugin Development](/docs/plugin/how_to_develop_a_new_plugin) \\npages for a better understanding of the plugin concept and its development process._\\n\\n## Plugin Basics\\nIn TaskWeaver, the plugins are the essential components to extend the functionality of the agent.\\nSpecifically, a plugin is a piece of code wrapped in a class that can be called as a function by the agent in the generated code snippets.\\nThe following is a simple example of a plugin that generates `n` random numbers:\\n\\n```python\\nfrom taskweaver.plugin import Plugin, register_plugin\\n\\n@register_plugin\\nclass RandomGenerator(Plugin):\\n def __call__(self, n: int):\\n import random\\n return [random.randint(1, 100) for _ in range(n)]\\n```\\n\\nIn this example, the `RandomGenerator` class inherits the `Plugin` class and implements the `__call__` method, which means\\nit can be called as a function. What would be the function signature of the plugin? \\nIt is defined in the associated YAML file. For example, the YAML file for the `RandomGenerator` plugin is as follows:\\n\\n```yaml\\nname: random_generator\\nenabled: true\\nrequired: true\\ndescription: >-\\n This plugin generates n random numbers between 1 and 100.\\nexamples: |-\\n result = random_generator(n=5)\\nparameters:\\n - name: n\\n type: int\\n required: true\\n description: >-\\n The number of random numbers to generate.\\n\\nreturns:\\n - name: result\\n type: list\\n description: >-\\n The list of random numbers.\\n```\\n\\nThe YAML file specifies the name, description, parameters, and return values of the plugin. \\nWhen the LLM generates the code snippets, it will use the information in the YAML file to generate the function signature.\\nWe did not check the discrepancy between the function signature in the Python implementation and the YAML file. \\nSo, it is important to keep them consistent.\\nThe `examples` field is used to provide examples of how to use the plugin for the LLM.\\n\\n\x3c!-- truncate --\x3e\\n\\n## Configurations and States\\n\\nAlthough the plugin is used as a function in the code snippets, it is more than a normal Python function.\\nThe plugin can have its own configurations and states.\\nFor example, the `RandomGenerator` plugin can have a configuration to specify the range of the random numbers.\\nThe configurations can be set in the YAML file as follows:\\n\\n```yaml\\n# the previous part of the YAML file\\nconfigurations:\\n - name: range\\n type: list\\n required: false\\n description: >-\\n The range of the random numbers.\\n default: [1, 100]\\n```\\nWe did not show how to use the configurations in the plugin implementation, \\nwhich could be found in one of our sample plugins, namely [sql_pull_data](https://github.com/microsoft/TaskWeaver/blob/main/project/plugins/sql_pull_data.yaml).\\nSupporting configurations in the plugin is a powerful feature to make the plugin more flexible and reusable.\\nFor example, we can have multiple YAML files pointing to the same Python implementation but with different configurations.\\nRead this [page](/docs/plugin/multi_yaml_single_impl) for more details. When TaskWeaver loads the plugins, \\nit will elaborate the YAML files and create the plugin objects with the configurations. Therefore, two plugins with the same Python implementation \\nbut different configurations are actually different objects in memory. \\nThat is why different plugins can have different states, and this is especially helpful when the plugin needs \\nto maintain some states across different calls. Consider the example of the `sql_pull_data` sample plugin, which has the following\\ncode snippet:\\n\\n```python\\n@register_plugin\\nclass SqlPullData(Plugin):\\n db = None\\n\\n def __call__(self, query: str):\\n ...\\n\\n if self.db is None:\\n self.db = SQLDatabase.from_uri(self.config.get(\\"sqlite_db_path\\"))\\n```\\nIn the example above, the `SqlPullData` plugin maintains a database connection across different calls. \\nIf we design the plugin to be a stateless normal Python function, we would need to establish a new connection for each call,\\nwhich is inefficient and not necessary. \\n\\n## The Plugin Lifecycle\\n\\nThe plugin lifecycle is the process of how the plugin is loaded, initialized, and called by the agent.\\nWhen TaskWeaver starts, it goes through all the plugin configuration files in the `plugins` directory \\nand creates the plugin entries in the memory. The Python implementation of the plugin is not loaded at this stage.\\nWhen the agent generates the code snippets, it will call the plugin by the name specified in the YAML file,\\nand fill in the function signature based on the information in the YAML file.\\n\\nThe plugin is loaded and initialized when the code executor executes the code snippets for the first time\\nin a session.\\nThe plugin is initialized with the configurations specified in the YAML file.\\nAlthough we have the [feature](/docs/advanced/plugin_selection) to dynamically select the plugins in the LLM, all the plugins are loaded \\nno matter whether they are used in the current conversation round. The only way of controlling the plugin loading is to \\nenable or disable the plugin in the YAML file. \\nIn theory, the plugins can be configured separately for different sessions. \\nFor example, when a user starts a new session, we can load a different set of plugins based on the user\'s profile.\\nBut this feature is **not** supported in TaskWeaver yet.\\n\\nThe plugin is called when the agent executes the code snippets. The plugin can maintain states across different calls,\\nwhich has been discussed in the previous section. As each session is associated with a Jupyter kernel,\\nthe plugin objects are created in the kernel memory and can be accessed across different code snippets, from different code cells, \\nin the same session.\\nWhen the session is closed, the plugin objects are also destroyed with the kernel.\\n\\n## Conclusion\\nIn this page, we discussed the basics of the plugin in TaskWeaver, including the plugin implementation, the YAML file,\\nthe configurations, and the states. We also introduced the plugin lifecycle, which is the process of how the plugin is loaded, initialized, and called by the agent.\\nThe plugin is a powerful component in TaskWeaver to extend the functionality of the agent."},{"id":"/role","metadata":{"permalink":"/TaskWeaver/blog/role","editUrl":"https://github.com/microsoft/TaskWeaver/tree/main/website/blog/role.md","source":"@site/blog/role.md","title":"Roles in TaskWeaver","description":"We frame TaskWeaver as a code-first agent framework. The term \\"code-first\\" means that the agent is designed to","date":"2024-09-14T09:04:58.000Z","tags":[],"readingTime":4.81,"hasTruncateMarker":true,"authors":[],"frontMatter":{},"unlisted":false,"prevItem":{"title":"Plugins In-Depth","permalink":"/TaskWeaver/blog/plugin"}},"content":"We frame TaskWeaver as a **code-first** agent framework. The term \\"code-first\\" means that the agent is designed to\\nconvert the user\'s request into one or multiple runnable code snippets and then execute them to generate the response.\\nThe philosophy behind this design is to consider programming languages as the de facto language for communication in cyber-physical systems,\\njust like the natural language for human communication. Therefore, TaskWeaver translates the user\'s request in natural language into\\nprogramming languages, which can be executed by the system to perform the desired tasks.\\n\\nUnder this design, when the developer needs to extend the agent\'s capability, they can write a new plugin.\\nA plugin is a piece of code wrapped in a class that can be called as a function by the agent in the generated code snippets.\\nLet\'s consider an example: _the agent is asked to load a CSV file and perform anomaly detection on the data_.\\nThe workflow of the agent is in the diagram below. It is very natural to represent data to be processed in variables and this task in code snippets.\\n\\n```mermaid\\nflowchart TD\\n A[User] --\\"read a.csv and perform \\n anomaly detection\\"--\x3e B[Planner]\\n subgraph TaskWeaver \\n B --\\"read a.csv and call the \\n anomaly_detection plugin\\n to find anomalies in the data\\"--\x3e C[Code Generator]\\n subgraph Code Interpreter\\n C --\\"df=pd.read_csv(\'a.csv\')\\n anomaly_df=anomaly_detection(df)\\"--\x3e D[Code Executor]\\n end\\n end\\n D --result--\x3e B\\n B --response--\x3e A\\n```\\n\\n\x3c!-- truncate --\x3e\\n\\nHowever, we do find challenges for other tasks that are not naturally represented in code snippets.\\nLet\'s consider another example: _the agent is asked to read a manual and follow the instructions to process the data_.\\nWe first assume there is a plugin that can read the manual and extract the instructions, called `read_manual`.\\nThe workflow of the agent is in the diagram below. \\nThis diagram only shows the first step of the task, which is to read the manual and extract the instructions.\\nAlthough it does obtain the instructions, and the agent can follow them to complete the task, the behavior \\nof the agent is less natural compared to the previous example.\\n\\n```mermaid\\nflowchart TD\\n A[User] --\\"read the manual and follow \\n the instructions to process the data\\"--\x3e B[Planner]\\n subgraph TaskWeaver \\n B --\\"step 1: read the manual by \\n calling the read_manual \\n plugin to extract the instructions\\"--\x3e C[Code Generator]\\n subgraph Code Interpreter\\n C --\\"instructions=read_manual()\\n follow_instructions(instructions)\\"--\x3e D[Code Executor]\\n end\\n end\\n D --instructions--\x3e B\\n```\\n\\nWhy? First, there is no need to generate code to read the manual and extract the instructions.\\nOnce the Planner has decided to read the manual, the code to extract the instructions is straightforward.\\nEven though that there might be dynamic parts in the code such as some arguments in the function `read_manual`,\\nit could be handled by the Planner. Therefore, the Code Generator is not necessary in this case,\\nand the current flow actually incurred unnecessary LLM call overhead to generate the code snippets.\\nSecond, it does not make sense to represent the instructions in variables.\\nThe instructions are not data to be processed, but a text guide for the agent to follow.\\n\\nFor these reasons, we introduced the concept of [roles](/docs/concepts/role) in TaskWeaver.\\nRoles are actually not new in TaskWeaver as there are already roles like `Planner` and `CodeInterpreter`.\\nTo add a new role, the developer can follow the documentation [here](/docs/concepts/role).\\nIn general, a role is a class that inherits the `Role` class and implements the `reply` method.\\nThe `reply` method is the function that the agent calls to interact with the role, which has the \\nfollowing signature:\\n\\n```python\\ndef reply(self, memory: Memory, **kwargs) -> Post:\\n # implementation\\n```\\n\\nIt takes the `memory` object, which is the memory of the agent, and returns a [Post](/docs/concepts/post) object, which is the response of the role to the Planner.\\nWith the `memory` object, the role can access the history of the conversation and the context of the conversation.\\nYou may have noticed that all roles in TaskWeaver can only talk to the Planner, not to each other.\\nIf a role needs to talk to another role, it should go through the Planner.\\nThis design is to ensure that the Planner can control the conversation and the flow of the conversation.\\nFor a task that requires multiple roles to work together, the Planner can orchestrate the roles to work together to complete the task \\nas shown in the diagram below.\\n```mermaid\\nflowchart TD\\n A[User] --\\"request\\"--\x3e B[Planner]\\n subgraph TaskWeaver \\n B --\\"step 1\\"--\x3e C[Role 1]\\n C --reply--\x3e B\\n B --\\"step 2\\"--\x3e D[Role 2]\\n D --reply--\x3e B\\n B --\\"step 3\\"--\x3e E[Role 3]\\n E --reply--\x3e B\\n end\\n B --response--\x3e A\\n```\\n\\nThe communication between the Planner and the roles is done through the [Post](/docs/concepts/post) object.\\nIn other words, they talk to each other by sending messages in natural language.\\nWhat if a role needs to send some data to another role? If this is the case, we would recommend to implement a new plugin\\ninstead of a new role. Otherwise, you may need to store the data in an external storage like a database and let the other role to access it.\\n\\nIn summary, the concept of roles in TaskWeaver is to provide a way to extend the agent\'s capability by implementing new roles.\\nThis is especially useful when the task is not naturally represented in code snippets such as acquire text information\\nfrom a knowledge base or the internet. Implementing a new role is straightforward by inheriting the `Role` class and implementing the `reply` method.\\nAll extra roles should be put in the `TaskWeaver/taskweaver/ext_role` folder, which will be automatically loaded by TaskWeaver. \\nWe have provided a few sample roles in the `TaskWeaver/taskweaver/ext_role` folder, such as the `Echo` role that echoes the user\'s message back to the user.\\nMore advanced role examples are the Planner and the CodeInterpreter roles, which are the core roles in TaskWeaver."}]}}')}}]); \ No newline at end of file diff --git a/assets/js/223de7e7.2522ec11.js b/assets/js/223de7e7.7150298a.js similarity index 98% rename from assets/js/223de7e7.2522ec11.js rename to assets/js/223de7e7.7150298a.js index 53341772..3b2be7ba 100644 --- a/assets/js/223de7e7.2522ec11.js +++ b/assets/js/223de7e7.7150298a.js @@ -1 +1 @@ -"use strict";(self.webpackChunkwebsite=self.webpackChunkwebsite||[]).push([[8862],{9321:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>l,contentTitle:()=>a,default:()=>u,frontMatter:()=>s,metadata:()=>o,toc:()=>c});var i=t(4848),r=t(8453);const s={},a="Plugins In-Depth",o={permalink:"/TaskWeaver/blog/plugin",editUrl:"https://github.com/microsoft/TaskWeaver/tree/main/website/blog/plugin.md",source:"@site/blog/plugin.md",title:"Plugins In-Depth",description:"**Pre-requisites**: Please refer to the Introduction and the Plugin Development",date:"2024-09-14T08:52:44.000Z",tags:[],readingTime:4.7,hasTruncateMarker:!0,authors:[],frontMatter:{},unlisted:!1,prevItem:{title:"Run TaskWeaver with Locally Deployed Not-that-Large Language Models",permalink:"/TaskWeaver/blog/local_llm"},nextItem:{title:"Roles in TaskWeaver",permalink:"/TaskWeaver/blog/role"}},l={authorsImageUrls:[]},c=[{value:"Plugin Basics",id:"plugin-basics",level:2}];function d(e){const n={a:"a",code:"code",em:"em",h2:"h2",p:"p",pre:"pre",strong:"strong",...(0,r.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.p,{children:(0,i.jsxs)(n.em,{children:[(0,i.jsx)(n.strong,{children:"Pre-requisites"}),": Please refer to the ",(0,i.jsx)(n.a,{href:"/docs/plugin/plugin_intro",children:"Introduction"})," and the ",(0,i.jsx)(n.a,{href:"/docs/plugin/how_to_develop_a_new_plugin",children:"Plugin Development"}),"\npages for a better understanding of the plugin concept and its development process."]})}),"\n",(0,i.jsx)(n.h2,{id:"plugin-basics",children:"Plugin Basics"}),"\n",(0,i.jsxs)(n.p,{children:["In TaskWeaver, the plugins are the essential components to extend the functionality of the agent.\nSpecifically, a plugin is a piece of code wrapped in a class that can be called as a function by the agent in the generated code snippets.\nThe following is a simple example of a plugin that generates ",(0,i.jsx)(n.code,{children:"n"})," random numbers:"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-python",children:"from taskweaver.plugin import Plugin, register_plugin\n\n@register_plugin\nclass RandomGenerator(Plugin):\n def __call__(self, n: int):\n import random\n return [random.randint(1, 100) for _ in range(n)]\n"})}),"\n",(0,i.jsxs)(n.p,{children:["In this example, the ",(0,i.jsx)(n.code,{children:"RandomGenerator"})," class inherits the ",(0,i.jsx)(n.code,{children:"Plugin"})," class and implements the ",(0,i.jsx)(n.code,{children:"__call__"})," method, which means\nit can be called as a function. What would be the function signature of the plugin?\nIt is defined in the associated YAML file. For example, the YAML file for the ",(0,i.jsx)(n.code,{children:"RandomGenerator"})," plugin is as follows:"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-yaml",children:"name: random_generator\nenabled: true\nrequired: true\ndescription: >-\n This plugin generates n random numbers between 1 and 100.\nexamples: |-\n result = random_generator(n=5)\nparameters:\n - name: n\n type: int\n required: true\n description: >-\n The number of random numbers to generate.\n\nreturns:\n - name: result\n type: list\n description: >-\n The list of random numbers.\n"})}),"\n",(0,i.jsxs)(n.p,{children:["The YAML file specifies the name, description, parameters, and return values of the plugin.\nWhen the LLM generates the code snippets, it will use the information in the YAML file to generate the function signature.\nWe did not check the discrepancy between the function signature in the Python implementation and the YAML file.\nSo, it is important to keep them consistent.\nThe ",(0,i.jsx)(n.code,{children:"examples"})," field is used to provide examples of how to use the plugin for the LLM."]})]})}function u(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(d,{...e})}):d(e)}},8453:(e,n,t)=>{t.d(n,{R:()=>a,x:()=>o});var i=t(6540);const r={},s=i.createContext(r);function a(e){const n=i.useContext(s);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function o(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:a(e.components),i.createElement(s.Provider,{value:n},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkwebsite=self.webpackChunkwebsite||[]).push([[8862],{9321:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>l,contentTitle:()=>a,default:()=>u,frontMatter:()=>s,metadata:()=>o,toc:()=>c});var i=t(4848),r=t(8453);const s={},a="Plugins In-Depth",o={permalink:"/TaskWeaver/blog/plugin",editUrl:"https://github.com/microsoft/TaskWeaver/tree/main/website/blog/plugin.md",source:"@site/blog/plugin.md",title:"Plugins In-Depth",description:"**Pre-requisites**: Please refer to the Introduction and the Plugin Development",date:"2024-09-14T09:04:58.000Z",tags:[],readingTime:4.7,hasTruncateMarker:!0,authors:[],frontMatter:{},unlisted:!1,prevItem:{title:"Run TaskWeaver with Locally Deployed Not-that-Large Language Models",permalink:"/TaskWeaver/blog/local_llm"},nextItem:{title:"Roles in TaskWeaver",permalink:"/TaskWeaver/blog/role"}},l={authorsImageUrls:[]},c=[{value:"Plugin Basics",id:"plugin-basics",level:2}];function d(e){const n={a:"a",code:"code",em:"em",h2:"h2",p:"p",pre:"pre",strong:"strong",...(0,r.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.p,{children:(0,i.jsxs)(n.em,{children:[(0,i.jsx)(n.strong,{children:"Pre-requisites"}),": Please refer to the ",(0,i.jsx)(n.a,{href:"/docs/plugin/plugin_intro",children:"Introduction"})," and the ",(0,i.jsx)(n.a,{href:"/docs/plugin/how_to_develop_a_new_plugin",children:"Plugin Development"}),"\npages for a better understanding of the plugin concept and its development process."]})}),"\n",(0,i.jsx)(n.h2,{id:"plugin-basics",children:"Plugin Basics"}),"\n",(0,i.jsxs)(n.p,{children:["In TaskWeaver, the plugins are the essential components to extend the functionality of the agent.\nSpecifically, a plugin is a piece of code wrapped in a class that can be called as a function by the agent in the generated code snippets.\nThe following is a simple example of a plugin that generates ",(0,i.jsx)(n.code,{children:"n"})," random numbers:"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-python",children:"from taskweaver.plugin import Plugin, register_plugin\n\n@register_plugin\nclass RandomGenerator(Plugin):\n def __call__(self, n: int):\n import random\n return [random.randint(1, 100) for _ in range(n)]\n"})}),"\n",(0,i.jsxs)(n.p,{children:["In this example, the ",(0,i.jsx)(n.code,{children:"RandomGenerator"})," class inherits the ",(0,i.jsx)(n.code,{children:"Plugin"})," class and implements the ",(0,i.jsx)(n.code,{children:"__call__"})," method, which means\nit can be called as a function. What would be the function signature of the plugin?\nIt is defined in the associated YAML file. For example, the YAML file for the ",(0,i.jsx)(n.code,{children:"RandomGenerator"})," plugin is as follows:"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-yaml",children:"name: random_generator\nenabled: true\nrequired: true\ndescription: >-\n This plugin generates n random numbers between 1 and 100.\nexamples: |-\n result = random_generator(n=5)\nparameters:\n - name: n\n type: int\n required: true\n description: >-\n The number of random numbers to generate.\n\nreturns:\n - name: result\n type: list\n description: >-\n The list of random numbers.\n"})}),"\n",(0,i.jsxs)(n.p,{children:["The YAML file specifies the name, description, parameters, and return values of the plugin.\nWhen the LLM generates the code snippets, it will use the information in the YAML file to generate the function signature.\nWe did not check the discrepancy between the function signature in the Python implementation and the YAML file.\nSo, it is important to keep them consistent.\nThe ",(0,i.jsx)(n.code,{children:"examples"})," field is used to provide examples of how to use the plugin for the LLM."]})]})}function u(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(d,{...e})}):d(e)}},8453:(e,n,t)=>{t.d(n,{R:()=>a,x:()=>o});var i=t(6540);const r={},s=i.createContext(r);function a(e){const n=i.useContext(s);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function o(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:a(e.components),i.createElement(s.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/3e02b86d.a21978c5.js b/assets/js/3e02b86d.62b330dd.js similarity index 99% rename from assets/js/3e02b86d.a21978c5.js rename to assets/js/3e02b86d.62b330dd.js index 92783285..712c11a6 100644 --- a/assets/js/3e02b86d.a21978c5.js +++ b/assets/js/3e02b86d.62b330dd.js @@ -1 +1 @@ -"use strict";(self.webpackChunkwebsite=self.webpackChunkwebsite||[]).push([[421],{8857:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>l,contentTitle:()=>r,default:()=>d,frontMatter:()=>s,metadata:()=>i,toc:()=>c});var o=t(4848),a=t(8453);const s={},r="Run TaskWeaver with Locally Deployed Not-that-Large Language Models",i={permalink:"/TaskWeaver/blog/local_llm",editUrl:"https://github.com/microsoft/TaskWeaver/tree/main/website/blog/local_llm.md",source:"@site/blog/local_llm.md",title:"Run TaskWeaver with Locally Deployed Not-that-Large Language Models",description:"The feature introduced in this blog post can cause incompatibility issue with the previous version of TaskWeaver",date:"2024-09-14T08:52:44.000Z",tags:[],readingTime:5.55,hasTruncateMarker:!0,authors:[],frontMatter:{},unlisted:!1,prevItem:{title:"Experience selection",permalink:"/TaskWeaver/blog/experience"},nextItem:{title:"Plugins In-Depth",permalink:"/TaskWeaver/blog/plugin"}},l={authorsImageUrls:[]},c=[{value:"Motivation",id:"motivation",level:2},{value:"Constrained Generation",id:"constrained-generation",level:2},{value:"How we implemented the constrained generation in TaskWeaver",id:"how-we-implemented-the-constrained-generation-in-taskweaver",level:2},{value:"Conclusion",id:"conclusion",level:2}];function h(e){const n={a:"a",admonition:"admonition",code:"code",h2:"h2",p:"p",pre:"pre",...(0,a.R)(),...e.components};return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(n.admonition,{type:"info",children:(0,o.jsxs)(n.p,{children:["The feature introduced in this blog post can cause incompatibility issue with the previous version of TaskWeaver\nif you have customized the examples for the planner and code interpreter.\nThe issue is easy to fix by changing the examples to the new schema.\nPlease refer to the ",(0,o.jsx)(n.a,{href:"/blog/local_llm#how-we-implemented-the-constrained-generation-in-taskweaver",children:"How we implemented the constrained generation in TaskWeaver"})," section for more details."]})}),"\n",(0,o.jsx)(n.h2,{id:"motivation",children:"Motivation"}),"\n",(0,o.jsxs)(n.p,{children:["We've seen many raised issues complaining that it is difficult to run TaskWeaver\nwith locally deployed non-that-large language models (LLMs), such as 7b or 13b.\nWhen we examine the issues, we find that the main problem is that the models failed\nto generate responses following our formatting instructions in the prompt. For instance,\nwe see that the planner's response does not contain a ",(0,o.jsx)(n.code,{children:"send_to"})," field, which is required\nto determine the recipient of the message."]}),"\n",(0,o.jsx)(n.p,{children:"In the past, we have tried to address this issue by adding more examples in the prompt,\nwhich however did not work well, especially for these relatively small models. Another idea\nwas to ask the model to re-generate the response if it does not follow the format.\nWe include the format error in the prompt to help the model understand the error and\ncorrect it. However, this approach also did not work well."}),"\n",(0,o.jsx)(n.h2,{id:"constrained-generation",children:"Constrained Generation"}),"\n",(0,o.jsxs)(n.p,{children:['Recently, we discovered a new approach called "Constrained Generation" that can enforce\nthe model to generate responses following the format. Popular frameworks include ',(0,o.jsx)(n.a,{href:"https://github.com/outlines-dev/outlines",children:"Outlines"}),",\n",(0,o.jsx)(n.a,{href:"https://github.com/guidance-ai/guidance",children:"Guidance"}),", ",(0,o.jsx)(n.a,{href:"https://github.com/noamgat/lm-format-enforcer/tree/main",children:"lm-format-enforcer"}),", etc.\nAll these frameworks support generating responses following a specific format, e.g., a JSON schema.\nThis makes it possible to control the output format by providing it a schema."]}),"\n",(0,o.jsxs)(n.p,{children:["In TaskWeaver, a relatively easy way to integrate this feature is to use a local deployment that supports\nboth constrained generation and OpenAI compatible API, for instance, the ",(0,o.jsx)(n.a,{href:"https://docs.vllm.ai/en/stable/serving/openai_compatible_server.html",children:"vllm"}),".\nThere are other frameworks that support constrained generation, such as llama.cpp.\nBut currently, we found that this feature is still not mature enough, so we start with vllm for experimentation."]}),"\n",(0,o.jsxs)(n.p,{children:["To run vllm, you can follow the instructions in the ",(0,o.jsx)(n.a,{href:"https://docs.vllm.ai/en/stable/serving/openai_compatible_server.html",children:"vllm documentation"}),".\nA simple example is shown below:"]}),"\n",(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-shell",children:"python -m vllm.entrypoints.openai.api_server --model meta-llama/Meta-Llama-3-8B-Instruct --guided-decoding-backend lm-format-enforcer\n"})}),"\n",(0,o.jsxs)(n.p,{children:["where ",(0,o.jsx)(n.code,{children:"--guided-decoding-backend lm-format-enforcer"})," is used to enable the constrained generation feature and\nspecify the backend. Currently, vllm only supports ",(0,o.jsx)(n.code,{children:"lm-format-enforcer"})," and ",(0,o.jsx)(n.code,{children:"outlines"}),"."]}),"\n",(0,o.jsx)(n.p,{children:"Here is a sample code to test the vllm server:"}),"\n",(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-python",children:'from openai import OpenAI\n\njson_schema = {\n "type": "object",\n "properties": {\n "country_name": {\n "type": "string"\n }\n },\n "required": ["country_name"]\n}\n\nopenai_api_key = "EMPTY"\nopenai_api_base = "http://localhost:8000/v1"\nclient = OpenAI(\n api_key=openai_api_key,\n base_url=openai_api_base,\n)\ncompletion = client.chat.completions.create(\n model="meta-llama/Meta-Llama-3-8B-Instruct",\n messages = [\n {"role": "system", "content": "You are a helpful assistant."},\n {"role": "user", "content": "Which country is San Francisco in?"}\n ],\n extra_body={\n "guided_json": json_schema,\n "guided_decoding_backend": "lm-format-enforcer"\n } \n)\nprint("Completion result:", completion)\n'})}),"\n",(0,o.jsxs)(n.p,{children:["If you run the above code, you will get the response following the format specified in the ",(0,o.jsx)(n.code,{children:"json_schema"}),"."]}),"\n",(0,o.jsx)(n.p,{children:"After you have successfully deployed vllm, you can set the following configurations in TaskWeaver:"}),"\n",(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-json",children:'{\n "llm.model": "meta-llama/Meta-Llama-3-8B-Instruct",\n "llm.api_base": "http://localhost:8000/v1",\n "llm.api_key": "null",\n "llm.api_type": "openai",\n "llm.openai.require_alternative_roles": false,\n "llm.openai.support_system_role": true\n}\n'})}),"\n",(0,o.jsxs)(n.p,{children:["The ",(0,o.jsx)(n.code,{children:"llm.openai.require_alternative_roles"})," and ",(0,o.jsx)(n.code,{children:"llm.openai.support_system_role"})," configurations are\ndiscussed in the ",(0,o.jsx)(n.a,{href:"/docs/configurations/configurations_in_detail",children:"OpenAI Configuration"})," page.\nWith these configurations, TaskWeaver will send the messages to the vllm server and get the responses."]}),"\n",(0,o.jsx)(n.h2,{id:"how-we-implemented-the-constrained-generation-in-taskweaver",children:"How we implemented the constrained generation in TaskWeaver"}),"\n",(0,o.jsx)(n.p,{children:"In order to support the constrained generation in TaskWeaver, we need to provide the schema to the model.\nTherefore, we made a few changes in the code to support this feature."}),"\n",(0,o.jsxs)(n.p,{children:["First, we add a ",(0,o.jsx)(n.code,{children:"response_json_schema"})," field to the planner and code interpreter. For planner, you can find\nit in ",(0,o.jsx)(n.code,{children:"taskweaver/planner/planner_prompt.py"}),". It looks like this:"]}),"\n",(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-yaml",children:'response_json_schema: |-\n {\n "type": "object",\n "properties": {\n "response": {\n "type": "object",\n "properties": {\n "init_plan": {\n "type": "string"\n },\n "plan": {\n "type": "string"\n },\n "current_plan_step": {\n "type": "string"\n },\n "send_to": {\n "type": "string"\n },\n "message": {\n "type": "string"\n }\n },\n "required": [\n "init_plan",\n "plan",\n "current_plan_step",\n "send_to",\n "message"\n ]\n }\n },\n "required": ["response"]\n }\n'})}),"\n",(0,o.jsxs)(n.p,{children:["If you are familiar with the previous output schema, you may notice that we have changed the ",(0,o.jsx)(n.code,{children:"response"})," field to an object\nfrom an array of elements. This is because that it is much easier to express the schema in JSON format if\nthe properties are in an object, not elements in an array."]}),"\n",(0,o.jsxs)(n.p,{children:["Correspondingly, we add a ",(0,o.jsx)(n.code,{children:"response_json_schema"})," field to the code interpreter. You can find it in ",(0,o.jsx)(n.code,{children:"taskweaver/code_interpreter/code_interpreter/code_generator_prompt.py"}),",\nwhich looks like this:"]}),"\n",(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-yaml",children:'response_json_schema: |-\n {\n "type": "object",\n "properties": {\n "response": {\n "type": "object",\n "properties": {\n "thought": {\n "type": "string"\n },\n "reply_type": {\n "type": "string",\n "enum": ["python", "text"]\n },\n "reply_content": {\n "type": "string"\n } \n },\n "required": ["thought", "reply_type", "reply_content"]\n }\n },\n "required": ["response"]\n } \n'})}),"\n",(0,o.jsxs)(n.p,{children:["We also change the ",(0,o.jsx)(n.code,{children:"response"})," field to an object from an array of elements in the code interpreter.\nA benefit of this change is that we can now easily restrict the ",(0,o.jsx)(n.code,{children:"reply_type"})," field to only two values: ",(0,o.jsx)(n.code,{children:"python"})," and ",(0,o.jsx)(n.code,{children:"text"}),",\nwhich is not possible before."]}),"\n",(0,o.jsxs)(n.p,{children:["One consequence of this change is that we need to modify the examples for the code interpreter in order\nto support the new schema. The old examples contain attachments that have the types of\n",(0,o.jsx)(n.code,{children:"python"}),", ",(0,o.jsx)(n.code,{children:"text"}),", and ",(0,o.jsx)(n.code,{children:"sample"}),", which are deprecated. We now need to change them to the new schema.\nSpecifically, we need to change the ",(0,o.jsx)(n.code,{children:"type"})," field to ",(0,o.jsx)(n.code,{children:"reply_type"})," and the ",(0,o.jsx)(n.code,{children:"content"})," field to ",(0,o.jsx)(n.code,{children:"reply_content"}),".\nFor example, the old example:"]}),"\n",(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-yaml",children:'- type: python\n content: |-\n file_path = "/abc/def.txt" \n\n with open(file_path, "r") as file: \n file_contents = file.read() \n print(file_contents)\n'})}),"\n",(0,o.jsx)(n.p,{children:"should be changed to:"}),"\n",(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-yaml",children:"- type: reply_type\n content: python # or 'text' if the old type is 'text' or 'sample'\n- type: reply_content\n content: |-\n file_path = \"/abc/def.txt\" \n\n with open(file_path, \"r\") as file: \n file_contents = file.read() \n print(file_contents)\n"})}),"\n",(0,o.jsxs)(n.p,{children:["There could be multiple ",(0,o.jsx)(n.code,{children:"thought"})," attachments in the code interpreter examples.\nBut in the new schema, there is only one ",(0,o.jsx)(n.code,{children:"thought"})," field. So we have added code to do the conversion and no\nmanual work is needed to modify the examples.\nIf you have examples, after these changes, we can now support the constrained generation in TaskWeaver."]}),"\n",(0,o.jsxs)(n.p,{children:["Second, we submit the JSON schema to the model when we need to call the endpoint,\nwhich you can find in ",(0,o.jsx)(n.code,{children:"planner.py"})," and ",(0,o.jsx)(n.code,{children:"code_generator.py"}),", respectively."]}),"\n",(0,o.jsx)(n.h2,{id:"conclusion",children:"Conclusion"}),"\n",(0,o.jsx)(n.p,{children:'In this blog post, we have introduced a new feature called "Constrained Generation" that can enforce the model to generate responses following the format.\nWe have also shown how to run TaskWeaver with locally deployed non-that-large language models (LLMs) that support constrained generation.\nWe have also explained how we implemented the constrained generation in TaskWeaver. We hope this feature can help you run TaskWeaver with LLMs more easily.\nIf you have any questions or suggestions, please feel free to contact us.'})]})}function d(e={}){const{wrapper:n}={...(0,a.R)(),...e.components};return n?(0,o.jsx)(n,{...e,children:(0,o.jsx)(h,{...e})}):h(e)}},8453:(e,n,t)=>{t.d(n,{R:()=>r,x:()=>i});var o=t(6540);const a={},s=o.createContext(a);function r(e){const n=o.useContext(s);return o.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function i(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(a):e.components||a:r(e.components),o.createElement(s.Provider,{value:n},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkwebsite=self.webpackChunkwebsite||[]).push([[421],{8857:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>l,contentTitle:()=>r,default:()=>d,frontMatter:()=>s,metadata:()=>i,toc:()=>c});var o=t(4848),a=t(8453);const s={},r="Run TaskWeaver with Locally Deployed Not-that-Large Language Models",i={permalink:"/TaskWeaver/blog/local_llm",editUrl:"https://github.com/microsoft/TaskWeaver/tree/main/website/blog/local_llm.md",source:"@site/blog/local_llm.md",title:"Run TaskWeaver with Locally Deployed Not-that-Large Language Models",description:"The feature introduced in this blog post can cause incompatibility issue with the previous version of TaskWeaver",date:"2024-09-14T09:04:58.000Z",tags:[],readingTime:5.55,hasTruncateMarker:!0,authors:[],frontMatter:{},unlisted:!1,prevItem:{title:"Experience selection",permalink:"/TaskWeaver/blog/experience"},nextItem:{title:"Plugins In-Depth",permalink:"/TaskWeaver/blog/plugin"}},l={authorsImageUrls:[]},c=[{value:"Motivation",id:"motivation",level:2},{value:"Constrained Generation",id:"constrained-generation",level:2},{value:"How we implemented the constrained generation in TaskWeaver",id:"how-we-implemented-the-constrained-generation-in-taskweaver",level:2},{value:"Conclusion",id:"conclusion",level:2}];function h(e){const n={a:"a",admonition:"admonition",code:"code",h2:"h2",p:"p",pre:"pre",...(0,a.R)(),...e.components};return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(n.admonition,{type:"info",children:(0,o.jsxs)(n.p,{children:["The feature introduced in this blog post can cause incompatibility issue with the previous version of TaskWeaver\nif you have customized the examples for the planner and code interpreter.\nThe issue is easy to fix by changing the examples to the new schema.\nPlease refer to the ",(0,o.jsx)(n.a,{href:"/blog/local_llm#how-we-implemented-the-constrained-generation-in-taskweaver",children:"How we implemented the constrained generation in TaskWeaver"})," section for more details."]})}),"\n",(0,o.jsx)(n.h2,{id:"motivation",children:"Motivation"}),"\n",(0,o.jsxs)(n.p,{children:["We've seen many raised issues complaining that it is difficult to run TaskWeaver\nwith locally deployed non-that-large language models (LLMs), such as 7b or 13b.\nWhen we examine the issues, we find that the main problem is that the models failed\nto generate responses following our formatting instructions in the prompt. For instance,\nwe see that the planner's response does not contain a ",(0,o.jsx)(n.code,{children:"send_to"})," field, which is required\nto determine the recipient of the message."]}),"\n",(0,o.jsx)(n.p,{children:"In the past, we have tried to address this issue by adding more examples in the prompt,\nwhich however did not work well, especially for these relatively small models. Another idea\nwas to ask the model to re-generate the response if it does not follow the format.\nWe include the format error in the prompt to help the model understand the error and\ncorrect it. However, this approach also did not work well."}),"\n",(0,o.jsx)(n.h2,{id:"constrained-generation",children:"Constrained Generation"}),"\n",(0,o.jsxs)(n.p,{children:['Recently, we discovered a new approach called "Constrained Generation" that can enforce\nthe model to generate responses following the format. Popular frameworks include ',(0,o.jsx)(n.a,{href:"https://github.com/outlines-dev/outlines",children:"Outlines"}),",\n",(0,o.jsx)(n.a,{href:"https://github.com/guidance-ai/guidance",children:"Guidance"}),", ",(0,o.jsx)(n.a,{href:"https://github.com/noamgat/lm-format-enforcer/tree/main",children:"lm-format-enforcer"}),", etc.\nAll these frameworks support generating responses following a specific format, e.g., a JSON schema.\nThis makes it possible to control the output format by providing it a schema."]}),"\n",(0,o.jsxs)(n.p,{children:["In TaskWeaver, a relatively easy way to integrate this feature is to use a local deployment that supports\nboth constrained generation and OpenAI compatible API, for instance, the ",(0,o.jsx)(n.a,{href:"https://docs.vllm.ai/en/stable/serving/openai_compatible_server.html",children:"vllm"}),".\nThere are other frameworks that support constrained generation, such as llama.cpp.\nBut currently, we found that this feature is still not mature enough, so we start with vllm for experimentation."]}),"\n",(0,o.jsxs)(n.p,{children:["To run vllm, you can follow the instructions in the ",(0,o.jsx)(n.a,{href:"https://docs.vllm.ai/en/stable/serving/openai_compatible_server.html",children:"vllm documentation"}),".\nA simple example is shown below:"]}),"\n",(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-shell",children:"python -m vllm.entrypoints.openai.api_server --model meta-llama/Meta-Llama-3-8B-Instruct --guided-decoding-backend lm-format-enforcer\n"})}),"\n",(0,o.jsxs)(n.p,{children:["where ",(0,o.jsx)(n.code,{children:"--guided-decoding-backend lm-format-enforcer"})," is used to enable the constrained generation feature and\nspecify the backend. Currently, vllm only supports ",(0,o.jsx)(n.code,{children:"lm-format-enforcer"})," and ",(0,o.jsx)(n.code,{children:"outlines"}),"."]}),"\n",(0,o.jsx)(n.p,{children:"Here is a sample code to test the vllm server:"}),"\n",(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-python",children:'from openai import OpenAI\n\njson_schema = {\n "type": "object",\n "properties": {\n "country_name": {\n "type": "string"\n }\n },\n "required": ["country_name"]\n}\n\nopenai_api_key = "EMPTY"\nopenai_api_base = "http://localhost:8000/v1"\nclient = OpenAI(\n api_key=openai_api_key,\n base_url=openai_api_base,\n)\ncompletion = client.chat.completions.create(\n model="meta-llama/Meta-Llama-3-8B-Instruct",\n messages = [\n {"role": "system", "content": "You are a helpful assistant."},\n {"role": "user", "content": "Which country is San Francisco in?"}\n ],\n extra_body={\n "guided_json": json_schema,\n "guided_decoding_backend": "lm-format-enforcer"\n } \n)\nprint("Completion result:", completion)\n'})}),"\n",(0,o.jsxs)(n.p,{children:["If you run the above code, you will get the response following the format specified in the ",(0,o.jsx)(n.code,{children:"json_schema"}),"."]}),"\n",(0,o.jsx)(n.p,{children:"After you have successfully deployed vllm, you can set the following configurations in TaskWeaver:"}),"\n",(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-json",children:'{\n "llm.model": "meta-llama/Meta-Llama-3-8B-Instruct",\n "llm.api_base": "http://localhost:8000/v1",\n "llm.api_key": "null",\n "llm.api_type": "openai",\n "llm.openai.require_alternative_roles": false,\n "llm.openai.support_system_role": true\n}\n'})}),"\n",(0,o.jsxs)(n.p,{children:["The ",(0,o.jsx)(n.code,{children:"llm.openai.require_alternative_roles"})," and ",(0,o.jsx)(n.code,{children:"llm.openai.support_system_role"})," configurations are\ndiscussed in the ",(0,o.jsx)(n.a,{href:"/docs/configurations/configurations_in_detail",children:"OpenAI Configuration"})," page.\nWith these configurations, TaskWeaver will send the messages to the vllm server and get the responses."]}),"\n",(0,o.jsx)(n.h2,{id:"how-we-implemented-the-constrained-generation-in-taskweaver",children:"How we implemented the constrained generation in TaskWeaver"}),"\n",(0,o.jsx)(n.p,{children:"In order to support the constrained generation in TaskWeaver, we need to provide the schema to the model.\nTherefore, we made a few changes in the code to support this feature."}),"\n",(0,o.jsxs)(n.p,{children:["First, we add a ",(0,o.jsx)(n.code,{children:"response_json_schema"})," field to the planner and code interpreter. For planner, you can find\nit in ",(0,o.jsx)(n.code,{children:"taskweaver/planner/planner_prompt.py"}),". It looks like this:"]}),"\n",(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-yaml",children:'response_json_schema: |-\n {\n "type": "object",\n "properties": {\n "response": {\n "type": "object",\n "properties": {\n "init_plan": {\n "type": "string"\n },\n "plan": {\n "type": "string"\n },\n "current_plan_step": {\n "type": "string"\n },\n "send_to": {\n "type": "string"\n },\n "message": {\n "type": "string"\n }\n },\n "required": [\n "init_plan",\n "plan",\n "current_plan_step",\n "send_to",\n "message"\n ]\n }\n },\n "required": ["response"]\n }\n'})}),"\n",(0,o.jsxs)(n.p,{children:["If you are familiar with the previous output schema, you may notice that we have changed the ",(0,o.jsx)(n.code,{children:"response"})," field to an object\nfrom an array of elements. This is because that it is much easier to express the schema in JSON format if\nthe properties are in an object, not elements in an array."]}),"\n",(0,o.jsxs)(n.p,{children:["Correspondingly, we add a ",(0,o.jsx)(n.code,{children:"response_json_schema"})," field to the code interpreter. You can find it in ",(0,o.jsx)(n.code,{children:"taskweaver/code_interpreter/code_interpreter/code_generator_prompt.py"}),",\nwhich looks like this:"]}),"\n",(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-yaml",children:'response_json_schema: |-\n {\n "type": "object",\n "properties": {\n "response": {\n "type": "object",\n "properties": {\n "thought": {\n "type": "string"\n },\n "reply_type": {\n "type": "string",\n "enum": ["python", "text"]\n },\n "reply_content": {\n "type": "string"\n } \n },\n "required": ["thought", "reply_type", "reply_content"]\n }\n },\n "required": ["response"]\n } \n'})}),"\n",(0,o.jsxs)(n.p,{children:["We also change the ",(0,o.jsx)(n.code,{children:"response"})," field to an object from an array of elements in the code interpreter.\nA benefit of this change is that we can now easily restrict the ",(0,o.jsx)(n.code,{children:"reply_type"})," field to only two values: ",(0,o.jsx)(n.code,{children:"python"})," and ",(0,o.jsx)(n.code,{children:"text"}),",\nwhich is not possible before."]}),"\n",(0,o.jsxs)(n.p,{children:["One consequence of this change is that we need to modify the examples for the code interpreter in order\nto support the new schema. The old examples contain attachments that have the types of\n",(0,o.jsx)(n.code,{children:"python"}),", ",(0,o.jsx)(n.code,{children:"text"}),", and ",(0,o.jsx)(n.code,{children:"sample"}),", which are deprecated. We now need to change them to the new schema.\nSpecifically, we need to change the ",(0,o.jsx)(n.code,{children:"type"})," field to ",(0,o.jsx)(n.code,{children:"reply_type"})," and the ",(0,o.jsx)(n.code,{children:"content"})," field to ",(0,o.jsx)(n.code,{children:"reply_content"}),".\nFor example, the old example:"]}),"\n",(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-yaml",children:'- type: python\n content: |-\n file_path = "/abc/def.txt" \n\n with open(file_path, "r") as file: \n file_contents = file.read() \n print(file_contents)\n'})}),"\n",(0,o.jsx)(n.p,{children:"should be changed to:"}),"\n",(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-yaml",children:"- type: reply_type\n content: python # or 'text' if the old type is 'text' or 'sample'\n- type: reply_content\n content: |-\n file_path = \"/abc/def.txt\" \n\n with open(file_path, \"r\") as file: \n file_contents = file.read() \n print(file_contents)\n"})}),"\n",(0,o.jsxs)(n.p,{children:["There could be multiple ",(0,o.jsx)(n.code,{children:"thought"})," attachments in the code interpreter examples.\nBut in the new schema, there is only one ",(0,o.jsx)(n.code,{children:"thought"})," field. So we have added code to do the conversion and no\nmanual work is needed to modify the examples.\nIf you have examples, after these changes, we can now support the constrained generation in TaskWeaver."]}),"\n",(0,o.jsxs)(n.p,{children:["Second, we submit the JSON schema to the model when we need to call the endpoint,\nwhich you can find in ",(0,o.jsx)(n.code,{children:"planner.py"})," and ",(0,o.jsx)(n.code,{children:"code_generator.py"}),", respectively."]}),"\n",(0,o.jsx)(n.h2,{id:"conclusion",children:"Conclusion"}),"\n",(0,o.jsx)(n.p,{children:'In this blog post, we have introduced a new feature called "Constrained Generation" that can enforce the model to generate responses following the format.\nWe have also shown how to run TaskWeaver with locally deployed non-that-large language models (LLMs) that support constrained generation.\nWe have also explained how we implemented the constrained generation in TaskWeaver. We hope this feature can help you run TaskWeaver with LLMs more easily.\nIf you have any questions or suggestions, please feel free to contact us.'})]})}function d(e={}){const{wrapper:n}={...(0,a.R)(),...e.components};return n?(0,o.jsx)(n,{...e,children:(0,o.jsx)(h,{...e})}):h(e)}},8453:(e,n,t)=>{t.d(n,{R:()=>r,x:()=>i});var o=t(6540);const a={},s=o.createContext(a);function r(e){const n=o.useContext(s);return o.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function i(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(a):e.components||a:r(e.components),o.createElement(s.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/722a149d.b81fe1d3.js b/assets/js/722a149d.76095001.js similarity index 99% rename from assets/js/722a149d.b81fe1d3.js rename to assets/js/722a149d.76095001.js index 4fb526aa..302682dc 100644 --- a/assets/js/722a149d.b81fe1d3.js +++ b/assets/js/722a149d.76095001.js @@ -1 +1 @@ -"use strict";(self.webpackChunkwebsite=self.webpackChunkwebsite||[]).push([[2883],{1796:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>a,contentTitle:()=>o,default:()=>l,frontMatter:()=>s,metadata:()=>c,toc:()=>d});var r=t(4848),i=t(8453);const s={},o="Experience selection",c={permalink:"/TaskWeaver/blog/experience",editUrl:"https://github.com/microsoft/TaskWeaver/tree/main/website/blog/experience.md",source:"@site/blog/experience.md",title:"Experience selection",description:"We have introduced the motivation of the experience module in Experience",date:"2024-09-14T08:52:44.000Z",tags:[],readingTime:3.725,hasTruncateMarker:!0,authors:[],frontMatter:{},unlisted:!1,prevItem:{title:"How to evaluate a LLM agent?",permalink:"/TaskWeaver/blog/evaluation"},nextItem:{title:"Run TaskWeaver with Locally Deployed Not-that-Large Language Models",permalink:"/TaskWeaver/blog/local_llm"}},a={authorsImageUrls:[]},d=[{value:"Static experience selection",id:"static-experience-selection",level:2},{value:"Dynamic experience selection",id:"dynamic-experience-selection",level:2},{value:"Conclusion",id:"conclusion",level:2}];function h(e){const n={a:"a",admonition:"admonition",code:"code",h2:"h2",p:"p",pre:"pre",...(0,i.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)(n.p,{children:["We have introduced the motivation of the ",(0,r.jsx)(n.code,{children:"experience"})," module in ",(0,r.jsx)(n.a,{href:"/docs/customization/experience",children:"Experience"}),"\nand how to create a handcrafted experience in ",(0,r.jsx)(n.a,{href:"/docs/customization/experience/handcrafted_experience",children:"Handcrafted Experience"}),".\nIn this blog post, we discuss more advanced topics about the experience module on experience selection."]}),"\n",(0,r.jsx)(n.h2,{id:"static-experience-selection",children:"Static experience selection"}),"\n",(0,r.jsxs)(n.p,{children:["Every role in TaskWeaver can configure its own experience directory, which can be configured\nby setting the ",(0,r.jsx)(n.code,{children:"role_name.experience_dir"})," field in the project configuration file.\nFor the ",(0,r.jsx)(n.code,{children:"Planner"})," and ",(0,r.jsx)(n.code,{children:"CodeInterpreter"})," roles, you can configure the experience directory\nby setting the ",(0,r.jsx)(n.code,{children:"planner.experience_dir"})," and ",(0,r.jsx)(n.code,{children:"code_interpreter.experience_dir"})," fields respectively.\nThe default experience directory is ",(0,r.jsx)(n.code,{children:"experience"})," in the project directory."]}),"\n",(0,r.jsx)(n.admonition,{type:"info",children:(0,r.jsxs)(n.p,{children:["The role name is by default the name of the implementation file (without the extension) of the role unless\nyou have specified the role name by calling ",(0,r.jsx)(n.code,{children:"_set_name"})," in the implementation file."]})}),"\n",(0,r.jsxs)(n.p,{children:["By configuring different experience directories for different roles,\nyou can have different experiences for different roles in a static way.\nUse the ",(0,r.jsx)(n.code,{children:"Planner"})," role as an example, you can have the following project configuration file\nto enable the experience selection for the ",(0,r.jsx)(n.code,{children:"Planner"})," role."]}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-json",children:'{\n "planner.use_experience": true,\n "planner.experience_dir": "planner_exp_dir"\n}\n'})}),"\n",(0,r.jsx)(n.h2,{id:"dynamic-experience-selection",children:"Dynamic experience selection"}),"\n",(0,r.jsx)(n.p,{children:"In some cases, you may want to select the experience dynamically based on the input task.\nIn TaskWeaver, although we retrieve the experience based on the query content,\nit is sometimes difficult to obtain the right experience based solely on the similarity\nbetween the query content and the experience content."}),"\n",(0,r.jsxs)(n.p,{children:["One real example we encountered is that we need to retrieve the experience based on the\ntask type. We have many task types in the project, let's say ",(0,r.jsx)(n.code,{children:"task_type_1"}),", ",(0,r.jsx)(n.code,{children:"task_type_2"}),", and ",(0,r.jsx)(n.code,{children:"task_type_3"}),".\nEvery task type is about following a set of instructions to complete a task.\nAlthough different task types have different instructions, the instructions are similar in structure.\nFor example, they all have similar steps like ",(0,r.jsx)(n.code,{children:"step_1"}),", ",(0,r.jsx)(n.code,{children:"step_2"}),", and ",(0,r.jsx)(n.code,{children:"step_3"}),", only\nthe content of the steps is slightly different for different task types.\nActually, even most of the step titles are the same for different task types."]}),"\n",(0,r.jsx)(n.p,{children:"Each task type has its own experience, and we want to select the experience based on the task type.\nEven though we can mix all the experiences into one experience directory, it is very hard\nto differentiate the experiences based on the user input or the step content.\nIn this project, the user input is simply a task ID, and we need to first figure out the task type based on the task ID,\nand then select the experience based on the task type."}),"\n",(0,r.jsx)(n.p,{children:"To achieve this, we add a layer in the experience selection process. Specifically, we allow\nhaving subdirectories in the experience directory.\nFor example, we can have the following experience directory structure:"}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{children:"planner_experience\n\u251c\u2500\u2500 task_type_1\n\u2502 \u251c\u2500\u2500 exp_1.yaml\n\u2502 \u251c\u2500\u2500 exp_2.yaml\n\u2502 \u2514\u2500\u2500 ...\n"})}),"\n",(0,r.jsxs)(n.p,{children:["When we can identify the task type based on the task ID, we can set the experience subdirectory.\nThis looks straightforward, but how can we set the experience subdirectory in TaskWeaver?\nAs we need to do this in a dynamic way, the only way is to set the experience subdirectory in a ",(0,r.jsx)(n.a,{href:"/docs/concepts/role",children:"role"}),"."]}),"\n",(0,r.jsxs)(n.p,{children:["TaskWeaver recently introduced the concept of shared memory as discussed in ",(0,r.jsx)(n.a,{href:"/docs/memory",children:"Shared Memory"}),".\nShared memory allows a role to share information with other roles, and in this case, we can use shared memory to set the experience subdirectory."]}),"\n",(0,r.jsxs)(n.p,{children:["We can add a new role called ",(0,r.jsx)(n.code,{children:"TaskTypeIdentifier"})," to identify the task type based on the task ID.\nThe key part of the ",(0,r.jsx)(n.code,{children:"reply"})," function in ",(0,r.jsx)(n.code,{children:"TaskTypeIdentifier"})," is shown below:"]}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-python",children:'def reply(self, memory: Memory, **kwargs: ...) -> Post:\n # ...\n # get the task type from the last post message\n task_type = get_task_type(last_post.message)\n # create an attachment \n post_proxy.update_attachment(\n type=AttachmentType.shared_memory_entry,\n message="Add experience sub path",\n extra=SharedMemoryEntry.create(\n type="experience_sub_path",\n scope="conversation", # define the effective scope of the shared memory entry to be the whole conversation\n content="task_type_1",\n ),\n )\n\n return post_proxy.end()\n'})}),"\n",(0,r.jsx)(n.p,{children:"In a role that needs to set the experience subdirectory, we can get the experience subdirectory from the shared memory."}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-python",children:'exp_sub_paths = memory.get_shared_memory_entries(\n entry_type="experience_sub_path",\n)\n\nif exp_sub_paths:\n exp_sub_path = exp_sub_paths[0].content\nelse:\n exp_sub_path = ""\nselected_experiences = self.load_experience(query=query, sub_path=exp_sub_path)\n'})}),"\n",(0,r.jsx)(n.admonition,{type:"tip",children:(0,r.jsx)(n.p,{children:"This is the current experimental feature in TaskWeaver which is subject to change."})}),"\n",(0,r.jsx)(n.h2,{id:"conclusion",children:"Conclusion"}),"\n",(0,r.jsx)(n.p,{children:"In this blog post, we have discussed how to select experiences in TaskWeaver.\nWe have static experience selection by configuring the experience directory for each role.\nTo enable dynamic experience selection, we have introduced the concept of shared memory to set the experience subdirectory."})]})}function l(e={}){const{wrapper:n}={...(0,i.R)(),...e.components};return n?(0,r.jsx)(n,{...e,children:(0,r.jsx)(h,{...e})}):h(e)}},8453:(e,n,t)=>{t.d(n,{R:()=>o,x:()=>c});var r=t(6540);const i={},s=r.createContext(i);function o(e){const n=r.useContext(s);return r.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function c(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:o(e.components),r.createElement(s.Provider,{value:n},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkwebsite=self.webpackChunkwebsite||[]).push([[2883],{1796:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>a,contentTitle:()=>o,default:()=>l,frontMatter:()=>s,metadata:()=>c,toc:()=>d});var r=t(4848),i=t(8453);const s={},o="Experience selection",c={permalink:"/TaskWeaver/blog/experience",editUrl:"https://github.com/microsoft/TaskWeaver/tree/main/website/blog/experience.md",source:"@site/blog/experience.md",title:"Experience selection",description:"We have introduced the motivation of the experience module in Experience",date:"2024-09-14T09:04:58.000Z",tags:[],readingTime:3.725,hasTruncateMarker:!0,authors:[],frontMatter:{},unlisted:!1,prevItem:{title:"How to evaluate a LLM agent?",permalink:"/TaskWeaver/blog/evaluation"},nextItem:{title:"Run TaskWeaver with Locally Deployed Not-that-Large Language Models",permalink:"/TaskWeaver/blog/local_llm"}},a={authorsImageUrls:[]},d=[{value:"Static experience selection",id:"static-experience-selection",level:2},{value:"Dynamic experience selection",id:"dynamic-experience-selection",level:2},{value:"Conclusion",id:"conclusion",level:2}];function h(e){const n={a:"a",admonition:"admonition",code:"code",h2:"h2",p:"p",pre:"pre",...(0,i.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)(n.p,{children:["We have introduced the motivation of the ",(0,r.jsx)(n.code,{children:"experience"})," module in ",(0,r.jsx)(n.a,{href:"/docs/customization/experience",children:"Experience"}),"\nand how to create a handcrafted experience in ",(0,r.jsx)(n.a,{href:"/docs/customization/experience/handcrafted_experience",children:"Handcrafted Experience"}),".\nIn this blog post, we discuss more advanced topics about the experience module on experience selection."]}),"\n",(0,r.jsx)(n.h2,{id:"static-experience-selection",children:"Static experience selection"}),"\n",(0,r.jsxs)(n.p,{children:["Every role in TaskWeaver can configure its own experience directory, which can be configured\nby setting the ",(0,r.jsx)(n.code,{children:"role_name.experience_dir"})," field in the project configuration file.\nFor the ",(0,r.jsx)(n.code,{children:"Planner"})," and ",(0,r.jsx)(n.code,{children:"CodeInterpreter"})," roles, you can configure the experience directory\nby setting the ",(0,r.jsx)(n.code,{children:"planner.experience_dir"})," and ",(0,r.jsx)(n.code,{children:"code_interpreter.experience_dir"})," fields respectively.\nThe default experience directory is ",(0,r.jsx)(n.code,{children:"experience"})," in the project directory."]}),"\n",(0,r.jsx)(n.admonition,{type:"info",children:(0,r.jsxs)(n.p,{children:["The role name is by default the name of the implementation file (without the extension) of the role unless\nyou have specified the role name by calling ",(0,r.jsx)(n.code,{children:"_set_name"})," in the implementation file."]})}),"\n",(0,r.jsxs)(n.p,{children:["By configuring different experience directories for different roles,\nyou can have different experiences for different roles in a static way.\nUse the ",(0,r.jsx)(n.code,{children:"Planner"})," role as an example, you can have the following project configuration file\nto enable the experience selection for the ",(0,r.jsx)(n.code,{children:"Planner"})," role."]}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-json",children:'{\n "planner.use_experience": true,\n "planner.experience_dir": "planner_exp_dir"\n}\n'})}),"\n",(0,r.jsx)(n.h2,{id:"dynamic-experience-selection",children:"Dynamic experience selection"}),"\n",(0,r.jsx)(n.p,{children:"In some cases, you may want to select the experience dynamically based on the input task.\nIn TaskWeaver, although we retrieve the experience based on the query content,\nit is sometimes difficult to obtain the right experience based solely on the similarity\nbetween the query content and the experience content."}),"\n",(0,r.jsxs)(n.p,{children:["One real example we encountered is that we need to retrieve the experience based on the\ntask type. We have many task types in the project, let's say ",(0,r.jsx)(n.code,{children:"task_type_1"}),", ",(0,r.jsx)(n.code,{children:"task_type_2"}),", and ",(0,r.jsx)(n.code,{children:"task_type_3"}),".\nEvery task type is about following a set of instructions to complete a task.\nAlthough different task types have different instructions, the instructions are similar in structure.\nFor example, they all have similar steps like ",(0,r.jsx)(n.code,{children:"step_1"}),", ",(0,r.jsx)(n.code,{children:"step_2"}),", and ",(0,r.jsx)(n.code,{children:"step_3"}),", only\nthe content of the steps is slightly different for different task types.\nActually, even most of the step titles are the same for different task types."]}),"\n",(0,r.jsx)(n.p,{children:"Each task type has its own experience, and we want to select the experience based on the task type.\nEven though we can mix all the experiences into one experience directory, it is very hard\nto differentiate the experiences based on the user input or the step content.\nIn this project, the user input is simply a task ID, and we need to first figure out the task type based on the task ID,\nand then select the experience based on the task type."}),"\n",(0,r.jsx)(n.p,{children:"To achieve this, we add a layer in the experience selection process. Specifically, we allow\nhaving subdirectories in the experience directory.\nFor example, we can have the following experience directory structure:"}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{children:"planner_experience\n\u251c\u2500\u2500 task_type_1\n\u2502 \u251c\u2500\u2500 exp_1.yaml\n\u2502 \u251c\u2500\u2500 exp_2.yaml\n\u2502 \u2514\u2500\u2500 ...\n"})}),"\n",(0,r.jsxs)(n.p,{children:["When we can identify the task type based on the task ID, we can set the experience subdirectory.\nThis looks straightforward, but how can we set the experience subdirectory in TaskWeaver?\nAs we need to do this in a dynamic way, the only way is to set the experience subdirectory in a ",(0,r.jsx)(n.a,{href:"/docs/concepts/role",children:"role"}),"."]}),"\n",(0,r.jsxs)(n.p,{children:["TaskWeaver recently introduced the concept of shared memory as discussed in ",(0,r.jsx)(n.a,{href:"/docs/memory",children:"Shared Memory"}),".\nShared memory allows a role to share information with other roles, and in this case, we can use shared memory to set the experience subdirectory."]}),"\n",(0,r.jsxs)(n.p,{children:["We can add a new role called ",(0,r.jsx)(n.code,{children:"TaskTypeIdentifier"})," to identify the task type based on the task ID.\nThe key part of the ",(0,r.jsx)(n.code,{children:"reply"})," function in ",(0,r.jsx)(n.code,{children:"TaskTypeIdentifier"})," is shown below:"]}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-python",children:'def reply(self, memory: Memory, **kwargs: ...) -> Post:\n # ...\n # get the task type from the last post message\n task_type = get_task_type(last_post.message)\n # create an attachment \n post_proxy.update_attachment(\n type=AttachmentType.shared_memory_entry,\n message="Add experience sub path",\n extra=SharedMemoryEntry.create(\n type="experience_sub_path",\n scope="conversation", # define the effective scope of the shared memory entry to be the whole conversation\n content="task_type_1",\n ),\n )\n\n return post_proxy.end()\n'})}),"\n",(0,r.jsx)(n.p,{children:"In a role that needs to set the experience subdirectory, we can get the experience subdirectory from the shared memory."}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-python",children:'exp_sub_paths = memory.get_shared_memory_entries(\n entry_type="experience_sub_path",\n)\n\nif exp_sub_paths:\n exp_sub_path = exp_sub_paths[0].content\nelse:\n exp_sub_path = ""\nselected_experiences = self.load_experience(query=query, sub_path=exp_sub_path)\n'})}),"\n",(0,r.jsx)(n.admonition,{type:"tip",children:(0,r.jsx)(n.p,{children:"This is the current experimental feature in TaskWeaver which is subject to change."})}),"\n",(0,r.jsx)(n.h2,{id:"conclusion",children:"Conclusion"}),"\n",(0,r.jsx)(n.p,{children:"In this blog post, we have discussed how to select experiences in TaskWeaver.\nWe have static experience selection by configuring the experience directory for each role.\nTo enable dynamic experience selection, we have introduced the concept of shared memory to set the experience subdirectory."})]})}function l(e={}){const{wrapper:n}={...(0,i.R)(),...e.components};return n?(0,r.jsx)(n,{...e,children:(0,r.jsx)(h,{...e})}):h(e)}},8453:(e,n,t)=>{t.d(n,{R:()=>o,x:()=>c});var r=t(6540);const i={},s=r.createContext(i);function o(e){const n=r.useContext(s);return r.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function c(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:o(e.components),r.createElement(s.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/814f3328.5adbf15e.js b/assets/js/814f3328.d8570f79.js similarity index 62% rename from assets/js/814f3328.5adbf15e.js rename to assets/js/814f3328.d8570f79.js index ead89d94..0f6ffbc5 100644 --- a/assets/js/814f3328.5adbf15e.js +++ b/assets/js/814f3328.d8570f79.js @@ -1 +1 @@ -"use strict";(self.webpackChunkwebsite=self.webpackChunkwebsite||[]).push([[7472],{5513:e=>{e.exports=JSON.parse('{"title":"Recent posts","items":[{"title":"How to evaluate a LLM agent?","permalink":"/TaskWeaver/blog/evaluation","unlisted":false,"date":"2024-09-14T08:52:44.000Z"},{"title":"Experience selection","permalink":"/TaskWeaver/blog/experience","unlisted":false,"date":"2024-09-14T08:52:44.000Z"},{"title":"Run TaskWeaver with Locally Deployed Not-that-Large Language Models","permalink":"/TaskWeaver/blog/local_llm","unlisted":false,"date":"2024-09-14T08:52:44.000Z"},{"title":"Plugins In-Depth","permalink":"/TaskWeaver/blog/plugin","unlisted":false,"date":"2024-09-14T08:52:44.000Z"},{"title":"Roles in TaskWeaver","permalink":"/TaskWeaver/blog/role","unlisted":false,"date":"2024-09-14T08:52:44.000Z"}]}')}}]); \ No newline at end of file +"use strict";(self.webpackChunkwebsite=self.webpackChunkwebsite||[]).push([[7472],{5513:e=>{e.exports=JSON.parse('{"title":"Recent posts","items":[{"title":"How to evaluate a LLM agent?","permalink":"/TaskWeaver/blog/evaluation","unlisted":false,"date":"2024-09-14T09:04:58.000Z"},{"title":"Experience selection","permalink":"/TaskWeaver/blog/experience","unlisted":false,"date":"2024-09-14T09:04:58.000Z"},{"title":"Run TaskWeaver with Locally Deployed Not-that-Large Language Models","permalink":"/TaskWeaver/blog/local_llm","unlisted":false,"date":"2024-09-14T09:04:58.000Z"},{"title":"Plugins In-Depth","permalink":"/TaskWeaver/blog/plugin","unlisted":false,"date":"2024-09-14T09:04:58.000Z"},{"title":"Roles in TaskWeaver","permalink":"/TaskWeaver/blog/role","unlisted":false,"date":"2024-09-14T09:04:58.000Z"}]}')}}]); \ No newline at end of file diff --git a/assets/js/9fc0d84d.a8cd256d.js b/assets/js/9fc0d84d.5bac0319.js similarity index 98% rename from assets/js/9fc0d84d.a8cd256d.js rename to assets/js/9fc0d84d.5bac0319.js index 1a3d80de..dc989f09 100644 --- a/assets/js/9fc0d84d.a8cd256d.js +++ b/assets/js/9fc0d84d.5bac0319.js @@ -1 +1 @@ -"use strict";(self.webpackChunkwebsite=self.webpackChunkwebsite||[]).push([[6011],{9291:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>s,default:()=>d,frontMatter:()=>a,metadata:()=>r,toc:()=>h});var o=n(4848),i=n(8453);const a={},s="Run TaskWeaver with Locally Deployed Not-that-Large Language Models",r={permalink:"/TaskWeaver/blog/local_llm",editUrl:"https://github.com/microsoft/TaskWeaver/tree/main/website/blog/local_llm.md",source:"@site/blog/local_llm.md",title:"Run TaskWeaver with Locally Deployed Not-that-Large Language Models",description:"The feature introduced in this blog post can cause incompatibility issue with the previous version of TaskWeaver",date:"2024-09-14T08:52:44.000Z",tags:[],readingTime:5.55,hasTruncateMarker:!0,authors:[],frontMatter:{},unlisted:!1,prevItem:{title:"Experience selection",permalink:"/TaskWeaver/blog/experience"},nextItem:{title:"Plugins In-Depth",permalink:"/TaskWeaver/blog/plugin"}},l={authorsImageUrls:[]},h=[{value:"Motivation",id:"motivation",level:2}];function c(e){const t={a:"a",admonition:"admonition",code:"code",h2:"h2",p:"p",...(0,i.R)(),...e.components};return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(t.admonition,{type:"info",children:(0,o.jsxs)(t.p,{children:["The feature introduced in this blog post can cause incompatibility issue with the previous version of TaskWeaver\nif you have customized the examples for the planner and code interpreter.\nThe issue is easy to fix by changing the examples to the new schema.\nPlease refer to the ",(0,o.jsx)(t.a,{href:"/blog/local_llm#how-we-implemented-the-constrained-generation-in-taskweaver",children:"How we implemented the constrained generation in TaskWeaver"})," section for more details."]})}),"\n",(0,o.jsx)(t.h2,{id:"motivation",children:"Motivation"}),"\n",(0,o.jsxs)(t.p,{children:["We've seen many raised issues complaining that it is difficult to run TaskWeaver\nwith locally deployed non-that-large language models (LLMs), such as 7b or 13b.\nWhen we examine the issues, we find that the main problem is that the models failed\nto generate responses following our formatting instructions in the prompt. For instance,\nwe see that the planner's response does not contain a ",(0,o.jsx)(t.code,{children:"send_to"})," field, which is required\nto determine the recipient of the message."]}),"\n",(0,o.jsx)(t.p,{children:"In the past, we have tried to address this issue by adding more examples in the prompt,\nwhich however did not work well, especially for these relatively small models. Another idea\nwas to ask the model to re-generate the response if it does not follow the format.\nWe include the format error in the prompt to help the model understand the error and\ncorrect it. However, this approach also did not work well."})]})}function d(e={}){const{wrapper:t}={...(0,i.R)(),...e.components};return t?(0,o.jsx)(t,{...e,children:(0,o.jsx)(c,{...e})}):c(e)}},8453:(e,t,n)=>{n.d(t,{R:()=>s,x:()=>r});var o=n(6540);const i={},a=o.createContext(i);function s(e){const t=o.useContext(a);return o.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function r(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:s(e.components),o.createElement(a.Provider,{value:t},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkwebsite=self.webpackChunkwebsite||[]).push([[6011],{9291:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>s,default:()=>d,frontMatter:()=>a,metadata:()=>r,toc:()=>h});var o=n(4848),i=n(8453);const a={},s="Run TaskWeaver with Locally Deployed Not-that-Large Language Models",r={permalink:"/TaskWeaver/blog/local_llm",editUrl:"https://github.com/microsoft/TaskWeaver/tree/main/website/blog/local_llm.md",source:"@site/blog/local_llm.md",title:"Run TaskWeaver with Locally Deployed Not-that-Large Language Models",description:"The feature introduced in this blog post can cause incompatibility issue with the previous version of TaskWeaver",date:"2024-09-14T09:04:58.000Z",tags:[],readingTime:5.55,hasTruncateMarker:!0,authors:[],frontMatter:{},unlisted:!1,prevItem:{title:"Experience selection",permalink:"/TaskWeaver/blog/experience"},nextItem:{title:"Plugins In-Depth",permalink:"/TaskWeaver/blog/plugin"}},l={authorsImageUrls:[]},h=[{value:"Motivation",id:"motivation",level:2}];function c(e){const t={a:"a",admonition:"admonition",code:"code",h2:"h2",p:"p",...(0,i.R)(),...e.components};return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(t.admonition,{type:"info",children:(0,o.jsxs)(t.p,{children:["The feature introduced in this blog post can cause incompatibility issue with the previous version of TaskWeaver\nif you have customized the examples for the planner and code interpreter.\nThe issue is easy to fix by changing the examples to the new schema.\nPlease refer to the ",(0,o.jsx)(t.a,{href:"/blog/local_llm#how-we-implemented-the-constrained-generation-in-taskweaver",children:"How we implemented the constrained generation in TaskWeaver"})," section for more details."]})}),"\n",(0,o.jsx)(t.h2,{id:"motivation",children:"Motivation"}),"\n",(0,o.jsxs)(t.p,{children:["We've seen many raised issues complaining that it is difficult to run TaskWeaver\nwith locally deployed non-that-large language models (LLMs), such as 7b or 13b.\nWhen we examine the issues, we find that the main problem is that the models failed\nto generate responses following our formatting instructions in the prompt. For instance,\nwe see that the planner's response does not contain a ",(0,o.jsx)(t.code,{children:"send_to"})," field, which is required\nto determine the recipient of the message."]}),"\n",(0,o.jsx)(t.p,{children:"In the past, we have tried to address this issue by adding more examples in the prompt,\nwhich however did not work well, especially for these relatively small models. Another idea\nwas to ask the model to re-generate the response if it does not follow the format.\nWe include the format error in the prompt to help the model understand the error and\ncorrect it. However, this approach also did not work well."})]})}function d(e={}){const{wrapper:t}={...(0,i.R)(),...e.components};return t?(0,o.jsx)(t,{...e,children:(0,o.jsx)(c,{...e})}):c(e)}},8453:(e,t,n)=>{n.d(t,{R:()=>s,x:()=>r});var o=n(6540);const i={},a=o.createContext(i);function s(e){const t=o.useContext(a);return o.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function r(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:s(e.components),o.createElement(a.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/a27d32e8.438b01f2.js b/assets/js/a27d32e8.4d662586.js similarity index 99% rename from assets/js/a27d32e8.438b01f2.js rename to assets/js/a27d32e8.4d662586.js index a1c47457..ffc82523 100644 --- a/assets/js/a27d32e8.438b01f2.js +++ b/assets/js/a27d32e8.4d662586.js @@ -1 +1 @@ -"use strict";(self.webpackChunkwebsite=self.webpackChunkwebsite||[]).push([[9395],{2340:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>h,contentTitle:()=>s,default:()=>d,frontMatter:()=>o,metadata:()=>i,toc:()=>l});var a=n(4848),r=n(8453);const o={},s="Roles in TaskWeaver",i={permalink:"/TaskWeaver/blog/role",editUrl:"https://github.com/microsoft/TaskWeaver/tree/main/website/blog/role.md",source:"@site/blog/role.md",title:"Roles in TaskWeaver",description:'We frame TaskWeaver as a code-first agent framework. The term "code-first" means that the agent is designed to',date:"2024-09-14T08:52:44.000Z",tags:[],readingTime:4.81,hasTruncateMarker:!0,authors:[],frontMatter:{},unlisted:!1,prevItem:{title:"Plugins In-Depth",permalink:"/TaskWeaver/blog/plugin"}},h={authorsImageUrls:[]},l=[];function c(e){const t={a:"a",code:"code",em:"em",mermaid:"mermaid",p:"p",pre:"pre",strong:"strong",...(0,r.R)(),...e.components};return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)(t.p,{children:["We frame TaskWeaver as a ",(0,a.jsx)(t.strong,{children:"code-first"})," agent framework. The term \"code-first\" means that the agent is designed to\nconvert the user's request into one or multiple runnable code snippets and then execute them to generate the response.\nThe philosophy behind this design is to consider programming languages as the de facto language for communication in cyber-physical systems,\njust like the natural language for human communication. Therefore, TaskWeaver translates the user's request in natural language into\nprogramming languages, which can be executed by the system to perform the desired tasks."]}),"\n",(0,a.jsxs)(t.p,{children:["Under this design, when the developer needs to extend the agent's capability, they can write a new plugin.\nA plugin is a piece of code wrapped in a class that can be called as a function by the agent in the generated code snippets.\nLet's consider an example: ",(0,a.jsx)(t.em,{children:"the agent is asked to load a CSV file and perform anomaly detection on the data"}),".\nThe workflow of the agent is in the diagram below. It is very natural to represent data to be processed in variables and this task in code snippets."]}),"\n",(0,a.jsx)(t.mermaid,{value:'flowchart TD\n A[User] --"read a.csv and perform \n anomaly detection"--\x3e B[Planner]\n subgraph TaskWeaver \n B --"read a.csv and call the \n anomaly_detection plugin\n to find anomalies in the data"--\x3e C[Code Generator]\n subgraph Code Interpreter\n C --"df=pd.read_csv(\'a.csv\')\n anomaly_df=anomaly_detection(df)"--\x3e D[Code Executor]\n end\n end\n D --result--\x3e B\n B --response--\x3e A'}),"\n",(0,a.jsxs)(t.p,{children:["However, we do find challenges for other tasks that are not naturally represented in code snippets.\nLet's consider another example: ",(0,a.jsx)(t.em,{children:"the agent is asked to read a manual and follow the instructions to process the data"}),".\nWe first assume there is a plugin that can read the manual and extract the instructions, called ",(0,a.jsx)(t.code,{children:"read_manual"}),".\nThe workflow of the agent is in the diagram below.\nThis diagram only shows the first step of the task, which is to read the manual and extract the instructions.\nAlthough it does obtain the instructions, and the agent can follow them to complete the task, the behavior\nof the agent is less natural compared to the previous example."]}),"\n",(0,a.jsx)(t.mermaid,{value:'flowchart TD\n A[User] --"read the manual and follow \n the instructions to process the data"--\x3e B[Planner]\n subgraph TaskWeaver \n B --"step 1: read the manual by \n calling the read_manual \n plugin to extract the instructions"--\x3e C[Code Generator]\n subgraph Code Interpreter\n C --"instructions=read_manual()\n follow_instructions(instructions)"--\x3e D[Code Executor]\n end\n end\n D --instructions--\x3e B'}),"\n",(0,a.jsxs)(t.p,{children:["Why? First, there is no need to generate code to read the manual and extract the instructions.\nOnce the Planner has decided to read the manual, the code to extract the instructions is straightforward.\nEven though that there might be dynamic parts in the code such as some arguments in the function ",(0,a.jsx)(t.code,{children:"read_manual"}),",\nit could be handled by the Planner. Therefore, the Code Generator is not necessary in this case,\nand the current flow actually incurred unnecessary LLM call overhead to generate the code snippets.\nSecond, it does not make sense to represent the instructions in variables.\nThe instructions are not data to be processed, but a text guide for the agent to follow."]}),"\n",(0,a.jsxs)(t.p,{children:["For these reasons, we introduced the concept of ",(0,a.jsx)(t.a,{href:"/docs/concepts/role",children:"roles"})," in TaskWeaver.\nRoles are actually not new in TaskWeaver as there are already roles like ",(0,a.jsx)(t.code,{children:"Planner"})," and ",(0,a.jsx)(t.code,{children:"CodeInterpreter"}),".\nTo add a new role, the developer can follow the documentation ",(0,a.jsx)(t.a,{href:"/docs/concepts/role",children:"here"}),".\nIn general, a role is a class that inherits the ",(0,a.jsx)(t.code,{children:"Role"})," class and implements the ",(0,a.jsx)(t.code,{children:"reply"})," method.\nThe ",(0,a.jsx)(t.code,{children:"reply"})," method is the function that the agent calls to interact with the role, which has the\nfollowing signature:"]}),"\n",(0,a.jsx)(t.pre,{children:(0,a.jsx)(t.code,{className:"language-python",children:"def reply(self, memory: Memory, **kwargs) -> Post:\n # implementation\n"})}),"\n",(0,a.jsxs)(t.p,{children:["It takes the ",(0,a.jsx)(t.code,{children:"memory"})," object, which is the memory of the agent, and returns a ",(0,a.jsx)(t.a,{href:"/docs/concepts/post",children:"Post"})," object, which is the response of the role to the Planner.\nWith the ",(0,a.jsx)(t.code,{children:"memory"})," object, the role can access the history of the conversation and the context of the conversation.\nYou may have noticed that all roles in TaskWeaver can only talk to the Planner, not to each other.\nIf a role needs to talk to another role, it should go through the Planner.\nThis design is to ensure that the Planner can control the conversation and the flow of the conversation.\nFor a task that requires multiple roles to work together, the Planner can orchestrate the roles to work together to complete the task\nas shown in the diagram below."]}),"\n",(0,a.jsx)(t.mermaid,{value:'flowchart TD\n A[User] --"request"--\x3e B[Planner]\n subgraph TaskWeaver \n B --"step 1"--\x3e C[Role 1]\n C --reply--\x3e B\n B --"step 2"--\x3e D[Role 2]\n D --reply--\x3e B\n B --"step 3"--\x3e E[Role 3]\n E --reply--\x3e B\n end\n B --response--\x3e A'}),"\n",(0,a.jsxs)(t.p,{children:["The communication between the Planner and the roles is done through the ",(0,a.jsx)(t.a,{href:"/docs/concepts/post",children:"Post"})," object.\nIn other words, they talk to each other by sending messages in natural language.\nWhat if a role needs to send some data to another role? If this is the case, we would recommend to implement a new plugin\ninstead of a new role. Otherwise, you may need to store the data in an external storage like a database and let the other role to access it."]}),"\n",(0,a.jsxs)(t.p,{children:["In summary, the concept of roles in TaskWeaver is to provide a way to extend the agent's capability by implementing new roles.\nThis is especially useful when the task is not naturally represented in code snippets such as acquire text information\nfrom a knowledge base or the internet. Implementing a new role is straightforward by inheriting the ",(0,a.jsx)(t.code,{children:"Role"})," class and implementing the ",(0,a.jsx)(t.code,{children:"reply"})," method.\nAll extra roles should be put in the ",(0,a.jsx)(t.code,{children:"TaskWeaver/taskweaver/ext_role"})," folder, which will be automatically loaded by TaskWeaver.\nWe have provided a few sample roles in the ",(0,a.jsx)(t.code,{children:"TaskWeaver/taskweaver/ext_role"})," folder, such as the ",(0,a.jsx)(t.code,{children:"Echo"})," role that echoes the user's message back to the user.\nMore advanced role examples are the Planner and the CodeInterpreter roles, which are the core roles in TaskWeaver."]})]})}function d(e={}){const{wrapper:t}={...(0,r.R)(),...e.components};return t?(0,a.jsx)(t,{...e,children:(0,a.jsx)(c,{...e})}):c(e)}},8453:(e,t,n)=>{n.d(t,{R:()=>s,x:()=>i});var a=n(6540);const r={},o=a.createContext(r);function s(e){const t=a.useContext(o);return a.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function i(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:s(e.components),a.createElement(o.Provider,{value:t},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkwebsite=self.webpackChunkwebsite||[]).push([[9395],{2340:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>h,contentTitle:()=>s,default:()=>d,frontMatter:()=>o,metadata:()=>i,toc:()=>l});var a=n(4848),r=n(8453);const o={},s="Roles in TaskWeaver",i={permalink:"/TaskWeaver/blog/role",editUrl:"https://github.com/microsoft/TaskWeaver/tree/main/website/blog/role.md",source:"@site/blog/role.md",title:"Roles in TaskWeaver",description:'We frame TaskWeaver as a code-first agent framework. The term "code-first" means that the agent is designed to',date:"2024-09-14T09:04:58.000Z",tags:[],readingTime:4.81,hasTruncateMarker:!0,authors:[],frontMatter:{},unlisted:!1,prevItem:{title:"Plugins In-Depth",permalink:"/TaskWeaver/blog/plugin"}},h={authorsImageUrls:[]},l=[];function c(e){const t={a:"a",code:"code",em:"em",mermaid:"mermaid",p:"p",pre:"pre",strong:"strong",...(0,r.R)(),...e.components};return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)(t.p,{children:["We frame TaskWeaver as a ",(0,a.jsx)(t.strong,{children:"code-first"})," agent framework. The term \"code-first\" means that the agent is designed to\nconvert the user's request into one or multiple runnable code snippets and then execute them to generate the response.\nThe philosophy behind this design is to consider programming languages as the de facto language for communication in cyber-physical systems,\njust like the natural language for human communication. Therefore, TaskWeaver translates the user's request in natural language into\nprogramming languages, which can be executed by the system to perform the desired tasks."]}),"\n",(0,a.jsxs)(t.p,{children:["Under this design, when the developer needs to extend the agent's capability, they can write a new plugin.\nA plugin is a piece of code wrapped in a class that can be called as a function by the agent in the generated code snippets.\nLet's consider an example: ",(0,a.jsx)(t.em,{children:"the agent is asked to load a CSV file and perform anomaly detection on the data"}),".\nThe workflow of the agent is in the diagram below. It is very natural to represent data to be processed in variables and this task in code snippets."]}),"\n",(0,a.jsx)(t.mermaid,{value:'flowchart TD\n A[User] --"read a.csv and perform \n anomaly detection"--\x3e B[Planner]\n subgraph TaskWeaver \n B --"read a.csv and call the \n anomaly_detection plugin\n to find anomalies in the data"--\x3e C[Code Generator]\n subgraph Code Interpreter\n C --"df=pd.read_csv(\'a.csv\')\n anomaly_df=anomaly_detection(df)"--\x3e D[Code Executor]\n end\n end\n D --result--\x3e B\n B --response--\x3e A'}),"\n",(0,a.jsxs)(t.p,{children:["However, we do find challenges for other tasks that are not naturally represented in code snippets.\nLet's consider another example: ",(0,a.jsx)(t.em,{children:"the agent is asked to read a manual and follow the instructions to process the data"}),".\nWe first assume there is a plugin that can read the manual and extract the instructions, called ",(0,a.jsx)(t.code,{children:"read_manual"}),".\nThe workflow of the agent is in the diagram below.\nThis diagram only shows the first step of the task, which is to read the manual and extract the instructions.\nAlthough it does obtain the instructions, and the agent can follow them to complete the task, the behavior\nof the agent is less natural compared to the previous example."]}),"\n",(0,a.jsx)(t.mermaid,{value:'flowchart TD\n A[User] --"read the manual and follow \n the instructions to process the data"--\x3e B[Planner]\n subgraph TaskWeaver \n B --"step 1: read the manual by \n calling the read_manual \n plugin to extract the instructions"--\x3e C[Code Generator]\n subgraph Code Interpreter\n C --"instructions=read_manual()\n follow_instructions(instructions)"--\x3e D[Code Executor]\n end\n end\n D --instructions--\x3e B'}),"\n",(0,a.jsxs)(t.p,{children:["Why? First, there is no need to generate code to read the manual and extract the instructions.\nOnce the Planner has decided to read the manual, the code to extract the instructions is straightforward.\nEven though that there might be dynamic parts in the code such as some arguments in the function ",(0,a.jsx)(t.code,{children:"read_manual"}),",\nit could be handled by the Planner. Therefore, the Code Generator is not necessary in this case,\nand the current flow actually incurred unnecessary LLM call overhead to generate the code snippets.\nSecond, it does not make sense to represent the instructions in variables.\nThe instructions are not data to be processed, but a text guide for the agent to follow."]}),"\n",(0,a.jsxs)(t.p,{children:["For these reasons, we introduced the concept of ",(0,a.jsx)(t.a,{href:"/docs/concepts/role",children:"roles"})," in TaskWeaver.\nRoles are actually not new in TaskWeaver as there are already roles like ",(0,a.jsx)(t.code,{children:"Planner"})," and ",(0,a.jsx)(t.code,{children:"CodeInterpreter"}),".\nTo add a new role, the developer can follow the documentation ",(0,a.jsx)(t.a,{href:"/docs/concepts/role",children:"here"}),".\nIn general, a role is a class that inherits the ",(0,a.jsx)(t.code,{children:"Role"})," class and implements the ",(0,a.jsx)(t.code,{children:"reply"})," method.\nThe ",(0,a.jsx)(t.code,{children:"reply"})," method is the function that the agent calls to interact with the role, which has the\nfollowing signature:"]}),"\n",(0,a.jsx)(t.pre,{children:(0,a.jsx)(t.code,{className:"language-python",children:"def reply(self, memory: Memory, **kwargs) -> Post:\n # implementation\n"})}),"\n",(0,a.jsxs)(t.p,{children:["It takes the ",(0,a.jsx)(t.code,{children:"memory"})," object, which is the memory of the agent, and returns a ",(0,a.jsx)(t.a,{href:"/docs/concepts/post",children:"Post"})," object, which is the response of the role to the Planner.\nWith the ",(0,a.jsx)(t.code,{children:"memory"})," object, the role can access the history of the conversation and the context of the conversation.\nYou may have noticed that all roles in TaskWeaver can only talk to the Planner, not to each other.\nIf a role needs to talk to another role, it should go through the Planner.\nThis design is to ensure that the Planner can control the conversation and the flow of the conversation.\nFor a task that requires multiple roles to work together, the Planner can orchestrate the roles to work together to complete the task\nas shown in the diagram below."]}),"\n",(0,a.jsx)(t.mermaid,{value:'flowchart TD\n A[User] --"request"--\x3e B[Planner]\n subgraph TaskWeaver \n B --"step 1"--\x3e C[Role 1]\n C --reply--\x3e B\n B --"step 2"--\x3e D[Role 2]\n D --reply--\x3e B\n B --"step 3"--\x3e E[Role 3]\n E --reply--\x3e B\n end\n B --response--\x3e A'}),"\n",(0,a.jsxs)(t.p,{children:["The communication between the Planner and the roles is done through the ",(0,a.jsx)(t.a,{href:"/docs/concepts/post",children:"Post"})," object.\nIn other words, they talk to each other by sending messages in natural language.\nWhat if a role needs to send some data to another role? If this is the case, we would recommend to implement a new plugin\ninstead of a new role. Otherwise, you may need to store the data in an external storage like a database and let the other role to access it."]}),"\n",(0,a.jsxs)(t.p,{children:["In summary, the concept of roles in TaskWeaver is to provide a way to extend the agent's capability by implementing new roles.\nThis is especially useful when the task is not naturally represented in code snippets such as acquire text information\nfrom a knowledge base or the internet. Implementing a new role is straightforward by inheriting the ",(0,a.jsx)(t.code,{children:"Role"})," class and implementing the ",(0,a.jsx)(t.code,{children:"reply"})," method.\nAll extra roles should be put in the ",(0,a.jsx)(t.code,{children:"TaskWeaver/taskweaver/ext_role"})," folder, which will be automatically loaded by TaskWeaver.\nWe have provided a few sample roles in the ",(0,a.jsx)(t.code,{children:"TaskWeaver/taskweaver/ext_role"})," folder, such as the ",(0,a.jsx)(t.code,{children:"Echo"})," role that echoes the user's message back to the user.\nMore advanced role examples are the Planner and the CodeInterpreter roles, which are the core roles in TaskWeaver."]})]})}function d(e={}){const{wrapper:t}={...(0,r.R)(),...e.components};return t?(0,a.jsx)(t,{...e,children:(0,a.jsx)(c,{...e})}):c(e)}},8453:(e,t,n)=>{n.d(t,{R:()=>s,x:()=>i});var a=n(6540);const r={},o=a.createContext(r);function s(e){const t=a.useContext(o);return a.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function i(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:s(e.components),a.createElement(o.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/c39bf4d4.f617c628.js b/assets/js/c39bf4d4.445bf513.js similarity index 97% rename from assets/js/c39bf4d4.f617c628.js rename to assets/js/c39bf4d4.445bf513.js index 7363fc6e..c9bf3d22 100644 --- a/assets/js/c39bf4d4.f617c628.js +++ b/assets/js/c39bf4d4.445bf513.js @@ -1 +1 @@ -"use strict";(self.webpackChunkwebsite=self.webpackChunkwebsite||[]).push([[7986],{5290:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>l,contentTitle:()=>s,default:()=>c,frontMatter:()=>i,metadata:()=>r,toc:()=>u});var n=a(4848),o=a(8453);const i={},s="How to evaluate a LLM agent?",r={permalink:"/TaskWeaver/blog/evaluation",editUrl:"https://github.com/microsoft/TaskWeaver/tree/main/website/blog/evaluation.md",source:"@site/blog/evaluation.md",title:"How to evaluate a LLM agent?",description:"The challenges",date:"2024-09-14T08:52:44.000Z",tags:[],readingTime:6.32,hasTruncateMarker:!0,authors:[],frontMatter:{},unlisted:!1,nextItem:{title:"Experience selection",permalink:"/TaskWeaver/blog/experience"}},l={authorsImageUrls:[]},u=[{value:"The challenges",id:"the-challenges",level:2}];function h(e){const t={h2:"h2",p:"p",...(0,o.R)(),...e.components};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(t.h2,{id:"the-challenges",children:"The challenges"}),"\n",(0,n.jsx)(t.p,{children:"It is nontrivial to evaluate the performance of a LLM agent.\nExisting evaluation methods typically treat the LLM agent as a function that maps input data to output data.\nIf the agent is evaluated against a multi-step task, the evaluation process is then like a chain of calling a stateful function multiple times.\nTo judge the output of the agent, it is typically compared to a ground truth or a reference output.\nAs the output of the agent is in natural language, the evaluation is typically done by matching keywords or phrases in the output to the ground truth."}),"\n",(0,n.jsx)(t.p,{children:"This evaluation method has its limitations due to its rigid nature.\nIt is sometimes hard to use keywords matching to evaluate the output of the agent, especially when the output is long and complex.\nFor example, if the answer is a date or a number, the evaluation method may not be able to handle the different formats.\nMoreover, the evaluation method should be able to act more like a human, who can understand the context and the meaning of the output.\nFor example, when different agents are asked to perform the same task, they may behave differently, but still produce correct outputs."})]})}function c(e={}){const{wrapper:t}={...(0,o.R)(),...e.components};return t?(0,n.jsx)(t,{...e,children:(0,n.jsx)(h,{...e})}):h(e)}},8453:(e,t,a)=>{a.d(t,{R:()=>s,x:()=>r});var n=a(6540);const o={},i=n.createContext(o);function s(e){const t=n.useContext(i);return n.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function r(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(o):e.components||o:s(e.components),n.createElement(i.Provider,{value:t},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkwebsite=self.webpackChunkwebsite||[]).push([[7986],{5290:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>l,contentTitle:()=>s,default:()=>c,frontMatter:()=>i,metadata:()=>r,toc:()=>u});var n=a(4848),o=a(8453);const i={},s="How to evaluate a LLM agent?",r={permalink:"/TaskWeaver/blog/evaluation",editUrl:"https://github.com/microsoft/TaskWeaver/tree/main/website/blog/evaluation.md",source:"@site/blog/evaluation.md",title:"How to evaluate a LLM agent?",description:"The challenges",date:"2024-09-14T09:04:58.000Z",tags:[],readingTime:6.32,hasTruncateMarker:!0,authors:[],frontMatter:{},unlisted:!1,nextItem:{title:"Experience selection",permalink:"/TaskWeaver/blog/experience"}},l={authorsImageUrls:[]},u=[{value:"The challenges",id:"the-challenges",level:2}];function h(e){const t={h2:"h2",p:"p",...(0,o.R)(),...e.components};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(t.h2,{id:"the-challenges",children:"The challenges"}),"\n",(0,n.jsx)(t.p,{children:"It is nontrivial to evaluate the performance of a LLM agent.\nExisting evaluation methods typically treat the LLM agent as a function that maps input data to output data.\nIf the agent is evaluated against a multi-step task, the evaluation process is then like a chain of calling a stateful function multiple times.\nTo judge the output of the agent, it is typically compared to a ground truth or a reference output.\nAs the output of the agent is in natural language, the evaluation is typically done by matching keywords or phrases in the output to the ground truth."}),"\n",(0,n.jsx)(t.p,{children:"This evaluation method has its limitations due to its rigid nature.\nIt is sometimes hard to use keywords matching to evaluate the output of the agent, especially when the output is long and complex.\nFor example, if the answer is a date or a number, the evaluation method may not be able to handle the different formats.\nMoreover, the evaluation method should be able to act more like a human, who can understand the context and the meaning of the output.\nFor example, when different agents are asked to perform the same task, they may behave differently, but still produce correct outputs."})]})}function c(e={}){const{wrapper:t}={...(0,o.R)(),...e.components};return t?(0,n.jsx)(t,{...e,children:(0,n.jsx)(h,{...e})}):h(e)}},8453:(e,t,a)=>{a.d(t,{R:()=>s,x:()=>r});var n=a(6540);const o={},i=n.createContext(o);function s(e){const t=n.useContext(i);return n.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function r(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(o):e.components||o:s(e.components),n.createElement(i.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/fa48389a.719f6db1.js b/assets/js/fa48389a.c048c46d.js similarity index 97% rename from assets/js/fa48389a.719f6db1.js rename to assets/js/fa48389a.c048c46d.js index d7656040..3e08bdf4 100644 --- a/assets/js/fa48389a.719f6db1.js +++ b/assets/js/fa48389a.c048c46d.js @@ -1 +1 @@ -"use strict";(self.webpackChunkwebsite=self.webpackChunkwebsite||[]).push([[6563],{2304:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>d,contentTitle:()=>o,default:()=>m,frontMatter:()=>r,metadata:()=>i,toc:()=>c});var a=t(4848),s=t(8453);const r={},o="Roles in TaskWeaver",i={permalink:"/TaskWeaver/blog/role",editUrl:"https://github.com/microsoft/TaskWeaver/tree/main/website/blog/role.md",source:"@site/blog/role.md",title:"Roles in TaskWeaver",description:'We frame TaskWeaver as a code-first agent framework. The term "code-first" means that the agent is designed to',date:"2024-09-14T08:52:44.000Z",tags:[],readingTime:4.81,hasTruncateMarker:!0,authors:[],frontMatter:{},unlisted:!1,prevItem:{title:"Plugins In-Depth",permalink:"/TaskWeaver/blog/plugin"}},d={authorsImageUrls:[]},c=[];function l(e){const n={em:"em",mermaid:"mermaid",p:"p",strong:"strong",...(0,s.R)(),...e.components};return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)(n.p,{children:["We frame TaskWeaver as a ",(0,a.jsx)(n.strong,{children:"code-first"})," agent framework. The term \"code-first\" means that the agent is designed to\nconvert the user's request into one or multiple runnable code snippets and then execute them to generate the response.\nThe philosophy behind this design is to consider programming languages as the de facto language for communication in cyber-physical systems,\njust like the natural language for human communication. Therefore, TaskWeaver translates the user's request in natural language into\nprogramming languages, which can be executed by the system to perform the desired tasks."]}),"\n",(0,a.jsxs)(n.p,{children:["Under this design, when the developer needs to extend the agent's capability, they can write a new plugin.\nA plugin is a piece of code wrapped in a class that can be called as a function by the agent in the generated code snippets.\nLet's consider an example: ",(0,a.jsx)(n.em,{children:"the agent is asked to load a CSV file and perform anomaly detection on the data"}),".\nThe workflow of the agent is in the diagram below. It is very natural to represent data to be processed in variables and this task in code snippets."]}),"\n",(0,a.jsx)(n.mermaid,{value:'flowchart TD\n A[User] --"read a.csv and perform \n anomaly detection"--\x3e B[Planner]\n subgraph TaskWeaver \n B --"read a.csv and call the \n anomaly_detection plugin\n to find anomalies in the data"--\x3e C[Code Generator]\n subgraph Code Interpreter\n C --"df=pd.read_csv(\'a.csv\')\n anomaly_df=anomaly_detection(df)"--\x3e D[Code Executor]\n end\n end\n D --result--\x3e B\n B --response--\x3e A'})]})}function m(e={}){const{wrapper:n}={...(0,s.R)(),...e.components};return n?(0,a.jsx)(n,{...e,children:(0,a.jsx)(l,{...e})}):l(e)}},8453:(e,n,t)=>{t.d(n,{R:()=>o,x:()=>i});var a=t(6540);const s={},r=a.createContext(s);function o(e){const n=a.useContext(r);return a.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function i(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:o(e.components),a.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkwebsite=self.webpackChunkwebsite||[]).push([[6563],{2304:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>d,contentTitle:()=>o,default:()=>m,frontMatter:()=>r,metadata:()=>i,toc:()=>c});var a=t(4848),s=t(8453);const r={},o="Roles in TaskWeaver",i={permalink:"/TaskWeaver/blog/role",editUrl:"https://github.com/microsoft/TaskWeaver/tree/main/website/blog/role.md",source:"@site/blog/role.md",title:"Roles in TaskWeaver",description:'We frame TaskWeaver as a code-first agent framework. The term "code-first" means that the agent is designed to',date:"2024-09-14T09:04:58.000Z",tags:[],readingTime:4.81,hasTruncateMarker:!0,authors:[],frontMatter:{},unlisted:!1,prevItem:{title:"Plugins In-Depth",permalink:"/TaskWeaver/blog/plugin"}},d={authorsImageUrls:[]},c=[];function l(e){const n={em:"em",mermaid:"mermaid",p:"p",strong:"strong",...(0,s.R)(),...e.components};return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)(n.p,{children:["We frame TaskWeaver as a ",(0,a.jsx)(n.strong,{children:"code-first"})," agent framework. The term \"code-first\" means that the agent is designed to\nconvert the user's request into one or multiple runnable code snippets and then execute them to generate the response.\nThe philosophy behind this design is to consider programming languages as the de facto language for communication in cyber-physical systems,\njust like the natural language for human communication. Therefore, TaskWeaver translates the user's request in natural language into\nprogramming languages, which can be executed by the system to perform the desired tasks."]}),"\n",(0,a.jsxs)(n.p,{children:["Under this design, when the developer needs to extend the agent's capability, they can write a new plugin.\nA plugin is a piece of code wrapped in a class that can be called as a function by the agent in the generated code snippets.\nLet's consider an example: ",(0,a.jsx)(n.em,{children:"the agent is asked to load a CSV file and perform anomaly detection on the data"}),".\nThe workflow of the agent is in the diagram below. It is very natural to represent data to be processed in variables and this task in code snippets."]}),"\n",(0,a.jsx)(n.mermaid,{value:'flowchart TD\n A[User] --"read a.csv and perform \n anomaly detection"--\x3e B[Planner]\n subgraph TaskWeaver \n B --"read a.csv and call the \n anomaly_detection plugin\n to find anomalies in the data"--\x3e C[Code Generator]\n subgraph Code Interpreter\n C --"df=pd.read_csv(\'a.csv\')\n anomaly_df=anomaly_detection(df)"--\x3e D[Code Executor]\n end\n end\n D --result--\x3e B\n B --response--\x3e A'})]})}function m(e={}){const{wrapper:n}={...(0,s.R)(),...e.components};return n?(0,a.jsx)(n,{...e,children:(0,a.jsx)(l,{...e})}):l(e)}},8453:(e,n,t)=>{t.d(n,{R:()=>o,x:()=>i});var a=t(6540);const s={},r=a.createContext(s);function o(e){const n=a.useContext(r);return a.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function i(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:o(e.components),a.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/runtime~main.658ec7c4.js b/assets/js/runtime~main.1159b0ff.js similarity index 70% rename from assets/js/runtime~main.658ec7c4.js rename to assets/js/runtime~main.1159b0ff.js index 85272dd5..c0548d52 100644 --- a/assets/js/runtime~main.658ec7c4.js +++ b/assets/js/runtime~main.1159b0ff.js @@ -1 +1 @@ -(()=>{"use strict";var e,a,c,f,d,b={},t={};function r(e){var a=t[e];if(void 0!==a)return a.exports;var c=t[e]={exports:{}};return b[e].call(c.exports,c,c.exports,r),c.exports}r.m=b,e=[],r.O=(a,c,f,d)=>{if(!c){var b=1/0;for(i=0;i=d)&&Object.keys(r.O).every((e=>r.O[e](c[o])))?c.splice(o--,1):(t=!1,d0&&e[i-1][2]>d;i--)e[i]=e[i-1];e[i]=[c,f,d]},r.n=e=>{var a=e&&e.__esModule?()=>e.default:()=>e;return r.d(a,{a:a}),a},c=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,r.t=function(e,f){if(1&f&&(e=this(e)),8&f)return e;if("object"==typeof e&&e){if(4&f&&e.__esModule)return e;if(16&f&&"function"==typeof e.then)return e}var d=Object.create(null);r.r(d);var b={};a=a||[null,c({}),c([]),c(c)];for(var t=2&f&&e;"object"==typeof t&&!~a.indexOf(t);t=c(t))Object.getOwnPropertyNames(t).forEach((a=>b[a]=()=>e[a]));return b.default=()=>e,r.d(d,b),d},r.d=(e,a)=>{for(var c in a)r.o(a,c)&&!r.o(e,c)&&Object.defineProperty(e,c,{enumerable:!0,get:a[c]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce(((a,c)=>(r.f[c](e,a),a)),[])),r.u=e=>"assets/js/"+({229:"2726c345",303:"72cb6e7f",421:"3e02b86d",492:"dfbc6587",625:"2114d3cd",626:"c1128000",1011:"e269b8a3",1218:"13e97266",1235:"a7456010",1275:"0af277c2",1500:"0c5435fe",1547:"b21ad4a1",1592:"f04cdb7e",1903:"acecf23e",1906:"8257ffa4",2018:"834e34cc",2106:"e8e13c91",2138:"1a4e3797",2148:"ff4089d2",2317:"1bff86ef",2634:"c4f5d8e4",2711:"9e4087bc",2733:"cf09775e",2883:"722a149d",2944:"7555bb16",3249:"ccc49370",3446:"a55bc7d4",3450:"45fd52fa",3463:"b6f402ca",3498:"be4af720",3555:"93a501ed",3822:"8070e160",3876:"30649cb6",3899:"d3234990",3980:"e5d94c03",4093:"c104c5b8",4117:"88f45e24",4134:"393be207",4431:"fa377e30",4508:"2644c4f4",4607:"7fc9262a",4921:"138e0e15",4950:"1cc2dcef",5359:"5a1935a3",5742:"aba21aa0",6006:"a417478a",6011:"9fc0d84d",6015:"a9f7b4d5",6061:"1f391b9e",6302:"9bc17760",6349:"6aa7fe68",6366:"044bc5cf",6489:"1531ba9d",6563:"fa48389a",6618:"b3e09ff4",6969:"14eb3368",7098:"a7bd4aaa",7360:"47284eb1",7472:"814f3328",7519:"e76a15a6",7580:"360ca471",7643:"a6aa9e1f",7986:"c39bf4d4",8050:"dfcda4d1",8401:"17896441",8413:"1db64337",8473:"30613cee",8862:"223de7e7",8874:"85be924b",8932:"55efe1e1",8987:"fc8fddfe",9048:"a94703ab",9213:"03e8cedb",9315:"ad895e75",9395:"a27d32e8",9502:"a4259125",9567:"d5184954",9600:"f0ac6a4f",9647:"5e95c892",9764:"ae863774",9858:"36994c47",9964:"a0385f53"}[e]||e)+"."+{229:"c7d75e6b",303:"04d07a26",421:"a21978c5",489:"1cfb338c",492:"ccc48871",625:"24d7bc60",626:"7f31cba3",778:"558dbeba",982:"2a42f9f2",1011:"0b430d28",1176:"6680fc02",1218:"83e65c10",1235:"7b4b0a20",1275:"70181290",1500:"68ce8b14",1547:"d3f47795",1592:"7cb52ae6",1609:"4d63bfb8",1635:"bf3b8b08",1903:"2a867fb7",1906:"3cc4a25a",2018:"8e8303ba",2102:"82724bd3",2106:"4f0a4293",2138:"2feded00",2148:"2231c855",2237:"66cc3d1a",2317:"b04d1360",2398:"03970528",2634:"7092bc3f",2711:"81b53622",2733:"f67216b4",2883:"b81fe1d3",2944:"33962dce",3249:"d869d55b",3253:"56501f15",3446:"574e3d66",3450:"27b1bf93",3463:"88bed149",3498:"1dc299b3",3555:"b67928d5",3822:"1b36e8d5",3840:"3a5d1bac",3876:"34241061",3899:"3813c2f6",3980:"6d5d52f5",4093:"ac2f4931",4117:"8b60ec97",4134:"958c44b0",4431:"bd371d4e",4508:"01de55a5",4607:"6b112af4",4687:"cd885d1f",4921:"15c94c1b",4950:"bb413d92",5118:"186b9921",5359:"7499458a",5570:"453c83fe",5741:"12a31c5f",5742:"9ac6642b",6006:"56092680",6011:"a8cd256d",6015:"91c59e55",6061:"0ae870d3",6163:"000becb2",6302:"1016ae5d",6319:"853b1eda",6349:"b1796dc9",6351:"64c81aba",6366:"6036fd89",6489:"9bfdc49f",6563:"719f6db1",6618:"3df7d3fd",6969:"f7009cf7",7008:"c11a533e",7098:"67400593",7102:"66574c2a",7203:"8971dbd9",7360:"834426e3",7472:"5adbf15e",7519:"68c9daa1",7580:"76e48a56",7643:"a400f8e9",7812:"f9932538",7813:"d0b2439e",7830:"2a19adbe",7986:"f617c628",7990:"f1909a33",8017:"270158d0",8050:"36a3a63a",8401:"9910e709",8413:"96ab171a",8473:"fb082d59",8705:"96371d0f",8793:"b14dae4f",8862:"2522ec11",8874:"56938285",8932:"6cae1c6b",8987:"a769776b",9023:"5fff343a",9048:"d46630af",9119:"135f4814",9213:"7e3eee11",9315:"c5021068",9395:"438b01f2",9502:"fc9a146c",9567:"d01b420f",9600:"33afd5f5",9646:"cae23d9a",9647:"457a457d",9764:"b8b0f625",9806:"2de2542d",9858:"8f17e7f5",9964:"20625009",9966:"32dbdbf2"}[e]+".js",r.miniCssF=e=>{},r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,a)=>Object.prototype.hasOwnProperty.call(e,a),f={},d="website:",r.l=(e,a,c,b)=>{if(f[e])f[e].push(a);else{var t,o;if(void 0!==c)for(var n=document.getElementsByTagName("script"),i=0;i{t.onerror=t.onload=null,clearTimeout(s);var d=f[e];if(delete f[e],t.parentNode&&t.parentNode.removeChild(t),d&&d.forEach((e=>e(c))),a)return a(c)},s=setTimeout(l.bind(null,void 0,{type:"timeout",target:t}),12e4);t.onerror=l.bind(null,t.onerror),t.onload=l.bind(null,t.onload),o&&document.head.appendChild(t)}},r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.p="/TaskWeaver/",r.gca=function(e){return e={17896441:"8401","2726c345":"229","72cb6e7f":"303","3e02b86d":"421",dfbc6587:"492","2114d3cd":"625",c1128000:"626",e269b8a3:"1011","13e97266":"1218",a7456010:"1235","0af277c2":"1275","0c5435fe":"1500",b21ad4a1:"1547",f04cdb7e:"1592",acecf23e:"1903","8257ffa4":"1906","834e34cc":"2018",e8e13c91:"2106","1a4e3797":"2138",ff4089d2:"2148","1bff86ef":"2317",c4f5d8e4:"2634","9e4087bc":"2711",cf09775e:"2733","722a149d":"2883","7555bb16":"2944",ccc49370:"3249",a55bc7d4:"3446","45fd52fa":"3450",b6f402ca:"3463",be4af720:"3498","93a501ed":"3555","8070e160":"3822","30649cb6":"3876",d3234990:"3899",e5d94c03:"3980",c104c5b8:"4093","88f45e24":"4117","393be207":"4134",fa377e30:"4431","2644c4f4":"4508","7fc9262a":"4607","138e0e15":"4921","1cc2dcef":"4950","5a1935a3":"5359",aba21aa0:"5742",a417478a:"6006","9fc0d84d":"6011",a9f7b4d5:"6015","1f391b9e":"6061","9bc17760":"6302","6aa7fe68":"6349","044bc5cf":"6366","1531ba9d":"6489",fa48389a:"6563",b3e09ff4:"6618","14eb3368":"6969",a7bd4aaa:"7098","47284eb1":"7360","814f3328":"7472",e76a15a6:"7519","360ca471":"7580",a6aa9e1f:"7643",c39bf4d4:"7986",dfcda4d1:"8050","1db64337":"8413","30613cee":"8473","223de7e7":"8862","85be924b":"8874","55efe1e1":"8932",fc8fddfe:"8987",a94703ab:"9048","03e8cedb":"9213",ad895e75:"9315",a27d32e8:"9395",a4259125:"9502",d5184954:"9567",f0ac6a4f:"9600","5e95c892":"9647",ae863774:"9764","36994c47":"9858",a0385f53:"9964"}[e]||e,r.p+r.u(e)},(()=>{var e={5354:0,1869:0};r.f.j=(a,c)=>{var f=r.o(e,a)?e[a]:void 0;if(0!==f)if(f)c.push(f[2]);else if(/^(1869|5354)$/.test(a))e[a]=0;else{var d=new Promise(((c,d)=>f=e[a]=[c,d]));c.push(f[2]=d);var b=r.p+r.u(a),t=new Error;r.l(b,(c=>{if(r.o(e,a)&&(0!==(f=e[a])&&(e[a]=void 0),f)){var d=c&&("load"===c.type?"missing":c.type),b=c&&c.target&&c.target.src;t.message="Loading chunk "+a+" failed.\n("+d+": "+b+")",t.name="ChunkLoadError",t.type=d,t.request=b,f[1](t)}}),"chunk-"+a,a)}},r.O.j=a=>0===e[a];var a=(a,c)=>{var f,d,b=c[0],t=c[1],o=c[2],n=0;if(b.some((a=>0!==e[a]))){for(f in t)r.o(t,f)&&(r.m[f]=t[f]);if(o)var i=o(r)}for(a&&a(c);n{"use strict";var e,a,c,f,b,d={},t={};function r(e){var a=t[e];if(void 0!==a)return a.exports;var c=t[e]={exports:{}};return d[e].call(c.exports,c,c.exports,r),c.exports}r.m=d,e=[],r.O=(a,c,f,b)=>{if(!c){var d=1/0;for(i=0;i=b)&&Object.keys(r.O).every((e=>r.O[e](c[o])))?c.splice(o--,1):(t=!1,b0&&e[i-1][2]>b;i--)e[i]=e[i-1];e[i]=[c,f,b]},r.n=e=>{var a=e&&e.__esModule?()=>e.default:()=>e;return r.d(a,{a:a}),a},c=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,r.t=function(e,f){if(1&f&&(e=this(e)),8&f)return e;if("object"==typeof e&&e){if(4&f&&e.__esModule)return e;if(16&f&&"function"==typeof e.then)return e}var b=Object.create(null);r.r(b);var d={};a=a||[null,c({}),c([]),c(c)];for(var t=2&f&&e;"object"==typeof t&&!~a.indexOf(t);t=c(t))Object.getOwnPropertyNames(t).forEach((a=>d[a]=()=>e[a]));return d.default=()=>e,r.d(b,d),b},r.d=(e,a)=>{for(var c in a)r.o(a,c)&&!r.o(e,c)&&Object.defineProperty(e,c,{enumerable:!0,get:a[c]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce(((a,c)=>(r.f[c](e,a),a)),[])),r.u=e=>"assets/js/"+({229:"2726c345",303:"72cb6e7f",421:"3e02b86d",492:"dfbc6587",625:"2114d3cd",626:"c1128000",1011:"e269b8a3",1218:"13e97266",1235:"a7456010",1275:"0af277c2",1500:"0c5435fe",1547:"b21ad4a1",1592:"f04cdb7e",1903:"acecf23e",1906:"8257ffa4",2018:"834e34cc",2106:"e8e13c91",2138:"1a4e3797",2148:"ff4089d2",2317:"1bff86ef",2634:"c4f5d8e4",2711:"9e4087bc",2733:"cf09775e",2883:"722a149d",2944:"7555bb16",3249:"ccc49370",3446:"a55bc7d4",3450:"45fd52fa",3463:"b6f402ca",3498:"be4af720",3555:"93a501ed",3822:"8070e160",3876:"30649cb6",3899:"d3234990",3980:"e5d94c03",4093:"c104c5b8",4117:"88f45e24",4134:"393be207",4431:"fa377e30",4508:"2644c4f4",4607:"7fc9262a",4921:"138e0e15",4950:"1cc2dcef",5359:"5a1935a3",5742:"aba21aa0",6006:"a417478a",6011:"9fc0d84d",6015:"a9f7b4d5",6061:"1f391b9e",6302:"9bc17760",6349:"6aa7fe68",6366:"044bc5cf",6489:"1531ba9d",6563:"fa48389a",6618:"b3e09ff4",6969:"14eb3368",7098:"a7bd4aaa",7360:"47284eb1",7472:"814f3328",7519:"e76a15a6",7580:"360ca471",7643:"a6aa9e1f",7986:"c39bf4d4",8050:"dfcda4d1",8401:"17896441",8413:"1db64337",8473:"30613cee",8862:"223de7e7",8874:"85be924b",8932:"55efe1e1",8987:"fc8fddfe",9048:"a94703ab",9213:"03e8cedb",9315:"ad895e75",9395:"a27d32e8",9502:"a4259125",9567:"d5184954",9600:"f0ac6a4f",9647:"5e95c892",9764:"ae863774",9858:"36994c47",9964:"a0385f53"}[e]||e)+"."+{229:"c7d75e6b",303:"04d07a26",421:"62b330dd",489:"1cfb338c",492:"ccc48871",625:"24d7bc60",626:"7f31cba3",778:"558dbeba",982:"2a42f9f2",1011:"0b430d28",1176:"6680fc02",1218:"83e65c10",1235:"7b4b0a20",1275:"60bbc227",1500:"68ce8b14",1547:"d3f47795",1592:"7cb52ae6",1609:"4d63bfb8",1635:"bf3b8b08",1903:"2a867fb7",1906:"3cc4a25a",2018:"8e8303ba",2102:"82724bd3",2106:"4f0a4293",2138:"2feded00",2148:"2231c855",2237:"66cc3d1a",2317:"0858d421",2398:"03970528",2634:"7092bc3f",2711:"81b53622",2733:"f67216b4",2883:"76095001",2944:"33962dce",3249:"d869d55b",3253:"56501f15",3446:"574e3d66",3450:"27b1bf93",3463:"88bed149",3498:"1dc299b3",3555:"b67928d5",3822:"1b36e8d5",3840:"3a5d1bac",3876:"34241061",3899:"3813c2f6",3980:"6d5d52f5",4093:"ac2f4931",4117:"8b60ec97",4134:"958c44b0",4431:"bd371d4e",4508:"01de55a5",4607:"6b112af4",4687:"cd885d1f",4921:"15c94c1b",4950:"0c4259f4",5118:"186b9921",5359:"7499458a",5570:"453c83fe",5741:"12a31c5f",5742:"9ac6642b",6006:"56092680",6011:"5bac0319",6015:"91c59e55",6061:"0ae870d3",6163:"000becb2",6302:"1016ae5d",6319:"853b1eda",6349:"b1796dc9",6351:"64c81aba",6366:"6036fd89",6489:"96211247",6563:"c048c46d",6618:"3df7d3fd",6969:"f7009cf7",7008:"c11a533e",7098:"67400593",7102:"66574c2a",7203:"8971dbd9",7360:"834426e3",7472:"d8570f79",7519:"68c9daa1",7580:"76e48a56",7643:"a400f8e9",7812:"f9932538",7813:"d0b2439e",7830:"2a19adbe",7986:"445bf513",7990:"f1909a33",8017:"270158d0",8050:"36a3a63a",8401:"9910e709",8413:"96ab171a",8473:"fb082d59",8705:"96371d0f",8793:"b14dae4f",8862:"7150298a",8874:"56938285",8932:"6cae1c6b",8987:"a769776b",9023:"5fff343a",9048:"d46630af",9119:"135f4814",9213:"7e3eee11",9315:"c5021068",9395:"4d662586",9502:"fc9a146c",9567:"d01b420f",9600:"33afd5f5",9646:"cae23d9a",9647:"457a457d",9764:"b8b0f625",9806:"2de2542d",9858:"8f17e7f5",9964:"20625009",9966:"32dbdbf2"}[e]+".js",r.miniCssF=e=>{},r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,a)=>Object.prototype.hasOwnProperty.call(e,a),f={},b="website:",r.l=(e,a,c,d)=>{if(f[e])f[e].push(a);else{var t,o;if(void 0!==c)for(var n=document.getElementsByTagName("script"),i=0;i{t.onerror=t.onload=null,clearTimeout(s);var b=f[e];if(delete f[e],t.parentNode&&t.parentNode.removeChild(t),b&&b.forEach((e=>e(c))),a)return a(c)},s=setTimeout(l.bind(null,void 0,{type:"timeout",target:t}),12e4);t.onerror=l.bind(null,t.onerror),t.onload=l.bind(null,t.onload),o&&document.head.appendChild(t)}},r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.p="/TaskWeaver/",r.gca=function(e){return e={17896441:"8401","2726c345":"229","72cb6e7f":"303","3e02b86d":"421",dfbc6587:"492","2114d3cd":"625",c1128000:"626",e269b8a3:"1011","13e97266":"1218",a7456010:"1235","0af277c2":"1275","0c5435fe":"1500",b21ad4a1:"1547",f04cdb7e:"1592",acecf23e:"1903","8257ffa4":"1906","834e34cc":"2018",e8e13c91:"2106","1a4e3797":"2138",ff4089d2:"2148","1bff86ef":"2317",c4f5d8e4:"2634","9e4087bc":"2711",cf09775e:"2733","722a149d":"2883","7555bb16":"2944",ccc49370:"3249",a55bc7d4:"3446","45fd52fa":"3450",b6f402ca:"3463",be4af720:"3498","93a501ed":"3555","8070e160":"3822","30649cb6":"3876",d3234990:"3899",e5d94c03:"3980",c104c5b8:"4093","88f45e24":"4117","393be207":"4134",fa377e30:"4431","2644c4f4":"4508","7fc9262a":"4607","138e0e15":"4921","1cc2dcef":"4950","5a1935a3":"5359",aba21aa0:"5742",a417478a:"6006","9fc0d84d":"6011",a9f7b4d5:"6015","1f391b9e":"6061","9bc17760":"6302","6aa7fe68":"6349","044bc5cf":"6366","1531ba9d":"6489",fa48389a:"6563",b3e09ff4:"6618","14eb3368":"6969",a7bd4aaa:"7098","47284eb1":"7360","814f3328":"7472",e76a15a6:"7519","360ca471":"7580",a6aa9e1f:"7643",c39bf4d4:"7986",dfcda4d1:"8050","1db64337":"8413","30613cee":"8473","223de7e7":"8862","85be924b":"8874","55efe1e1":"8932",fc8fddfe:"8987",a94703ab:"9048","03e8cedb":"9213",ad895e75:"9315",a27d32e8:"9395",a4259125:"9502",d5184954:"9567",f0ac6a4f:"9600","5e95c892":"9647",ae863774:"9764","36994c47":"9858",a0385f53:"9964"}[e]||e,r.p+r.u(e)},(()=>{var e={5354:0,1869:0};r.f.j=(a,c)=>{var f=r.o(e,a)?e[a]:void 0;if(0!==f)if(f)c.push(f[2]);else if(/^(1869|5354)$/.test(a))e[a]=0;else{var b=new Promise(((c,b)=>f=e[a]=[c,b]));c.push(f[2]=b);var d=r.p+r.u(a),t=new Error;r.l(d,(c=>{if(r.o(e,a)&&(0!==(f=e[a])&&(e[a]=void 0),f)){var b=c&&("load"===c.type?"missing":c.type),d=c&&c.target&&c.target.src;t.message="Loading chunk "+a+" failed.\n("+b+": "+d+")",t.name="ChunkLoadError",t.type=b,t.request=d,f[1](t)}}),"chunk-"+a,a)}},r.O.j=a=>0===e[a];var a=(a,c)=>{var f,b,d=c[0],t=c[1],o=c[2],n=0;if(d.some((a=>0!==e[a]))){for(f in t)r.o(t,f)&&(r.m[f]=t[f]);if(o)var i=o(r)}for(a&&a(c);n Archive | TaskWeaver - + diff --git a/blog/atom.xml b/blog/atom.xml index a2ba5083..88926dda 100644 --- a/blog/atom.xml +++ b/blog/atom.xml @@ -2,7 +2,7 @@ https://docusaurus.io/TaskWeaver/blog TaskWeaver Blog - 2024-09-14T08:52:44.000Z + 2024-09-14T09:04:58.000Z https://github.com/jpmonette/feed TaskWeaver Blog @@ -11,7 +11,7 @@ <![CDATA[How to evaluate a LLM agent?]]> https://docusaurus.io/TaskWeaver/blog/evaluation - 2024-09-14T08:52:44.000Z + 2024-09-14T09:04:58.000Z The challenges

It is nontrivial to evaluate the performance of a LLM agent. @@ -78,7 +78,7 @@ as we did for TaskWeaver in auto_eval/taskweaver_eval.py:

<![CDATA[Experience selection]]> https://docusaurus.io/TaskWeaver/blog/experience - 2024-09-14T08:52:44.000Z + 2024-09-14T09:04:58.000Z We have introduced the motivation of the experience module in Experience and how to create a handcrafted experience in Handcrafted Experience. @@ -137,7 +137,7 @@ To enable dynamic experience selection, we have introduced the concept of shared <![CDATA[Run TaskWeaver with Locally Deployed Not-that-Large Language Models]]> https://docusaurus.io/TaskWeaver/blog/local_llm - 2024-09-14T08:52:44.000Z + 2024-09-14T09:04:58.000Z
info

The feature introduced in this blog post can cause incompatibility issue with the previous version of TaskWeaver if you have customized the examples for the planner and code interpreter. @@ -217,7 +217,7 @@ If you have any questions or suggestions, please feel free to contact us.

]]> <![CDATA[Plugins In-Depth]]> https://docusaurus.io/TaskWeaver/blog/plugin - 2024-09-14T08:52:44.000Z + 2024-09-14T09:04:58.000Z Pre-requisites: Please refer to the Introduction and the Plugin Development pages for a better understanding of the plugin concept and its development process.

@@ -284,7 +284,7 @@ The plugin is a powerful component in TaskWeaver to extend the functionality of <![CDATA[Roles in TaskWeaver]]> https://docusaurus.io/TaskWeaver/blog/role - 2024-09-14T08:52:44.000Z + 2024-09-14T09:04:58.000Z We frame TaskWeaver as a code-first agent framework. The term "code-first" means that the agent is designed to convert the user's request into one or multiple runnable code snippets and then execute them to generate the response. diff --git a/blog/evaluation/index.html b/blog/evaluation/index.html index 6525419f..4a7fdbee 100644 --- a/blog/evaluation/index.html +++ b/blog/evaluation/index.html @@ -3,13 +3,13 @@ -How to evaluate a LLM agent? | TaskWeaver +How to evaluate a LLM agent? | TaskWeaver - + -

How to evaluate a LLM agent?

· 7 min read

The challenges

+

How to evaluate a LLM agent?

· 7 min read

The challenges

It is nontrivial to evaluate the performance of a LLM agent. Existing evaluation methods typically treat the LLM agent as a function that maps input data to output data. If the agent is evaluated against a multi-step task, the evaluation process is then like a chain of calling a stateful function multiple times. diff --git a/blog/experience/index.html b/blog/experience/index.html index 724b9ed6..03b75efe 100644 --- a/blog/experience/index.html +++ b/blog/experience/index.html @@ -3,13 +3,13 @@ -Experience selection | TaskWeaver +Experience selection | TaskWeaver - + -

Experience selection

· 4 min read

We have introduced the motivation of the experience module in Experience +

Experience selection

· 4 min read

We have introduced the motivation of the experience module in Experience and how to create a handcrafted experience in Handcrafted Experience. In this blog post, we discuss more advanced topics about the experience module on experience selection.

Static experience selection

diff --git a/blog/index.html b/blog/index.html index 0f562358..8f0af8eb 100644 --- a/blog/index.html +++ b/blog/index.html @@ -3,13 +3,13 @@ -Blog | TaskWeaver +Blog | TaskWeaver - + -

How to evaluate a LLM agent?

· 7 min read

The challenges

+

How to evaluate a LLM agent?

· 7 min read

The challenges

It is nontrivial to evaluate the performance of a LLM agent. Existing evaluation methods typically treat the LLM agent as a function that maps input data to output data. If the agent is evaluated against a multi-step task, the evaluation process is then like a chain of calling a stateful function multiple times. @@ -19,7 +19,7 @@ It is sometimes hard to use keywords matching to evaluate the output of the agent, especially when the output is long and complex. For example, if the answer is a date or a number, the evaluation method may not be able to handle the different formats. Moreover, the evaluation method should be able to act more like a human, who can understand the context and the meaning of the output. -For example, when different agents are asked to perform the same task, they may behave differently, but still produce correct outputs.

Experience selection

· 4 min read

We have introduced the motivation of the experience module in Experience +For example, when different agents are asked to perform the same task, they may behave differently, but still produce correct outputs.

Experience selection

· 4 min read

We have introduced the motivation of the experience module in Experience and how to create a handcrafted experience in Handcrafted Experience. In this blog post, we discuss more advanced topics about the experience module on experience selection.

Static experience selection

@@ -34,7 +34,7 @@

you can have different experiences for different roles in a static way. Use the Planner role as an example, you can have the following project configuration file to enable the experience selection for the Planner role.

-
{
"planner.use_experience": true,
"planner.experience_dir": "planner_exp_dir"
}

Run TaskWeaver with Locally Deployed Not-that-Large Language Models

· 6 min read
info

The feature introduced in this blog post can cause incompatibility issue with the previous version of TaskWeaver if you have customized the examples for the planner and code interpreter. The issue is easy to fix by changing the examples to the new schema. Please refer to the How we implemented the constrained generation in TaskWeaver section for more details.

@@ -49,7 +49,7 @@

Motivation

Plugins In-Depth

· 5 min read

Pre-requisites: Please refer to the Introduction and the Plugin Development pages for a better understanding of the plugin concept and its development process.

Plugin Basics

In TaskWeaver, the plugins are the essential components to extend the functionality of the agent. @@ -64,7 +64,7 @@

Plugin Basics< When the LLM generates the code snippets, it will use the information in the YAML file to generate the function signature. We did not check the discrepancy between the function signature in the Python implementation and the YAML file. So, it is important to keep them consistent. -The examples field is used to provide examples of how to use the plugin for the LLM.

Roles in TaskWeaver

· 5 min read

We frame TaskWeaver as a code-first agent framework. The term "code-first" means that the agent is designed to +The examples field is used to provide examples of how to use the plugin for the LLM.

Roles in TaskWeaver

· 5 min read

We frame TaskWeaver as a code-first agent framework. The term "code-first" means that the agent is designed to convert the user's request into one or multiple runnable code snippets and then execute them to generate the response. The philosophy behind this design is to consider programming languages as the de facto language for communication in cyber-physical systems, just like the natural language for human communication. Therefore, TaskWeaver translates the user's request in natural language into diff --git a/blog/local_llm/index.html b/blog/local_llm/index.html index a00bce4e..bd38268d 100644 --- a/blog/local_llm/index.html +++ b/blog/local_llm/index.html @@ -3,13 +3,13 @@ -Run TaskWeaver with Locally Deployed Not-that-Large Language Models | TaskWeaver +Run TaskWeaver with Locally Deployed Not-that-Large Language Models | TaskWeaver - + -

Run TaskWeaver with Locally Deployed Not-that-Large Language Models

· 6 min read
info

The feature introduced in this blog post can cause incompatibility issue with the previous version of TaskWeaver +

Run TaskWeaver with Locally Deployed Not-that-Large Language Models

· 6 min read
info

The feature introduced in this blog post can cause incompatibility issue with the previous version of TaskWeaver if you have customized the examples for the planner and code interpreter. The issue is easy to fix by changing the examples to the new schema. Please refer to the How we implemented the constrained generation in TaskWeaver section for more details.

diff --git a/blog/plugin/index.html b/blog/plugin/index.html index 38c23aac..fb32051d 100644 --- a/blog/plugin/index.html +++ b/blog/plugin/index.html @@ -3,13 +3,13 @@ -Plugins In-Depth | TaskWeaver +Plugins In-Depth | TaskWeaver - + -

Plugins In-Depth

· 5 min read

Pre-requisites: Please refer to the Introduction and the Plugin Development +

Plugins In-Depth

· 5 min read

Pre-requisites: Please refer to the Introduction and the Plugin Development pages for a better understanding of the plugin concept and its development process.

Plugin Basics

In TaskWeaver, the plugins are the essential components to extend the functionality of the agent. diff --git a/blog/role/index.html b/blog/role/index.html index e4231cc1..87c12b4c 100644 --- a/blog/role/index.html +++ b/blog/role/index.html @@ -3,13 +3,13 @@ -Roles in TaskWeaver | TaskWeaver +Roles in TaskWeaver | TaskWeaver - + -

Roles in TaskWeaver

· 5 min read

We frame TaskWeaver as a code-first agent framework. The term "code-first" means that the agent is designed to +

Roles in TaskWeaver

· 5 min read

We frame TaskWeaver as a code-first agent framework. The term "code-first" means that the agent is designed to convert the user's request into one or multiple runnable code snippets and then execute them to generate the response. The philosophy behind this design is to consider programming languages as the de facto language for communication in cyber-physical systems, just like the natural language for human communication. Therefore, TaskWeaver translates the user's request in natural language into diff --git a/blog/rss.xml b/blog/rss.xml index 8a7335db..18723692 100644 --- a/blog/rss.xml +++ b/blog/rss.xml @@ -4,7 +4,7 @@ TaskWeaver Blog https://docusaurus.io/TaskWeaver/blog TaskWeaver Blog - Sat, 14 Sep 2024 08:52:44 GMT + Sat, 14 Sep 2024 09:04:58 GMT https://validator.w3.org/feed/docs/rss2.html https://github.com/jpmonette/feed en @@ -12,7 +12,7 @@ <![CDATA[How to evaluate a LLM agent?]]> https://docusaurus.io/TaskWeaver/blog/evaluation https://docusaurus.io/TaskWeaver/blog/evaluation - Sat, 14 Sep 2024 08:52:44 GMT + Sat, 14 Sep 2024 09:04:58 GMT The challenges

It is nontrivial to evaluate the performance of a LLM agent. @@ -79,7 +79,7 @@ as we did for TaskWeaver in auto_eval/taskweaver_eval.py:

<![CDATA[Experience selection]]> https://docusaurus.io/TaskWeaver/blog/experience https://docusaurus.io/TaskWeaver/blog/experience - Sat, 14 Sep 2024 08:52:44 GMT + Sat, 14 Sep 2024 09:04:58 GMT We have introduced the motivation of the experience module in Experience and how to create a handcrafted experience in Handcrafted Experience. @@ -138,7 +138,7 @@ To enable dynamic experience selection, we have introduced the concept of shared <![CDATA[Run TaskWeaver with Locally Deployed Not-that-Large Language Models]]> https://docusaurus.io/TaskWeaver/blog/local_llm https://docusaurus.io/TaskWeaver/blog/local_llm - Sat, 14 Sep 2024 08:52:44 GMT + Sat, 14 Sep 2024 09:04:58 GMT
info

The feature introduced in this blog post can cause incompatibility issue with the previous version of TaskWeaver if you have customized the examples for the planner and code interpreter. @@ -218,7 +218,7 @@ If you have any questions or suggestions, please feel free to contact us.

]]> <![CDATA[Plugins In-Depth]]> https://docusaurus.io/TaskWeaver/blog/plugin https://docusaurus.io/TaskWeaver/blog/plugin - Sat, 14 Sep 2024 08:52:44 GMT + Sat, 14 Sep 2024 09:04:58 GMT Pre-requisites: Please refer to the Introduction and the Plugin Development pages for a better understanding of the plugin concept and its development process.

@@ -285,7 +285,7 @@ The plugin is a powerful component in TaskWeaver to extend the functionality of <![CDATA[Roles in TaskWeaver]]> https://docusaurus.io/TaskWeaver/blog/role https://docusaurus.io/TaskWeaver/blog/role - Sat, 14 Sep 2024 08:52:44 GMT + Sat, 14 Sep 2024 09:04:58 GMT We frame TaskWeaver as a code-first agent framework. The term "code-first" means that the agent is designed to convert the user's request into one or multiple runnable code snippets and then execute them to generate the response. diff --git a/docs/FAQ/index.html b/docs/FAQ/index.html index 7cf6f5e5..8a9c7a19 100644 --- a/docs/FAQ/index.html +++ b/docs/FAQ/index.html @@ -5,7 +5,7 @@ FAQ | TaskWeaver - + diff --git a/docs/advanced/cli_only/index.html b/docs/advanced/cli_only/index.html index 3bc4be5d..f33e619f 100644 --- a/docs/advanced/cli_only/index.html +++ b/docs/advanced/cli_only/index.html @@ -5,7 +5,7 @@ CLI Only Mode | TaskWeaver - + diff --git a/docs/advanced/code_verification/index.html b/docs/advanced/code_verification/index.html index 4b10ff39..6d6703a6 100644 --- a/docs/advanced/code_verification/index.html +++ b/docs/advanced/code_verification/index.html @@ -5,7 +5,7 @@ Code Verification | TaskWeaver - + diff --git a/docs/advanced/compression/index.html b/docs/advanced/compression/index.html index c73d3067..d0a8db31 100644 --- a/docs/advanced/compression/index.html +++ b/docs/advanced/compression/index.html @@ -5,7 +5,7 @@ Prompt Compression | TaskWeaver - + diff --git a/docs/advanced/index.html b/docs/advanced/index.html index 2db9a809..280a919f 100644 --- a/docs/advanced/index.html +++ b/docs/advanced/index.html @@ -5,7 +5,7 @@ LLMs | TaskWeaver - + diff --git a/docs/advanced/plugin_selection/index.html b/docs/advanced/plugin_selection/index.html index d1010e19..d44df7f5 100644 --- a/docs/advanced/plugin_selection/index.html +++ b/docs/advanced/plugin_selection/index.html @@ -5,7 +5,7 @@ Auto Plugin Selection | TaskWeaver - + diff --git a/docs/advanced/telemetry/index.html b/docs/advanced/telemetry/index.html index 5aaf4074..75eb379b 100644 --- a/docs/advanced/telemetry/index.html +++ b/docs/advanced/telemetry/index.html @@ -5,7 +5,7 @@ Telemetry | TaskWeaver - + diff --git a/docs/code_execution/index.html b/docs/code_execution/index.html index 7a427c6e..05a0d579 100644 --- a/docs/code_execution/index.html +++ b/docs/code_execution/index.html @@ -5,7 +5,7 @@ Code Execution | TaskWeaver - + diff --git a/docs/concepts/app/index.html b/docs/concepts/app/index.html index 194e1b4f..db9de34e 100644 --- a/docs/concepts/app/index.html +++ b/docs/concepts/app/index.html @@ -5,7 +5,7 @@ Application | TaskWeaver - + diff --git a/docs/concepts/attachment/index.html b/docs/concepts/attachment/index.html index 3af9f9fe..07dd8e56 100644 --- a/docs/concepts/attachment/index.html +++ b/docs/concepts/attachment/index.html @@ -5,7 +5,7 @@ Attachment | TaskWeaver - + diff --git a/docs/concepts/conversation/index.html b/docs/concepts/conversation/index.html index fa0aa344..569aa5f4 100644 --- a/docs/concepts/conversation/index.html +++ b/docs/concepts/conversation/index.html @@ -5,7 +5,7 @@ Conversation | TaskWeaver - + diff --git a/docs/concepts/index.html b/docs/concepts/index.html index 6cfd5583..04041b50 100644 --- a/docs/concepts/index.html +++ b/docs/concepts/index.html @@ -5,7 +5,7 @@ Concepts | TaskWeaver - + diff --git a/docs/concepts/plugin/index.html b/docs/concepts/plugin/index.html index 4024db80..0184d851 100644 --- a/docs/concepts/plugin/index.html +++ b/docs/concepts/plugin/index.html @@ -5,7 +5,7 @@ Plugin | TaskWeaver - + diff --git a/docs/concepts/post/index.html b/docs/concepts/post/index.html index 8fbf1840..a9f351c1 100644 --- a/docs/concepts/post/index.html +++ b/docs/concepts/post/index.html @@ -5,7 +5,7 @@ Post | TaskWeaver - + diff --git a/docs/concepts/project/index.html b/docs/concepts/project/index.html index 9cb5cd24..8aab7036 100644 --- a/docs/concepts/project/index.html +++ b/docs/concepts/project/index.html @@ -5,7 +5,7 @@ Project | TaskWeaver - + diff --git a/docs/concepts/role/index.html b/docs/concepts/role/index.html index 1170931a..4f333cd2 100644 --- a/docs/concepts/role/index.html +++ b/docs/concepts/role/index.html @@ -5,7 +5,7 @@ Role | TaskWeaver - + diff --git a/docs/concepts/round/index.html b/docs/concepts/round/index.html index 809ccece..dd745992 100644 --- a/docs/concepts/round/index.html +++ b/docs/concepts/round/index.html @@ -5,7 +5,7 @@ Round | TaskWeaver - + diff --git a/docs/concepts/session/index.html b/docs/concepts/session/index.html index 129d9f6b..81cafb97 100644 --- a/docs/concepts/session/index.html +++ b/docs/concepts/session/index.html @@ -5,7 +5,7 @@ Session | TaskWeaver - + diff --git a/docs/configurations/configurations_in_detail/index.html b/docs/configurations/configurations_in_detail/index.html index 7e323a65..caf64c1c 100644 --- a/docs/configurations/configurations_in_detail/index.html +++ b/docs/configurations/configurations_in_detail/index.html @@ -5,7 +5,7 @@ More about Configurations | TaskWeaver - + diff --git a/docs/configurations/overview/index.html b/docs/configurations/overview/index.html index 58a717d9..06c7e5c1 100644 --- a/docs/configurations/overview/index.html +++ b/docs/configurations/overview/index.html @@ -5,7 +5,7 @@ Configuration File | TaskWeaver - + diff --git a/docs/customization/example/index.html b/docs/customization/example/index.html index f7f3decc..ceb2f3cb 100644 --- a/docs/customization/example/index.html +++ b/docs/customization/example/index.html @@ -5,7 +5,7 @@ Customizing Examples | TaskWeaver - + diff --git a/docs/customization/experience/handcrafted_experience/index.html b/docs/customization/experience/handcrafted_experience/index.html index 962fba62..51eee2db 100644 --- a/docs/customization/experience/handcrafted_experience/index.html +++ b/docs/customization/experience/handcrafted_experience/index.html @@ -5,7 +5,7 @@ Handcrafted Experience | TaskWeaver - + diff --git a/docs/customization/experience/index.html b/docs/customization/experience/index.html index 7b9a4450..2560e08b 100644 --- a/docs/customization/experience/index.html +++ b/docs/customization/experience/index.html @@ -5,7 +5,7 @@ Experience | TaskWeaver - + diff --git a/docs/customization/index.html b/docs/customization/index.html index 406b8d5f..c648170a 100644 --- a/docs/customization/index.html +++ b/docs/customization/index.html @@ -5,7 +5,7 @@ LLMs | TaskWeaver - + diff --git a/docs/llms/Keywords-AI/index.html b/docs/llms/Keywords-AI/index.html index 44e69986..8dcf8304 100644 --- a/docs/llms/Keywords-AI/index.html +++ b/docs/llms/Keywords-AI/index.html @@ -5,7 +5,7 @@ Keywords AI | TaskWeaver - + diff --git a/docs/llms/anthropic/index.html b/docs/llms/anthropic/index.html index b5a92712..9c45c9bb 100644 --- a/docs/llms/anthropic/index.html +++ b/docs/llms/anthropic/index.html @@ -5,7 +5,7 @@ Anthropic (Claude) | TaskWeaver - + diff --git a/docs/llms/aoai/index.html b/docs/llms/aoai/index.html index 79d30dfe..67b3893e 100644 --- a/docs/llms/aoai/index.html +++ b/docs/llms/aoai/index.html @@ -5,7 +5,7 @@ Azure OpenAI | TaskWeaver - + diff --git a/docs/llms/customized_llm_api/index.html b/docs/llms/customized_llm_api/index.html index 8deea919..2af1ecc2 100644 --- a/docs/llms/customized_llm_api/index.html +++ b/docs/llms/customized_llm_api/index.html @@ -5,7 +5,7 @@ Customized LLM API | TaskWeaver - + diff --git a/docs/llms/gemini/index.html b/docs/llms/gemini/index.html index 06eb9c6d..7aaac803 100644 --- a/docs/llms/gemini/index.html +++ b/docs/llms/gemini/index.html @@ -5,7 +5,7 @@ Gemini | TaskWeaver - + diff --git a/docs/llms/glm/index.html b/docs/llms/glm/index.html index bc413144..14b10b26 100644 --- a/docs/llms/glm/index.html +++ b/docs/llms/glm/index.html @@ -5,7 +5,7 @@ GLM | TaskWeaver - + diff --git a/docs/llms/groq/index.html b/docs/llms/groq/index.html index 34629044..62904fd0 100644 --- a/docs/llms/groq/index.html +++ b/docs/llms/groq/index.html @@ -5,7 +5,7 @@ GroqChat | TaskWeaver - + diff --git a/docs/llms/index.html b/docs/llms/index.html index d9425a7a..5b977df6 100644 --- a/docs/llms/index.html +++ b/docs/llms/index.html @@ -5,7 +5,7 @@ LLMs | TaskWeaver - + diff --git a/docs/llms/liteLLM/index.html b/docs/llms/liteLLM/index.html index 7bd38688..13497cb5 100644 --- a/docs/llms/liteLLM/index.html +++ b/docs/llms/liteLLM/index.html @@ -5,7 +5,7 @@ LiteLLM | TaskWeaver - + diff --git a/docs/llms/multi-llm/index.html b/docs/llms/multi-llm/index.html index 70f42e9c..41a6c823 100644 --- a/docs/llms/multi-llm/index.html +++ b/docs/llms/multi-llm/index.html @@ -5,7 +5,7 @@ Multi LLM APIs | TaskWeaver - + diff --git a/docs/llms/ollama/index.html b/docs/llms/ollama/index.html index 6ad1f0de..105cad28 100644 --- a/docs/llms/ollama/index.html +++ b/docs/llms/ollama/index.html @@ -5,7 +5,7 @@ Ollama | TaskWeaver - + diff --git a/docs/llms/openai/index.html b/docs/llms/openai/index.html index 08d5b49f..55a8b400 100644 --- a/docs/llms/openai/index.html +++ b/docs/llms/openai/index.html @@ -5,7 +5,7 @@ OpenAI | TaskWeaver - + diff --git a/docs/llms/qwen/index.html b/docs/llms/qwen/index.html index 01b3705f..de2e8605 100644 --- a/docs/llms/qwen/index.html +++ b/docs/llms/qwen/index.html @@ -5,7 +5,7 @@ QWen | TaskWeaver - + diff --git a/docs/memory/index.html b/docs/memory/index.html index b7be77e6..b13a5c65 100644 --- a/docs/memory/index.html +++ b/docs/memory/index.html @@ -5,7 +5,7 @@ Memory | TaskWeaver - + diff --git a/docs/overview/index.html b/docs/overview/index.html index 6621b30b..523b6896 100644 --- a/docs/overview/index.html +++ b/docs/overview/index.html @@ -5,7 +5,7 @@ Overview | TaskWeaver - + diff --git a/docs/plugin/how_to_develop_a_new_plugin/index.html b/docs/plugin/how_to_develop_a_new_plugin/index.html index d67bfd69..9bfb5e90 100644 --- a/docs/plugin/how_to_develop_a_new_plugin/index.html +++ b/docs/plugin/how_to_develop_a_new_plugin/index.html @@ -5,7 +5,7 @@ An Example of Developing a New Plugin | TaskWeaver - + diff --git a/docs/plugin/multi_yaml_single_impl/index.html b/docs/plugin/multi_yaml_single_impl/index.html index 02fb7add..b3efb367 100644 --- a/docs/plugin/multi_yaml_single_impl/index.html +++ b/docs/plugin/multi_yaml_single_impl/index.html @@ -5,7 +5,7 @@ Multiple YAML files to one Python implementation | TaskWeaver - + diff --git a/docs/plugin/plugin_intro/index.html b/docs/plugin/plugin_intro/index.html index 52ef4508..9319e88f 100644 --- a/docs/plugin/plugin_intro/index.html +++ b/docs/plugin/plugin_intro/index.html @@ -5,7 +5,7 @@ Plugin Introduction | TaskWeaver - + diff --git a/docs/plugin/plugin_only/index.html b/docs/plugin/plugin_only/index.html index 9505890d..a1173e32 100644 --- a/docs/plugin/plugin_only/index.html +++ b/docs/plugin/plugin_only/index.html @@ -5,7 +5,7 @@ The Plugin-Only Mode | TaskWeaver - + diff --git a/docs/quickstart/index.html b/docs/quickstart/index.html index eb59e251..c6d4197f 100644 --- a/docs/quickstart/index.html +++ b/docs/quickstart/index.html @@ -5,7 +5,7 @@ Quick Start | TaskWeaver - + diff --git a/docs/usage/cmd/index.html b/docs/usage/cmd/index.html index 6e27894c..3259e551 100644 --- a/docs/usage/cmd/index.html +++ b/docs/usage/cmd/index.html @@ -5,7 +5,7 @@ Terminal | TaskWeaver - + diff --git a/docs/usage/docker/index.html b/docs/usage/docker/index.html index e7b26ffa..df5edadd 100644 --- a/docs/usage/docker/index.html +++ b/docs/usage/docker/index.html @@ -5,7 +5,7 @@ All-in-One Docker Image | TaskWeaver - + diff --git a/docs/usage/index.html b/docs/usage/index.html index e1a52239..ca5caab7 100644 --- a/docs/usage/index.html +++ b/docs/usage/index.html @@ -5,7 +5,7 @@ Usage Options | TaskWeaver - + diff --git a/docs/usage/library/index.html b/docs/usage/library/index.html index 89732b79..f39ff41f 100644 --- a/docs/usage/library/index.html +++ b/docs/usage/library/index.html @@ -5,7 +5,7 @@ Library | TaskWeaver - + diff --git a/docs/usage/webui/index.html b/docs/usage/webui/index.html index bf5020bb..405038cd 100644 --- a/docs/usage/webui/index.html +++ b/docs/usage/webui/index.html @@ -5,7 +5,7 @@ Web UI | TaskWeaver - + diff --git a/index.html b/index.html index 339dbce1..04223bcc 100644 --- a/index.html +++ b/index.html @@ -5,7 +5,7 @@ Hello from TaskWeaver | TaskWeaver - + diff --git a/markdown-page/index.html b/markdown-page/index.html index 3242d526..fdf93bfb 100644 --- a/markdown-page/index.html +++ b/markdown-page/index.html @@ -5,7 +5,7 @@ Markdown page example | TaskWeaver - + diff --git a/search-index-blog.json b/search-index-blog.json index ea7ac2ba..ad0d2374 100644 --- a/search-index-blog.json +++ b/search-index-blog.json @@ -1 +1 @@ -[{"documents":[{"i":1,"t":"How to evaluate a LLM agent?","u":"/TaskWeaver/blog/evaluation","b":["Blog"]},{"i":9,"t":"Plugins In-Depth","u":"/TaskWeaver/blog/plugin","b":["Blog"]},{"i":19,"t":"Experience selection","u":"/TaskWeaver/blog/experience","b":["Blog"]},{"i":27,"t":"","u":"/TaskWeaver/blog/archive","b":["Blog"]},{"i":28,"t":"Run TaskWeaver with Locally Deployed Not-that-Large Language Models","u":"/TaskWeaver/blog/local_llm","b":["Blog"]},{"i":38,"t":"Roles in TaskWeaver","u":"/TaskWeaver/blog/role","b":["Blog"]}],"index":{"version":"2.3.9","fields":["t"],"fieldVectors":[["t/1",[0,1.466,1,1.466,2,1.466]],["t/9",[3,1.716,4,1.716]],["t/19",[5,1.716,6,1.716]],["t/27",[]],["t/28",[7,0.925,8,0.618,9,0.925,10,0.925,11,0.925,12,0.925,13,0.925]],["t/38",[8,1.147,14,1.716]]],"invertedIndex":[["agent",{"_index":2,"t":{"1":{"position":[[22,6]]}}}],["deploy",{"_index":10,"t":{"28":{"position":[[28,8]]}}}],["depth",{"_index":4,"t":{"9":{"position":[[11,5]]}}}],["evalu",{"_index":0,"t":{"1":{"position":[[7,8]]}}}],["experi",{"_index":5,"t":{"19":{"position":[[0,10]]}}}],["languag",{"_index":12,"t":{"28":{"position":[[52,8]]}}}],["larg",{"_index":11,"t":{"28":{"position":[[46,5]]}}}],["llm",{"_index":1,"t":{"1":{"position":[[18,3]]}}}],["local",{"_index":9,"t":{"28":{"position":[[20,7]]}}}],["model",{"_index":13,"t":{"28":{"position":[[61,6]]}}}],["plugin",{"_index":3,"t":{"9":{"position":[[0,7]]}}}],["role",{"_index":14,"t":{"38":{"position":[[0,5]]}}}],["run",{"_index":7,"t":{"28":{"position":[[0,3]]}}}],["select",{"_index":6,"t":{"19":{"position":[[11,9]]}}}],["taskweav",{"_index":8,"t":{"28":{"position":[[4,10]]},"38":{"position":[[9,10]]}}}]],"pipeline":["stemmer"]}},{"documents":[{"i":3,"t":"The challenges","u":"/TaskWeaver/blog/evaluation","h":"#the-challenges","p":1},{"i":5,"t":"A new evaluation method","u":"/TaskWeaver/blog/evaluation","h":"#a-new-evaluation-method","p":1},{"i":7,"t":"How to adapt for other agents?","u":"/TaskWeaver/blog/evaluation","h":"#how-to-adapt-for-other-agents","p":1},{"i":11,"t":"Plugin Basics","u":"/TaskWeaver/blog/plugin","h":"#plugin-basics","p":9},{"i":13,"t":"Configurations and States","u":"/TaskWeaver/blog/plugin","h":"#configurations-and-states","p":9},{"i":15,"t":"The Plugin Lifecycle","u":"/TaskWeaver/blog/plugin","h":"#the-plugin-lifecycle","p":9},{"i":17,"t":"Conclusion","u":"/TaskWeaver/blog/plugin","h":"#conclusion","p":9},{"i":21,"t":"Static experience selection","u":"/TaskWeaver/blog/experience","h":"#static-experience-selection","p":19},{"i":23,"t":"Dynamic experience selection","u":"/TaskWeaver/blog/experience","h":"#dynamic-experience-selection","p":19},{"i":25,"t":"Conclusion","u":"/TaskWeaver/blog/experience","h":"#conclusion","p":19},{"i":30,"t":"Motivation","u":"/TaskWeaver/blog/local_llm","h":"#motivation","p":28},{"i":32,"t":"Constrained Generation","u":"/TaskWeaver/blog/local_llm","h":"#constrained-generation","p":28},{"i":34,"t":"How we implemented the constrained generation in TaskWeaver","u":"/TaskWeaver/blog/local_llm","h":"#how-we-implemented-the-constrained-generation-in-taskweaver","p":28},{"i":36,"t":"Conclusion","u":"/TaskWeaver/blog/local_llm","h":"#conclusion","p":28}],"index":{"version":"2.3.9","fields":["t"],"fieldVectors":[["t/3",[0,2.895]],["t/5",[1,1.912,2,1.912,3,1.912]],["t/7",[4,2.303,5,2.303]],["t/11",[6,1.792,7,2.303]],["t/13",[8,2.303,9,2.303]],["t/15",[6,1.792,10,2.303]],["t/17",[11,1.83]],["t/21",[12,1.912,13,1.487,14,1.487]],["t/23",[13,1.487,14,1.487,15,1.912]],["t/25",[11,1.83]],["t/30",[16,2.895]],["t/32",[17,1.792,18,1.792]],["t/34",[17,1.272,18,1.272,19,1.634,20,1.634]],["t/36",[11,1.83]]],"invertedIndex":[["adapt",{"_index":4,"t":{"7":{"position":[[7,5]]}}}],["agent",{"_index":5,"t":{"7":{"position":[[23,7]]}}}],["basic",{"_index":7,"t":{"11":{"position":[[7,6]]}}}],["challeng",{"_index":0,"t":{"3":{"position":[[4,10]]}}}],["conclus",{"_index":11,"t":{"17":{"position":[[0,10]]},"25":{"position":[[0,10]]},"36":{"position":[[0,10]]}}}],["configur",{"_index":8,"t":{"13":{"position":[[0,14]]}}}],["constrain",{"_index":17,"t":{"32":{"position":[[0,11]]},"34":{"position":[[23,11]]}}}],["dynam",{"_index":15,"t":{"23":{"position":[[0,7]]}}}],["evalu",{"_index":2,"t":{"5":{"position":[[6,10]]}}}],["experi",{"_index":13,"t":{"21":{"position":[[7,10]]},"23":{"position":[[8,10]]}}}],["gener",{"_index":18,"t":{"32":{"position":[[12,10]]},"34":{"position":[[35,10]]}}}],["implement",{"_index":19,"t":{"34":{"position":[[7,11]]}}}],["lifecycl",{"_index":10,"t":{"15":{"position":[[11,9]]}}}],["method",{"_index":3,"t":{"5":{"position":[[17,6]]}}}],["motiv",{"_index":16,"t":{"30":{"position":[[0,10]]}}}],["new",{"_index":1,"t":{"5":{"position":[[2,3]]}}}],["plugin",{"_index":6,"t":{"11":{"position":[[0,6]]},"15":{"position":[[4,6]]}}}],["select",{"_index":14,"t":{"21":{"position":[[18,9]]},"23":{"position":[[19,9]]}}}],["state",{"_index":9,"t":{"13":{"position":[[19,6]]}}}],["static",{"_index":12,"t":{"21":{"position":[[0,6]]}}}],["taskweav",{"_index":20,"t":{"34":{"position":[[49,10]]}}}]],"pipeline":["stemmer"]}},{"documents":[{"i":1,"t":"The challenges","s":"How to evaluate a LLM agent?","u":"/TaskWeaver/blog/evaluation","p":1},{"i":9,"t":"**Pre-requisites**: Please refer to the Introduction and the Plugin Development","s":"Plugins In-Depth","u":"/TaskWeaver/blog/plugin","p":9},{"i":19,"t":"We have introduced the motivation of the experience module in Experience","s":"Experience selection","u":"/TaskWeaver/blog/experience","p":19},{"i":27,"t":"Archive","s":"","u":"/TaskWeaver/blog/archive","p":27},{"i":28,"t":"The feature introduced in this blog post can cause incompatibility issue with the previous version of TaskWeaver","s":"Run TaskWeaver with Locally Deployed Not-that-Large Language Models","u":"/TaskWeaver/blog/local_llm","p":28},{"i":38,"t":"We frame TaskWeaver as a code-first agent framework. The term \"code-first\" means that the agent is designed to","s":"Roles in TaskWeaver","u":"/TaskWeaver/blog/role","p":38}],"index":{"version":"2.3.9","fields":["t"],"fieldVectors":[["t/1",[0,2.337]],["t/9",[1,1.442,2,1.442,3,1.442,4,1.442,5,1.442,6,1.442,7,1.442]],["t/19",[8,1.105,9,1.653,10,2.222,11,1.653]],["t/27",[12,2.337]],["t/28",[8,0.809,13,1.21,14,1.21,15,1.21,16,1.21,17,1.21,18,1.21,19,1.21,20,1.21,21,0.809]],["t/38",[21,0.731,22,1.093,23,1.653,24,1.653,25,1.653,26,1.093,27,1.093,28,1.093,29,1.093]]],"invertedIndex":[["agent",{"_index":25,"t":{"38":{"position":[[36,5],[90,5]]}}}],["archiv",{"_index":12,"t":{"27":{"position":[[0,7]]}}}],["blog",{"_index":14,"t":{"28":{"position":[[31,4]]}}}],["caus",{"_index":16,"t":{"28":{"position":[[45,5]]}}}],["challeng",{"_index":0,"t":{"1":{"position":[[4,10]]}}}],["code",{"_index":23,"t":{"38":{"position":[[25,4],[62,5]]}}}],["design",{"_index":29,"t":{"38":{"position":[[99,8]]}}}],["develop",{"_index":7,"t":{"9":{"position":[[68,11]]}}}],["experi",{"_index":10,"t":{"19":{"position":[[41,10],[62,10]]}}}],["featur",{"_index":13,"t":{"28":{"position":[[4,7]]}}}],["first",{"_index":24,"t":{"38":{"position":[[30,5],[68,6]]}}}],["frame",{"_index":22,"t":{"38":{"position":[[3,5]]}}}],["framework",{"_index":26,"t":{"38":{"position":[[42,10]]}}}],["incompat",{"_index":17,"t":{"28":{"position":[[51,15]]}}}],["introduc",{"_index":8,"t":{"19":{"position":[[8,10]]},"28":{"position":[[12,10]]}}}],["introduct",{"_index":5,"t":{"9":{"position":[[40,12]]}}}],["issu",{"_index":18,"t":{"28":{"position":[[67,5]]}}}],["mean",{"_index":28,"t":{"38":{"position":[[75,5]]}}}],["modul",{"_index":11,"t":{"19":{"position":[[52,6]]}}}],["motiv",{"_index":9,"t":{"19":{"position":[[23,10]]}}}],["pleas",{"_index":3,"t":{"9":{"position":[[20,6]]}}}],["plugin",{"_index":6,"t":{"9":{"position":[[61,6]]}}}],["post",{"_index":15,"t":{"28":{"position":[[36,4]]}}}],["pre",{"_index":1,"t":{"9":{"position":[[0,5]]}}}],["previou",{"_index":19,"t":{"28":{"position":[[82,8]]}}}],["refer",{"_index":4,"t":{"9":{"position":[[27,5]]}}}],["requisit",{"_index":2,"t":{"9":{"position":[[6,13]]}}}],["taskweav",{"_index":21,"t":{"28":{"position":[[102,10]]},"38":{"position":[[9,10]]}}}],["term",{"_index":27,"t":{"38":{"position":[[57,4]]}}}],["version",{"_index":20,"t":{"28":{"position":[[91,7]]}}}]],"pipeline":["stemmer"]}},{"documents":[],"index":{"version":"2.3.9","fields":["t"],"fieldVectors":[],"invertedIndex":[],"pipeline":["stemmer"]}},{"documents":[{"i":2,"t":"The challenges​ It is nontrivial to evaluate the performance of a LLM agent. Existing evaluation methods typically treat the LLM agent as a function that maps input data to output data. If the agent is evaluated against a multi-step task, the evaluation process is then like a chain of calling a stateful function multiple times. To judge the output of the agent, it is typically compared to a ground truth or a reference output. As the output of the agent is in natural language, the evaluation is typically done by matching keywords or phrases in the output to the ground truth. This evaluation method has its limitations due to its rigid nature. It is sometimes hard to use keywords matching to evaluate the output of the agent, especially when the output is long and complex. For example, if the answer is a date or a number, the evaluation method may not be able to handle the different formats. Moreover, the evaluation method should be able to act more like a human, who can understand the context and the meaning of the output. For example, when different agents are asked to perform the same task, they may behave differently, but still produce correct outputs. The below example illustrates this point: Human: What is the weather today? Agent 1: It is sunny today in New York. Human: What is the weather today? Agent 2: Do you want to know the weather in New York today? Human: Yes. Agent 2: It is sunny today. Compared to Agent 1, Agent 2 asks for confirmation before providing the answer, which requires more interaction with the user. However, both agents provide the correct answer to the question. But if the evaluation method takes the agent as a function, it may not be able to handle the different behaviors of the agents and consider Agent 2 as incorrect (as the first response does not match the ground truth, e.g., \"sunny\").","s":"How to evaluate a LLM agent?","u":"/TaskWeaver/blog/evaluation","h":"","p":1},{"i":4,"t":"It is nontrivial to evaluate the performance of a LLM agent. Existing evaluation methods typically treat the LLM agent as a function that maps input data to output data. If the agent is evaluated against a multi-step task, the evaluation process is then like a chain of calling a stateful function multiple times. To judge the output of the agent, it is typically compared to a ground truth or a reference output. As the output of the agent is in natural language, the evaluation is typically done by matching keywords or phrases in the output to the ground truth. This evaluation method has its limitations due to its rigid nature. It is sometimes hard to use keywords matching to evaluate the output of the agent, especially when the output is long and complex. For example, if the answer is a date or a number, the evaluation method may not be able to handle the different formats. Moreover, the evaluation method should be able to act more like a human, who can understand the context and the meaning of the output. For example, when different agents are asked to perform the same task, they may behave differently, but still produce correct outputs. The below example illustrates this point: Human: What is the weather today? Agent 1: It is sunny today in New York. Human: What is the weather today? Agent 2: Do you want to know the weather in New York today? Human: Yes. Agent 2: It is sunny today. Compared to Agent 1, Agent 2 asks for confirmation before providing the answer, which requires more interaction with the user. However, both agents provide the correct answer to the question. But if the evaluation method takes the agent as a function, it may not be able to handle the different behaviors of the agents and consider Agent 2 as incorrect (as the first response does not match the ground truth, e.g., \"sunny\").","s":"The challenges","u":"/TaskWeaver/blog/evaluation","h":"#the-challenges","p":1},{"i":6,"t":"Therefore, we propose a new evaluation method that treats the agent as a conversational partner as shown in the figure below: We introduce two new roles during the evaluation process: the Examiner and the Judge. For each test case, the task description is first given to the Examiner. The Examiner then asks questions to the agent and supervises the conversation. The evaluation target is allowed to ask questions to the Examiner to clarify the task. The Examiner can only provide the task description and cannot provide any hints or solutions. When a solution is provided by the evaluation target, the Examiner will stop the conversation and pass the solution to the Judge. The Judge will then evaluate the solution based on the ground truth. Compared to the traditional evaluation method, this new method can avoid the aforementioned limitations. Let's see an example of how the new evaluation method works. The following YAML file is a task description for the task \"Sum of 1 to 50\". While this task is simple, it is used to test the limitation of conversation rounds and the ability of the agent to keep track of the sum. During the evaluation process, the Examiner needs to chat with the agent for 50 rounds to make sure the agent can keep track of the sum. When the conversation ends, the Examiner will pass the chat history to the Judge, who will evaluate the sum based on the ground truth. task_description: |- The task has many rounds. The initial total sum is 0. Starting from round 1 to round 50, you should ask the agent to add the current round number to the total sum. The agent should keep track of the sum and return the sum after the 50th round. Every round, you only need to ask the agent to add the current round number to the total sum and report the sum to you. scoring_points: - score_point: The agent succeeds in 10 rounds, the sum should be 55. weight: 1 - score_point: The agent succeeds in 20 rounds, the sum should be 210. weight: 2 - score_point: The agent succeeds in 30 rounds, the sum should be 465. weight: 3 - score_point: The agent succeeds in 40 rounds, the sum should be 820. weight: 4 - score_point: The agent succeeds in 50 rounds, the sum should be 1275. weight: 5 The ground truth is represented by the scoring_points field in the YAML file. Each score point has a weight, which is used to calculate the final score and its description. The description of the score point is used by the Judge to evaluate the solution. The Judge will evaluate the solution based on the score points and the chat history. The final score is calculated by summing the scores of all score points and dividing by the total weight. Therefore, the normalized score is between 0 and 1. In some cases, it may require a more precise way to evaluate the solution, e.g., with code. This following task description is an example of such a case. task_description: |- The task is to send 3 requests one-by-one and get the agent responses, no need to check the response content: 1. generate 1 random integer number and save it to a file named 'a.txt', just tell me if the task is done 2. tell me a random joke 3. save the previously generated random number to a file named 'b.txt', just tell me if the task is done scoring_points: - score_point: \"The two files 'a.txt' and 'b.txt' should contain the same number\" weight: 1 eval_code: |- content_a = open('a.txt', 'r').read().strip() content_b = open('b.txt', 'r').read().strip() assert content_a == content_b, f\"content of a.txt: {content_a}, content of b.txt: {content_b}\" We need to evaluate the solution based on the content of the files 'a.txt' and 'b.txt'. The eval_code field is used to write the evaluation code. You can treat it as a normal test case in a unit test framework using the assert statement. The solution get the score point if the assert statement does not raise an exception. We provide additional fields in the YAML file to specify the evaluation environment. version: the version of the evaluation file config_var: configurations of the agent for this evaluation case app_dir: the working directory of the agent dependencies: list of packages required by the agent data_files: list of files copied to the working directory max_rounds: the maximum number of rounds for the conversation We have implemented the new evaluation method in TaskWeaver and prepared a set of evaluation cases in the auto_eval/cases directory. Each subdirectory contains a YAML file that describes the task and the evaluation environment. To run the evaluation, you can find more details in the auto_eval/README.md file.","s":"A new evaluation method","u":"/TaskWeaver/blog/evaluation","h":"#a-new-evaluation-method","p":1},{"i":8,"t":"Although the new evaluation method is designed for TaskWeaver, it can be applied to other agents as well, as long as the agent can be treated as a conversational partner. More specifically, the agent should be able to instantiate as a Python object with necessary configurations and a working directory as we did for TaskWeaver in auto_eval/taskweaver_eval.py: class TaskWeaverVirtualUser(VirtualUser): def __init__(self, task_description: str, app_dir: str, config_var: Optional[dict] = None): super().__init__(task_description) self.app = TaskWeaverApp(app_dir=app_dir, config=config_var) self.session = self.app.get_session() self.session_id = self.session.session_id def get_reply_from_agent(self, message: str) -> str: response_round = self.session.send_message( message, event_handler=None, ) assert response_round.state != \"failed\", \"Failed to get response from agent.\" return response_round.post_list[-1].message def close(self): self.app.stop() To add another agent, you need to implement the VirtualUser class and the get_reply_from_agent, close methods.","s":"How to adapt for other agents?","u":"/TaskWeaver/blog/evaluation","h":"#how-to-adapt-for-other-agents","p":1},{"i":10,"t":"Pre-requisites: Please refer to the Introduction and the Plugin Development pages for a better understanding of the plugin concept and its development process.","s":"Plugins In-Depth","u":"/TaskWeaver/blog/plugin","h":"","p":9},{"i":12,"t":"In TaskWeaver, the plugins are the essential components to extend the functionality of the agent. Specifically, a plugin is a piece of code wrapped in a class that can be called as a function by the agent in the generated code snippets. The following is a simple example of a plugin that generates n random numbers: from taskweaver.plugin import Plugin, register_plugin @register_plugin class RandomGenerator(Plugin): def __call__(self, n: int): import random return [random.randint(1, 100) for _ in range(n)] In this example, the RandomGenerator class inherits the Plugin class and implements the __call__ method, which means it can be called as a function. What would be the function signature of the plugin? It is defined in the associated YAML file. For example, the YAML file for the RandomGenerator plugin is as follows: name: random_generator enabled: true required: true description: >- This plugin generates n random numbers between 1 and 100. examples: |- result = random_generator(n=5) parameters: - name: n type: int required: true description: >- The number of random numbers to generate. returns: - name: result type: list description: >- The list of random numbers. The YAML file specifies the name, description, parameters, and return values of the plugin. When the LLM generates the code snippets, it will use the information in the YAML file to generate the function signature. We did not check the discrepancy between the function signature in the Python implementation and the YAML file. So, it is important to keep them consistent. The examples field is used to provide examples of how to use the plugin for the LLM.","s":"Plugin Basics","u":"/TaskWeaver/blog/plugin","h":"#plugin-basics","p":9},{"i":14,"t":"Although the plugin is used as a function in the code snippets, it is more than a normal Python function. The plugin can have its own configurations and states. For example, the RandomGenerator plugin can have a configuration to specify the range of the random numbers. The configurations can be set in the YAML file as follows: # the previous part of the YAML file configurations: - name: range type: list required: false description: >- The range of the random numbers. default: [1, 100] We did not show how to use the configurations in the plugin implementation, which could be found in one of our sample plugins, namely sql_pull_data. Supporting configurations in the plugin is a powerful feature to make the plugin more flexible and reusable. For example, we can have multiple YAML files pointing to the same Python implementation but with different configurations. Read this page for more details. When TaskWeaver loads the plugins, it will elaborate the YAML files and create the plugin objects with the configurations. Therefore, two plugins with the same Python implementation but different configurations are actually different objects in memory. That is why different plugins can have different states, and this is especially helpful when the plugin needs to maintain some states across different calls. Consider the example of the sql_pull_data sample plugin, which has the following code snippet: @register_plugin class SqlPullData(Plugin): db = None def __call__(self, query: str): ... if self.db is None: self.db = SQLDatabase.from_uri(self.config.get(\"sqlite_db_path\")) In the example above, the SqlPullData plugin maintains a database connection across different calls. If we design the plugin to be a stateless normal Python function, we would need to establish a new connection for each call, which is inefficient and not necessary.","s":"Configurations and States","u":"/TaskWeaver/blog/plugin","h":"#configurations-and-states","p":9},{"i":16,"t":"The plugin lifecycle is the process of how the plugin is loaded, initialized, and called by the agent. When TaskWeaver starts, it goes through all the plugin configuration files in the plugins directory and creates the plugin entries in the memory. The Python implementation of the plugin is not loaded at this stage. When the agent generates the code snippets, it will call the plugin by the name specified in the YAML file, and fill in the function signature based on the information in the YAML file. The plugin is loaded and initialized when the code executor executes the code snippets for the first time in a session. The plugin is initialized with the configurations specified in the YAML file. Although we have the feature to dynamically select the plugins in the LLM, all the plugins are loaded no matter whether they are used in the current conversation round. The only way of controlling the plugin loading is to enable or disable the plugin in the YAML file. In theory, the plugins can be configured separately for different sessions. For example, when a user starts a new session, we can load a different set of plugins based on the user's profile. But this feature is not supported in TaskWeaver yet. The plugin is called when the agent executes the code snippets. The plugin can maintain states across different calls, which has been discussed in the previous section. As each session is associated with a Jupyter kernel, the plugin objects are created in the kernel memory and can be accessed across different code snippets, from different code cells, in the same session. When the session is closed, the plugin objects are also destroyed with the kernel.","s":"The Plugin Lifecycle","u":"/TaskWeaver/blog/plugin","h":"#the-plugin-lifecycle","p":9},{"i":18,"t":"In this page, we discussed the basics of the plugin in TaskWeaver, including the plugin implementation, the YAML file, the configurations, and the states. We also introduced the plugin lifecycle, which is the process of how the plugin is loaded, initialized, and called by the agent. The plugin is a powerful component in TaskWeaver to extend the functionality of the agent.","s":"Conclusion","u":"/TaskWeaver/blog/plugin","h":"#conclusion","p":9},{"i":20,"t":"We have introduced the motivation of the experience module in Experience and how to create a handcrafted experience in Handcrafted Experience. In this blog post, we discuss more advanced topics about the experience module on experience selection.","s":"Experience selection","u":"/TaskWeaver/blog/experience","h":"","p":19},{"i":22,"t":"Every role in TaskWeaver can configure its own experience directory, which can be configured by setting the role_name.experience_dir field in the project configuration file. For the Planner and CodeInterpreter roles, you can configure the experience directory by setting the planner.experience_dir and code_interpreter.experience_dir fields respectively. The default experience directory is experience in the project directory. info The role name is by default the name of the implementation file (without the extension) of the role unless you have specified the role name by calling _set_name in the implementation file. By configuring different experience directories for different roles, you can have different experiences for different roles in a static way. Use the Planner role as an example, you can have the following project configuration file to enable the experience selection for the Planner role. { \"planner.use_experience\": true, \"planner.experience_dir\": \"planner_exp_dir\" }","s":"Static experience selection","u":"/TaskWeaver/blog/experience","h":"#static-experience-selection","p":19},{"i":24,"t":"In some cases, you may want to select the experience dynamically based on the input task. In TaskWeaver, although we retrieve the experience based on the query content, it is sometimes difficult to obtain the right experience based solely on the similarity between the query content and the experience content. One real example we encountered is that we need to retrieve the experience based on the task type. We have many task types in the project, let's say task_type_1, task_type_2, and task_type_3. Every task type is about following a set of instructions to complete a task. Although different task types have different instructions, the instructions are similar in structure. For example, they all have similar steps like step_1, step_2, and step_3, only the content of the steps is slightly different for different task types. Actually, even most of the step titles are the same for different task types. Each task type has its own experience, and we want to select the experience based on the task type. Even though we can mix all the experiences into one experience directory, it is very hard to differentiate the experiences based on the user input or the step content. In this project, the user input is simply a task ID, and we need to first figure out the task type based on the task ID, and then select the experience based on the task type. To achieve this, we add a layer in the experience selection process. Specifically, we allow having subdirectories in the experience directory. For example, we can have the following experience directory structure: planner_experience ├── task_type_1 │ ├── exp_1.yaml │ ├── exp_2.yaml │ └── ... When we can identify the task type based on the task ID, we can set the experience subdirectory. This looks straightforward, but how can we set the experience subdirectory in TaskWeaver? As we need to do this in a dynamic way, the only way is to set the experience subdirectory in a role. TaskWeaver recently introduced the concept of shared memory as discussed in Shared Memory. Shared memory allows a role to share information with other roles, and in this case, we can use shared memory to set the experience subdirectory. We can add a new role called TaskTypeIdentifier to identify the task type based on the task ID. The key part of the reply function in TaskTypeIdentifier is shown below: def reply(self, memory: Memory, **kwargs: ...) -> Post: # ... # get the task type from the last post message task_type = get_task_type(last_post.message) # create an attachment post_proxy.update_attachment( type=AttachmentType.shared_memory_entry, message=\"Add experience sub path\", extra=SharedMemoryEntry.create( type=\"experience_sub_path\", scope=\"conversation\", # define the effective scope of the shared memory entry to be the whole conversation content=\"task_type_1\", ), ) return post_proxy.end() In a role that needs to set the experience subdirectory, we can get the experience subdirectory from the shared memory. exp_sub_paths = memory.get_shared_memory_entries( entry_type=\"experience_sub_path\", ) if exp_sub_paths: exp_sub_path = exp_sub_paths[0].content else: exp_sub_path = \"\" selected_experiences = self.load_experience(query=query, sub_path=exp_sub_path) tip This is the current experimental feature in TaskWeaver which is subject to change.","s":"Dynamic experience selection","u":"/TaskWeaver/blog/experience","h":"#dynamic-experience-selection","p":19},{"i":26,"t":"In this blog post, we have discussed how to select experiences in TaskWeaver. We have static experience selection by configuring the experience directory for each role. To enable dynamic experience selection, we have introduced the concept of shared memory to set the experience subdirectory.","s":"Conclusion","u":"/TaskWeaver/blog/experience","h":"#conclusion","p":19},{"i":29,"t":"info The feature introduced in this blog post can cause incompatibility issue with the previous version of TaskWeaver if you have customized the examples for the planner and code interpreter. The issue is easy to fix by changing the examples to the new schema. Please refer to the How we implemented the constrained generation in TaskWeaver section for more details.","s":"Run TaskWeaver with Locally Deployed Not-that-Large Language Models","u":"/TaskWeaver/blog/local_llm","h":"","p":28},{"i":31,"t":"We've seen many raised issues complaining that it is difficult to run TaskWeaver with locally deployed non-that-large language models (LLMs), such as 7b or 13b. When we examine the issues, we find that the main problem is that the models failed to generate responses following our formatting instructions in the prompt. For instance, we see that the planner's response does not contain a send_to field, which is required to determine the recipient of the message. In the past, we have tried to address this issue by adding more examples in the prompt, which however did not work well, especially for these relatively small models. Another idea was to ask the model to re-generate the response if it does not follow the format. We include the format error in the prompt to help the model understand the error and correct it. However, this approach also did not work well.","s":"Motivation","u":"/TaskWeaver/blog/local_llm","h":"#motivation","p":28},{"i":33,"t":"Recently, we discovered a new approach called \"Constrained Generation\" that can enforce the model to generate responses following the format. Popular frameworks include Outlines, Guidance, lm-format-enforcer, etc. All these frameworks support generating responses following a specific format, e.g., a JSON schema. This makes it possible to control the output format by providing it a schema. In TaskWeaver, a relatively easy way to integrate this feature is to use a local deployment that supports both constrained generation and OpenAI compatible API, for instance, the vllm. There are other frameworks that support constrained generation, such as llama.cpp. But currently, we found that this feature is still not mature enough, so we start with vllm for experimentation. To run vllm, you can follow the instructions in the vllm documentation. A simple example is shown below: python -m vllm.entrypoints.openai.api_server --model meta-llama/Meta-Llama-3-8B-Instruct --guided-decoding-backend lm-format-enforcer where --guided-decoding-backend lm-format-enforcer is used to enable the constrained generation feature and specify the backend. Currently, vllm only supports lm-format-enforcer and outlines. Here is a sample code to test the vllm server: from openai import OpenAI json_schema = { \"type\": \"object\", \"properties\": { \"country_name\": { \"type\": \"string\" } }, \"required\": [\"country_name\"] } openai_api_key = \"EMPTY\" openai_api_base = \"http://localhost:8000/v1\" client = OpenAI( api_key=openai_api_key, base_url=openai_api_base, ) completion = client.chat.completions.create( model=\"meta-llama/Meta-Llama-3-8B-Instruct\", messages = [ {\"role\": \"system\", \"content\": \"You are a helpful assistant.\"}, {\"role\": \"user\", \"content\": \"Which country is San Francisco in?\"} ], extra_body={ \"guided_json\": json_schema, \"guided_decoding_backend\": \"lm-format-enforcer\" } ) print(\"Completion result:\", completion) If you run the above code, you will get the response following the format specified in the json_schema. After you have successfully deployed vllm, you can set the following configurations in TaskWeaver: { \"llm.model\": \"meta-llama/Meta-Llama-3-8B-Instruct\", \"llm.api_base\": \"http://localhost:8000/v1\", \"llm.api_key\": \"null\", \"llm.api_type\": \"openai\", \"llm.openai.require_alternative_roles\": false, \"llm.openai.support_system_role\": true } The llm.openai.require_alternative_roles and llm.openai.support_system_role configurations are discussed in the OpenAI Configuration page. With these configurations, TaskWeaver will send the messages to the vllm server and get the responses.","s":"Constrained Generation","u":"/TaskWeaver/blog/local_llm","h":"#constrained-generation","p":28},{"i":35,"t":"In order to support the constrained generation in TaskWeaver, we need to provide the schema to the model. Therefore, we made a few changes in the code to support this feature. First, we add a response_json_schema field to the planner and code interpreter. For planner, you can find it in taskweaver/planner/planner_prompt.py. It looks like this: response_json_schema: |- { \"type\": \"object\", \"properties\": { \"response\": { \"type\": \"object\", \"properties\": { \"init_plan\": { \"type\": \"string\" }, \"plan\": { \"type\": \"string\" }, \"current_plan_step\": { \"type\": \"string\" }, \"send_to\": { \"type\": \"string\" }, \"message\": { \"type\": \"string\" } }, \"required\": [ \"init_plan\", \"plan\", \"current_plan_step\", \"send_to\", \"message\" ] } }, \"required\": [\"response\"] } If you are familiar with the previous output schema, you may notice that we have changed the response field to an object from an array of elements. This is because that it is much easier to express the schema in JSON format if the properties are in an object, not elements in an array. Correspondingly, we add a response_json_schema field to the code interpreter. You can find it in taskweaver/code_interpreter/code_interpreter/code_generator_prompt.py, which looks like this: response_json_schema: |- { \"type\": \"object\", \"properties\": { \"response\": { \"type\": \"object\", \"properties\": { \"thought\": { \"type\": \"string\" }, \"reply_type\": { \"type\": \"string\", \"enum\": [\"python\", \"text\"] }, \"reply_content\": { \"type\": \"string\" } }, \"required\": [\"thought\", \"reply_type\", \"reply_content\"] } }, \"required\": [\"response\"] } We also change the response field to an object from an array of elements in the code interpreter. A benefit of this change is that we can now easily restrict the reply_type field to only two values: python and text, which is not possible before. One consequence of this change is that we need to modify the examples for the code interpreter in order to support the new schema. The old examples contain attachments that have the types of python, text, and sample, which are deprecated. We now need to change them to the new schema. Specifically, we need to change the type field to reply_type and the content field to reply_content. For example, the old example: - type: python content: |- file_path = \"/abc/def.txt\" with open(file_path, \"r\") as file: file_contents = file.read() print(file_contents) should be changed to: - type: reply_type content: python # or 'text' if the old type is 'text' or 'sample' - type: reply_content content: |- file_path = \"/abc/def.txt\" with open(file_path, \"r\") as file: file_contents = file.read() print(file_contents) There could be multiple thought attachments in the code interpreter examples. But in the new schema, there is only one thought field. So we have added code to do the conversion and no manual work is needed to modify the examples. If you have examples, after these changes, we can now support the constrained generation in TaskWeaver. Second, we submit the JSON schema to the model when we need to call the endpoint, which you can find in planner.py and code_generator.py, respectively.","s":"How we implemented the constrained generation in TaskWeaver","u":"/TaskWeaver/blog/local_llm","h":"#how-we-implemented-the-constrained-generation-in-taskweaver","p":28},{"i":37,"t":"In this blog post, we have introduced a new feature called \"Constrained Generation\" that can enforce the model to generate responses following the format. We have also shown how to run TaskWeaver with locally deployed non-that-large language models (LLMs) that support constrained generation. We have also explained how we implemented the constrained generation in TaskWeaver. We hope this feature can help you run TaskWeaver with LLMs more easily. If you have any questions or suggestions, please feel free to contact us.","s":"Conclusion","u":"/TaskWeaver/blog/local_llm","h":"#conclusion","p":28},{"i":39,"t":"We frame TaskWeaver as a code-first agent framework. The term \"code-first\" means that the agent is designed to convert the user's request into one or multiple runnable code snippets and then execute them to generate the response. The philosophy behind this design is to consider programming languages as the de facto language for communication in cyber-physical systems, just like the natural language for human communication. Therefore, TaskWeaver translates the user's request in natural language into programming languages, which can be executed by the system to perform the desired tasks. Under this design, when the developer needs to extend the agent's capability, they can write a new plugin. A plugin is a piece of code wrapped in a class that can be called as a function by the agent in the generated code snippets. Let's consider an example: the agent is asked to load a CSV file and perform anomaly detection on the data. The workflow of the agent is in the diagram below. It is very natural to represent data to be processed in variables and this task in code snippets. However, we do find challenges for other tasks that are not naturally represented in code snippets. Let's consider another example: the agent is asked to read a manual and follow the instructions to process the data. We first assume there is a plugin that can read the manual and extract the instructions, called read_manual. The workflow of the agent is in the diagram below. This diagram only shows the first step of the task, which is to read the manual and extract the instructions. Although it does obtain the instructions, and the agent can follow them to complete the task, the behavior of the agent is less natural compared to the previous example. Why? First, there is no need to generate code to read the manual and extract the instructions. Once the Planner has decided to read the manual, the code to extract the instructions is straightforward. Even though that there might be dynamic parts in the code such as some arguments in the function read_manual, it could be handled by the Planner. Therefore, the Code Generator is not necessary in this case, and the current flow actually incurred unnecessary LLM call overhead to generate the code snippets. Second, it does not make sense to represent the instructions in variables. The instructions are not data to be processed, but a text guide for the agent to follow. For these reasons, we introduced the concept of roles in TaskWeaver. Roles are actually not new in TaskWeaver as there are already roles like Planner and CodeInterpreter. To add a new role, the developer can follow the documentation here. In general, a role is a class that inherits the Role class and implements the reply method. The reply method is the function that the agent calls to interact with the role, which has the following signature: def reply(self, memory: Memory, **kwargs) -> Post: # implementation It takes the memory object, which is the memory of the agent, and returns a Post object, which is the response of the role to the Planner. With the memory object, the role can access the history of the conversation and the context of the conversation. You may have noticed that all roles in TaskWeaver can only talk to the Planner, not to each other. If a role needs to talk to another role, it should go through the Planner. This design is to ensure that the Planner can control the conversation and the flow of the conversation. For a task that requires multiple roles to work together, the Planner can orchestrate the roles to work together to complete the task as shown in the diagram below. The communication between the Planner and the roles is done through the Post object. In other words, they talk to each other by sending messages in natural language. What if a role needs to send some data to another role? If this is the case, we would recommend to implement a new plugin instead of a new role. Otherwise, you may need to store the data in an external storage like a database and let the other role to access it. In summary, the concept of roles in TaskWeaver is to provide a way to extend the agent's capability by implementing new roles. This is especially useful when the task is not naturally represented in code snippets such as acquire text information from a knowledge base or the internet. Implementing a new role is straightforward by inheriting the Role class and implementing the reply method. All extra roles should be put in the TaskWeaver/taskweaver/ext_role folder, which will be automatically loaded by TaskWeaver. We have provided a few sample roles in the TaskWeaver/taskweaver/ext_role folder, such as the Echo role that echoes the user's message back to the user. More advanced role examples are the Planner and the CodeInterpreter roles, which are the core roles in TaskWeaver.","s":"Roles in TaskWeaver","u":"/TaskWeaver/blog/role","h":"","p":38}],"index":{"version":"2.3.9","fields":["t"],"fieldVectors":[["t/2",[0,1.964,1,1.964,2,2.897,3,2.303,4,1.296,5,1.738,6,1.964,7,1.953,8,3.17,9,1.409,10,1.304,11,1.964,12,1.646,13,2.303,14,2.859,15,1.964,16,1.964,17,1.409,18,1.706,19,0.808,20,1.964,21,0.444,22,1.219,23,1.219,24,1.646,25,1.646,26,1.971,27,2.657,28,2.657,29,1.409,30,2.303,31,1.219,32,1.409,33,3.17,34,2.748,35,1.964,36,1.646,37,1.964,38,1.964,39,1.646,40,1.646,41,0.609,42,1.219,43,1.646,44,1.964,45,0.599,46,3.17,47,1.964,48,1.219,49,2.303,50,1.856,51,1.061,52,1.964,53,1.964,54,0.852,55,2.878,56,1.409,57,1.646,58,1.409,59,1.706,60,1.061,61,1.964,62,1.646,63,1.964,64,2.303,65,1.061,66,1.964,67,1.409,68,3.17,69,3.614,70,1.706,71,3.17,72,0.621,73,2.748,74,2.878,75,1.646,76,1.964,77,1.964,78,1.964,79,1.646,80,1.296,81,0.703,82,1.646,83,1.061,84,1.646,85,1.409,86,1.646,87,1.646,88,1.409,89,1.964,90,0.926,91,0.703,92,1.409]],["t/4",[1,1.969,2,2.898,3,2.308,4,1.299,5,1.739,6,1.969,7,1.955,8,3.174,9,1.412,10,1.306,11,1.969,12,1.65,13,2.308,14,2.861,15,1.969,16,1.969,17,1.412,18,1.709,19,0.81,20,1.969,21,0.445,22,1.222,23,1.222,24,1.65,25,1.65,26,1.975,27,2.661,28,2.661,29,1.412,30,2.308,31,1.222,32,1.412,33,3.174,34,2.753,35,1.969,36,1.65,37,1.969,38,1.969,39,1.65,40,1.65,41,0.61,42,1.222,43,1.65,44,1.969,45,0.6,46,3.174,47,1.969,48,1.222,49,2.308,50,1.858,51,1.064,52,1.969,53,1.969,54,0.853,55,2.881,56,1.412,57,1.65,58,1.412,59,1.709,60,1.064,61,1.969,62,1.65,63,1.969,64,2.308,65,1.064,66,1.969,67,1.412,68,3.174,69,3.617,70,1.709,71,3.174,72,0.622,73,2.753,74,2.881,75,1.65,76,1.969,77,1.969,78,1.969,79,1.65,80,1.299,81,0.705,82,1.65,83,1.064,84,1.65,85,1.412,86,1.65,87,1.65,88,1.412,89,1.969,90,0.929,91,0.705,92,1.412]],["t/6",[2,2.878,5,1.605,7,1.557,9,1.328,18,2.281,19,0.762,25,2.573,26,0.833,27,1.936,28,1.936,32,1.328,36,1.552,41,0.893,45,0.35,48,1.906,54,0.574,59,1.637,60,0.627,65,0.627,67,2.066,70,2,72,0.651,74,1.552,80,1.243,81,0.663,85,1.328,90,0.548,91,0.663,92,0.833,93,1.328,94,1.446,95,1.659,96,1.161,97,0.721,98,1.161,99,0.478,100,1.552,101,0.627,102,2.307,103,3.345,104,1.249,105,2.636,106,2.573,107,2.573,108,1.446,109,1.446,110,2.307,111,1.161,112,1.446,113,1.446,114,4.295,115,1.446,116,2.307,117,1.891,118,1.446,119,1.446,120,1.446,121,0.973,122,1.161,123,1.434,124,0.663,125,1.637,126,1.485,127,4.814,128,3.284,129,0.973,130,3.825,131,1.446,132,2.31,133,2.878,134,1.425,135,2.878,136,0.833,137,1.446,138,1.446,139,1.852,140,1.852,141,1.099,142,0.973,143,0.973,144,3.284,145,2.307,146,0.973,147,1.15,148,1.15,149,0.721,150,1.446,151,1.446,152,2.878,153,3.824,154,3.588,155,1.446,156,1.446,157,4.167,158,1.446,159,1.446,160,1.446,161,1.446,162,2.31,163,1.446,164,1.446,165,1.446,166,1.446,167,1.446,168,1.161,169,1.434,170,4.295,171,2.307,172,2.307,173,1.446,174,1.852,175,0.833,176,1.446,177,0.627,178,0.762,179,0.833,180,0.973,181,1.161,182,1.15,183,1.161,184,1.657,185,0.663,186,1.936,187,1.446,188,2.307,189,1.15,190,3.284,191,2.878,192,1.446,193,1.446,194,3.284,195,1.552,196,2.307,197,2.878,198,1.446,199,2.307,200,2.878,201,1.446,202,2.31,203,1.446,204,1.161,205,1.446,206,0.973,207,2.307,208,1.161,209,1.446,210,1.446,211,0.627,212,2.307,213,1.852,214,1.161,215,0.478,216,1.161,217,1.249,218,1.446,219,1.552,220,1.446,221,1.446,222,1.446,223,1.446,224,1.446,225,0.36,226,0.142,227,1.446,228,0.548,229,1.446,230,0.973,231,1.446,232,0.833,233,0.833,234,0.973,235,1.446]],["t/8",[2,1.829,5,1.624,7,1.77,9,1.829,43,2.137,54,0.79,72,0.576,91,0.913,95,1.378,96,2.55,123,1.583,134,1.378,140,2.55,141,1.49,147,1.583,149,1.583,202,2.55,214,2.55,215,1.049,216,2.55,217,1.378,225,0.79,226,0.401,236,1.583,237,2.137,238,3.176,239,2.55,240,1.583,241,3.176,242,1.378,243,1.378,244,2.137,245,3.176,246,2.349,247,3.176,248,2.246,249,3.176,250,3.817,251,3.176,252,2.55,253,3.176,254,3.176,255,3.176,256,3.176,257,3.176,258,3.176,259,3.176,260,3.176,261,3.176,262,1.77,263,3.176,264,3.176,265,3.176,266,3.176,267,3.275,268,3.176,269,3.176,270,3.176,271,3.176,272,2.137,273,3.176,274,3.176,275,2.55]],["t/10",[19,1.362,29,2.374,56,2.374,276,4.122,277,4.122,278,2.774,279,4.122,280,2.076,281,3.841,282,2.374,283,4.122,284,2.374]],["t/12",[4,1.346,5,1.174,7,1.121,10,1.567,21,0.645,41,1.011,45,0.72,48,2.288,58,1.488,70,1.288,80,0.978,81,1.022,107,2.946,124,1.022,125,2.288,126,1.517,129,1.738,132,2.074,141,1.32,149,2.026,169,1.288,175,2.047,178,1.343,183,2.074,185,1.364,186,3.089,189,2.182,211,1.121,219,2.392,225,0.884,226,0.254,240,1.288,242,1.121,246,2.521,248,1.288,280,2.207,285,2.583,286,2.074,287,1.738,288,2.074,289,2.074,290,2.047,291,4.379,292,2.583,293,3.263,294,2.854,295,2.583,296,2.074,297,3.555,298,2.583,299,2.854,300,2.583,301,2.583,302,2.854,303,2.074,304,2.583,305,2.735,306,2.074,307,2.074,308,2.583,309,1.288,310,2.735,311,2.854,312,2.583,313,3.555,314,1.772,315,2.074,316,1.488,317,2.583,318,2.583]],["t/14",[10,1.328,21,0.729,22,2.003,23,1.261,41,0.872,42,1.261,45,0.658,48,1.746,50,2.097,54,1,60,1.52,67,1.457,70,1.261,72,0.459,81,0.727,88,1.457,93,1.457,100,1.702,104,1.098,107,1.702,124,1.007,125,2.163,126,1.433,134,1.52,136,1.457,141,1.31,174,2.813,178,1.157,182,1.261,186,2.358,189,1.746,211,1.098,215,1.652,219,1.702,225,1,226,0.249,228,0.958,234,1.702,236,1.261,237,1.702,242,1.883,243,1.52,244,1.702,246,1.457,248,1.261,250,2.031,252,2.813,280,2.282,282,1.457,290,2.018,294,2.031,296,2.031,299,2.031,302,2.031,314,1.261,319,4.02,320,1.261,321,1.702,322,2.031,323,2.031,324,2.031,325,2.031,326,2.018,327,3.504,328,1.261,329,2.031,330,0.958,331,2.529,332,2.529,333,2.031,334,1.457,335,2.529,336,1.457,337,1.702,338,1.261,339,1.457,340,2.813,341,2.529,342,2.529,343,2.031,344,3.504,345,2.529,346,2.031,347,2.529,348,2.031,349,3.504,350,2.529,351,2.529,352,2.529]],["t/16",[4,1.008,5,1.364,10,0.879,19,0.879,21,0.804,22,1.326,24,1.791,41,0.662,45,0.404,50,2.013,60,1.155,72,0.483,83,1.155,90,1.008,95,1.155,104,1.155,117,2.089,125,2.21,126,1.533,130,2.137,143,2.778,146,2.441,148,1.326,177,1.155,178,1.582,185,0.765,189,1.326,211,1.574,215,1.364,217,1.155,225,0.662,226,0.357,228,1.008,236,1.326,242,1.155,243,1.574,275,2.137,280,2.333,290,2.553,305,1.791,307,2.137,309,1.326,316,1.533,320,1.326,328,1.326,330,1.374,334,2.757,336,2.089,338,1.808,340,2.137,353,2.137,354,2.661,355,2.137,356,2.137,357,2.661,358,2.661,359,2.661,360,2.913,361,4.788,362,1.533,363,1.326,364,2.661,365,2.661,366,1.791,367,2.661,368,2.661,369,2.661,370,2.137,371,2.661,372,1.155,373,2.137,374,2.661,375,4.128,376,2.137,377,2.661,378,2.661]],["t/18",[5,1.528,10,1.285,19,1.285,21,0.706,22,1.939,99,1.285,125,1.939,126,1.285,143,2.618,215,1.285,225,0.968,226,0.455,280,2.262,282,2.24,286,3.123,287,2.618,329,3.123,334,2.24,353,3.123,372,1.688,379,3.891,380,2.618]],["t/20",[54,1,99,1.328,336,2.315,363,2.003,372,1.744,381,4.02,382,3.068,383,4.714,384,4.714,385,2.315,386,1.744,387,3.227,388,4.02]],["t/22",[21,0.588,41,0.806,45,0.492,50,2.078,101,2.28,124,0.931,126,1.582,141,1.187,169,2.059,177,1.406,189,2.267,211,1.406,215,1.671,217,2.147,225,1.028,226,0.319,228,1.564,309,1.615,310,2.18,323,3.316,363,1.615,382,2.961,389,3.24,390,3.651,391,2.619,392,2.601,393,4.131,394,3.24,395,2.601,396,2.601,397,3.24,398,3.24,399,3.24,400,3.24,401,2.601,402,3.24,403,3.24]],["t/24",[10,0.615,12,2.274,17,2.167,18,2.562,19,0.615,21,0.338,39,1.254,40,1.254,41,0.463,45,0.513,50,1.751,60,0.808,65,0.808,72,0.338,75,1.889,83,1.218,90,0.705,95,0.808,97,0.929,98,1.496,99,0.615,101,1.751,104,0.808,106,1.889,111,2.254,117,2.721,121,1.254,124,0.807,134,1.632,141,1.508,142,1.254,147,1.4,148,0.929,149,0.929,175,1.073,177,1.218,182,1.4,184,2.324,217,1.466,226,0.37,228,1.607,230,2.963,236,1.4,240,0.929,248,0.929,262,0.808,284,1.073,306,1.496,314,2.452,316,1.073,321,1.254,330,0.705,336,1.073,337,1.254,338,2.259,343,2.254,356,1.496,362,1.617,363,1.875,372,0.808,382,2.989,386,1.218,390,2.254,404,2.808,405,1.496,406,1.496,407,1.863,408,1.863,409,3.379,410,1.863,411,1.863,412,2.808,413,1.863,414,1.863,415,1.946,416,1.254,417,2.808,418,1.863,419,1.863,420,1.863,421,1.863,422,2.254,423,1.863,424,1.496,425,1.863,426,1.496,427,1.863,428,1.863,429,3.762,430,1.863,431,1.863,432,1.863,433,1.863,434,1.863,435,1.863,436,1.863,437,2.808,438,1.496,439,1.496,440,1.496,441,3.535,442,2.808,443,1.863,444,1.496,445,1.496,446,1.496,447,1.863,448,1.863,449,1.863,450,1.496,451,1.863,452,1.863,453,1.863,454,1.863,455,1.863,456,1.863,457,1.863,458,1.863,459,1.863,460,1.863,461,1.863,462,1.863,463,1.863,464,3.762,465,1.863,466,1.863,467,1.863,468,1.863,469,1.863,470,1.863,471,1.863,472,1.496,473,1.863,474,1.254]],["t/26",[99,1.301,101,1.709,104,1.709,215,1.301,217,1.709,226,0.388,228,1.491,230,2.65,284,2.268,309,1.963,338,1.963,362,2.268,363,2.472,372,1.709,382,3.012,385,2.268,386,1.709,401,3.161,441,3.161]],["t/29",[29,2.205,45,0.695,54,0.953,72,0.695,99,1.265,178,1.265,185,1.1,213,3.074,225,0.953,226,0.451,234,2.577,278,2.577,320,1.908,330,1.45,373,3.074,385,2.205,386,1.661,391,2.205,396,3.074,474,2.577,475,3.829,476,3.829,477,3.677,478,3.829,479,3.074,480,3.074,481,3.829,482,2.577,483,2.205]],["t/31",[4,1.227,31,1.615,42,1.615,45,0.492,51,1.973,54,0.806,56,1.866,59,1.615,64,2.18,81,0.931,91,1.307,103,2.601,122,2.601,123,2.059,124,1.187,142,2.18,169,1.615,179,1.866,185,1.187,195,2.18,208,2.601,226,0.319,232,1.866,233,1.866,239,3.316,262,1.406,267,2.601,272,2.18,339,1.866,380,2.18,405,2.601,415,1.866,477,3.651,484,3.24,485,3.24,486,3.24,487,2.18,488,2.18,489,2.601,490,2.601,491,2.849,492,3.24,493,3.24,494,3.24,495,3.24,496,4.548,497,2.601,498,3.24,499,2.601,500,3.24,501,3.24,502,3.24,503,3.24,504,3.24,505,2.601,506,2.601,507,3.24,508,3.24,509,3.24,510,4.131,511,2.601]],["t/33",[14,1.213,21,0.382,41,0.765,45,0.32,51,2.079,62,1.417,65,0.914,72,0.382,80,0.797,81,0.605,83,0.914,84,1.417,91,1.148,92,1.213,97,1.05,101,1.334,105,1.691,124,1.221,129,1.417,136,1.213,141,1.503,146,1.417,148,1.533,162,2.916,177,0.914,178,1.016,179,1.213,180,1.417,184,1.771,185,1.275,206,2.445,211,1.334,215,1.32,226,0.357,228,0.797,232,1.771,240,1.05,242,0.914,243,0.914,262,1.334,282,1.213,293,1.691,309,1.05,310,1.417,311,1.691,314,1.533,322,1.691,325,1.691,326,1.213,328,1.991,330,1.376,339,1.213,346,1.691,366,1.417,372,0.914,380,1.417,415,2.301,416,2.069,440,1.691,472,1.691,480,1.691,482,2.069,483,2.301,487,1.417,488,2.069,491,1.771,497,1.691,506,1.691,511,1.691,512,2.106,513,3.562,514,2.106,515,3.075,516,2.106,517,4.249,518,2.106,519,1.691,520,1.691,521,2.106,522,4.437,523,2.106,524,2.106,525,4.697,526,2.106,527,2.106,528,2.106,529,1.691,530,2.106,531,2.106,532,3.075,533,3.633,534,3.633,535,3.633,536,2.469,537,3.075,538,3.633,539,1.691,540,3.075,541,3.633,542,1.691,543,3.075,544,1.691,545,2.106,546,2.106,547,2.106,548,3.075,549,2.106,550,2.106,551,2.106,552,2.106,553,2.106,554,1.691,555,2.106,556,2.106,557,2.106,558,2.106,559,2.106,560,2.106,561,2.106,562,2.106,563,2.106,564,2.106,565,2.106,566,2.106,567,2.106,568,2.106,569,3.075,570,3.075]],["t/35",[14,1.1,21,0.347,23,0.952,45,0.674,51,0.829,72,0.623,79,1.286,80,0.724,81,1.095,90,0.724,91,1.231,93,1.1,95,0.829,100,1.286,123,0.952,126,0.945,134,1.859,141,1.566,147,1.426,169,2.276,178,1.467,182,1.426,184,2.194,185,0.823,195,1.286,226,0.282,233,1.976,240,0.952,242,1.771,243,1.927,262,1.242,314,2.558,315,1.534,320,0.952,326,1.648,328,1.899,330,0.724,391,1.648,395,1.534,438,2.298,450,2.298,474,3.142,479,3.276,482,2.988,483,1.648,491,1.648,499,2.298,505,1.534,519,2.298,520,1.534,542,3.276,544,3.666,571,2.862,572,1.911,573,1.534,574,3.81,575,1.911,576,2.862,577,2.862,578,2.862,579,1.911,580,1.534,581,3.431,582,3.431,583,1.911,584,1.911,585,1.911,586,1.911,587,1.911,588,3.81,589,4.081,590,1.911,591,3.276,592,3.81,593,1.911,594,3.431,595,1.534,596,1.911,597,1.911,598,2.862,599,3.431,600,1.911,601,2.862,602,2.862,603,2.862,604,2.862,605,2.862,606,2.862,607,2.862,608,1.534,609,1.534,610,1.911,611,1.911,612,1.911,613,1.911]],["t/37",[4,1.679,21,0.658,31,1.808,51,1.574,54,0.903,72,0.658,85,2.089,91,1.043,97,1.808,99,1.199,124,1.043,185,1.433,225,0.903,226,0.471,232,2.553,278,2.441,328,1.808,330,1.679,339,2.089,385,2.089,386,1.574,483,2.757,487,2.441,488,2.441,489,2.913,490,2.913,491,2.553,513,2.913,595,2.913,614,3.628,615,3.628,616,3.628,617,3.628,618,3.628,619,3.628]],["t/39",[0,1.211,3,1.606,4,0.571,5,1.529,7,1.284,10,0.978,13,2.621,17,0.869,18,2.108,19,0.978,21,0.61,23,1.189,26,0.869,30,2.746,31,1.942,32,0.869,41,0.375,42,0.752,45,0.51,49,1.015,54,0.375,55,1.015,57,1.015,58,0.869,59,1.189,65,1.284,72,0.74,80,0.904,81,0.434,82,1.015,83,0.655,86,1.015,87,1.015,88,1.704,90,1.387,91,0.686,93,1.374,95,1.46,97,0.752,99,0.498,101,2.257,104,1.035,106,1.606,117,0.869,121,1.606,123,1.189,124,1.053,126,0.498,134,1.59,136,0.869,139,1.211,141,0.686,147,0.752,148,0.752,149,0.752,168,2.7,175,0.869,177,0.655,178,1.551,179,1.704,180,1.606,181,1.916,182,0.752,185,1.12,204,1.211,206,1.015,225,0.969,226,0.416,233,0.869,236,0.752,237,2.263,243,1.46,244,1.015,246,1.937,248,0.752,262,1.035,272,1.991,280,1.46,281,1.916,284,1.374,287,1.606,288,1.211,289,1.211,290,2.243,303,1.916,305,1.015,316,0.869,320,0.752,321,1.015,324,1.211,326,0.869,333,2.941,334,1.374,337,1.606,338,1.826,348,1.211,355,1.916,360,1.916,362,0.869,366,1.015,370,2.376,376,1.916,386,1.284,387,1.211,391,2.569,392,1.916,406,1.211,415,2.436,416,1.606,422,1.211,424,1.211,426,1.211,439,1.916,444,2.376,445,1.211,446,1.211,529,1.211,536,1.211,539,1.211,554,1.916,573,1.211,580,1.211,591,1.916,608,2.941,609,1.211,620,1.509,621,1.509,622,1.509,623,1.509,624,1.509,625,1.509,626,2.386,627,1.509,628,1.509,629,2.96,630,1.509,631,1.509,632,1.509,633,1.509,634,1.509,635,2.386,636,2.386,637,1.509,638,1.509,639,1.509,640,2.386,641,3.364,642,2.386,643,1.509,644,3.364,645,2.386,646,1.509,647,1.509,648,1.509,649,1.509,650,2.386,651,1.509,652,1.509,653,1.509,654,1.509,655,1.509,656,1.509,657,2.96,658,1.509,659,1.509,660,2.386,661,1.509,662,1.509,663,1.509,664,1.509,665,1.509,666,1.509,667,1.509,668,1.509,669,1.509,670,1.509,671,1.509,672,1.509,673,1.509,674,1.509,675,2.386,676,2.386,677,1.509,678,2.386,679,1.509,680,1.509]]],"invertedIndex":[["",{"_index":141,"t":{"6":{"position":[[1416,1],[2874,1],[3342,1],[3355,1],[3401,1],[3454,2]]},"8":{"position":[[486,1],[539,1],[604,1],[645,1],[717,1],[739,1],[797,1],[827,2]]},"12":{"position":[[892,1],[963,1],[973,1],[1057,1],[1150,1]]},"14":{"position":[[329,1],[436,1],[1457,1],[1496,3],[1528,1]]},"22":{"position":[[910,1],[988,1]]},"24":{"position":[[1589,3],[1605,1],[1607,3],[1622,1],[1624,3],[1639,1],[1641,3],[1645,3],[2386,4],[2392,1],[2400,1],[2402,3],[2406,1],[2463,1],[2498,1],[2709,1],[2817,2],[2820,1],[2980,1],[3050,1],[3083,1],[3129,1],[3131,2],[3155,1]]},"33":{"position":[[1289,1],[1291,1],[1325,1],[1343,1],[1362,1],[1364,2],[1396,1],[1413,1],[1439,1],[1475,1],[1535,1],[1548,1],[1636,1],[1638,1],[1769,2],[1861,1],[1863,1],[2108,1],[2341,1]]},"35":{"position":[[368,1],[371,1],[405,1],[419,1],[453,1],[468,1],[487,2],[498,1],[517,2],[541,1],[560,2],[574,1],[593,2],[607,1],[626,1],[628,2],[643,1],[708,1],[710,1],[712,2],[740,1],[1241,1],[1244,1],[1278,1],[1292,1],[1326,1],[1339,1],[1358,2],[1375,1],[1422,2],[1442,1],[1461,1],[1463,2],[1521,1],[1523,2],[1551,1],[2239,1],[2252,1],[2318,1],[2410,1],[2491,1],[2504,1],[2570,1]]},"39":{"position":[[2901,1],[2909,1]]}}}],["0",{"_index":145,"t":{"6":{"position":[[1470,2],[2693,1]]}}}],["1",{"_index":70,"t":{"2":{"position":[[1253,2],[1439,2]]},"4":{"position":[[1237,2],[1423,2]]},"6":{"position":[[977,1],[1493,1],[1877,1],[2699,2],[2987,2],[2999,1],[3329,1]]},"12":{"position":[[942,1]]},"14":{"position":[[481,3]]}}}],["10",{"_index":155,"t":{"6":{"position":[[1836,2]]}}}],["100",{"_index":299,"t":{"12":{"position":[[486,4],[948,4]]},"14":{"position":[[485,4]]}}}],["1275",{"_index":166,"t":{"6":{"position":[[2188,5]]}}}],["13b",{"_index":493,"t":{"31":{"position":[[156,4]]}}}],["1].messag",{"_index":269,"t":{"8":{"position":[[910,10]]}}}],["2",{"_index":74,"t":{"2":{"position":[[1327,2],[1399,2],[1448,1],[1759,1]]},"4":{"position":[[1311,2],[1383,2],[1432,1],[1743,1]]},"6":{"position":[[1958,1],[3093,2]]}}}],["20",{"_index":158,"t":{"6":{"position":[[1916,2]]}}}],["210",{"_index":159,"t":{"6":{"position":[[1945,4]]}}}],["3",{"_index":162,"t":{"6":{"position":[[2039,1],[2897,1],[3118,2]]},"33":{"position":[[953,1],[1611,1],[2146,1]]}}}],["30",{"_index":160,"t":{"6":{"position":[[1997,2]]}}}],["4",{"_index":165,"t":{"6":{"position":[[2120,1]]}}}],["40",{"_index":163,"t":{"6":{"position":[[2078,2]]}}}],["465",{"_index":161,"t":{"6":{"position":[[2026,4]]}}}],["5",{"_index":167,"t":{"6":{"position":[[2202,1]]}}}],["50",{"_index":128,"t":{"6":{"position":[[982,4],[1203,2],[1504,3],[2159,2]]}}}],["50th",{"_index":150,"t":{"6":{"position":[[1651,4]]}}}],["55",{"_index":156,"t":{"6":{"position":[[1865,3]]}}}],["7b",{"_index":492,"t":{"31":{"position":[[150,2]]}}}],["820",{"_index":164,"t":{"6":{"position":[[2107,4]]}}}],["8b",{"_index":535,"t":{"33":{"position":[[955,2],[1613,2],[2148,2]]}}}],["_",{"_index":300,"t":{"12":{"position":[[495,1]]}}}],["__call__",{"_index":304,"t":{"12":{"position":[[598,8]]}}}],["__call__(self",{"_index":296,"t":{"12":{"position":[[422,14]]},"14":{"position":[[1468,14]]}}}],["__init__(self",{"_index":249,"t":{"8":{"position":[[407,14]]}}}],["_set_nam",{"_index":400,"t":{"22":{"position":[[584,9]]}}}],["a.txt",{"_index":190,"t":{"6":{"position":[[3051,8],[3269,7],[3481,6],[3599,7]]}}}],["abc/def.txt",{"_index":602,"t":{"35":{"position":[[2254,14],[2506,14]]}}}],["abil",{"_index":131,"t":{"6":{"position":[[1079,7]]}}}],["abov",{"_index":346,"t":{"14":{"position":[[1601,6]]},"33":{"position":[[1920,5]]}}}],["access",{"_index":376,"t":{"16":{"position":[[1500,8]]},"39":{"position":[[3102,6],[4040,6]]}}}],["achiev",{"_index":431,"t":{"24":{"position":[[1359,7]]}}}],["acquir",{"_index":670,"t":{"39":{"position":[[4272,7]]}}}],["act",{"_index":53,"t":{"2":{"position":[[951,3]]},"4":{"position":[[935,3]]}}}],["actual",{"_index":337,"t":{"14":{"position":[[1119,8]]},"24":{"position":[[834,9]]},"39":{"position":[[2168,8],[2490,8]]}}}],["ad",{"_index":505,"t":{"31":{"position":[[516,6]]},"35":{"position":[[2750,5]]}}}],["add",{"_index":147,"t":{"6":{"position":[[1536,3],[1710,3]]},"8":{"position":[[957,3]]},"24":{"position":[[1376,3],[2182,3]]},"35":{"position":[[186,3],[1048,3]]},"39":{"position":[[2585,3]]}}}],["addit",{"_index":210,"t":{"6":{"position":[[3867,10]]}}}],["address",{"_index":504,"t":{"31":{"position":[[494,7]]}}}],["advanc",{"_index":387,"t":{"20":{"position":[[178,8]]},"39":{"position":[[4727,8]]}}}],["aforement",{"_index":120,"t":{"6":{"position":[[821,14]]}}}],["against",{"_index":15,"t":{"2":{"position":[[212,7]]},"4":{"position":[[196,7]]}}}],["agent",{"_index":5,"t":{"2":{"position":[[70,6],[129,5],[193,5],[357,6],[451,5],[725,6],[1064,6],[1247,5],[1321,5],[1393,5],[1433,5],[1442,5],[1562,6],[1652,5],[1733,6],[1753,5]]},"4":{"position":[[54,6],[113,5],[177,5],[341,6],[435,5],[709,6],[1048,6],[1231,5],[1305,5],[1377,5],[1417,5],[1426,5],[1546,6],[1636,5],[1717,6],[1737,5]]},"6":{"position":[[62,5],[325,5],[1094,5],[1193,5],[1230,5],[1527,5],[1587,5],[1701,5],[1818,5],[1898,5],[1979,5],[2060,5],[2141,5],[2931,5],[4019,5],[4088,5],[4141,5]]},"8":{"position":[[90,6],[121,5],[194,5],[869,7],[969,6]]},"12":{"position":[[91,6],[199,5]]},"16":{"position":[[96,6],[327,5],[1245,5]]},"18":{"position":[[277,6],[368,6]]},"39":{"position":[[36,5],[90,5],[787,5],[856,5],[953,5],[1218,5],[1428,5],[1619,5],[1683,5],[2394,5],[2784,5],[2981,6]]}}}],["agent'",{"_index":635,"t":{"39":{"position":[[651,7],[4132,7]]}}}],["allow",{"_index":111,"t":{"6":{"position":[[389,7]]},"24":{"position":[[1442,5],[2043,6]]}}}],["alreadi",{"_index":656,"t":{"39":{"position":[[2534,7]]}}}],["although",{"_index":236,"t":{"8":{"position":[[0,8]]},"14":{"position":[[0,8]]},"16":{"position":[[702,8]]},"24":{"position":[[105,8],[580,8]]},"39":{"position":[[1569,8]]}}}],["anomali",{"_index":638,"t":{"39":{"position":[[902,7]]}}}],["anoth",{"_index":272,"t":{"8":{"position":[[961,7]]},"31":{"position":[[631,7]]},"39":{"position":[[1197,7],[3304,7],[3830,7]]}}}],["answer",{"_index":46,"t":{"2":{"position":[[800,6],[1493,7],[1589,6]]},"4":{"position":[[784,6],[1477,7],[1573,6]]}}}],["api",{"_index":524,"t":{"33":{"position":[[548,4]]}}}],["api_key=openai_api_key",{"_index":550,"t":{"33":{"position":[[1485,23]]}}}],["app_dir",{"_index":216,"t":{"6":{"position":[[4050,8]]},"8":{"position":[[445,8]]}}}],["appli",{"_index":238,"t":{"8":{"position":[[73,7]]}}}],["approach",{"_index":511,"t":{"31":{"position":[[838,8]]},"33":{"position":[[30,8]]}}}],["argument",{"_index":649,"t":{"39":{"position":[[2011,9]]}}}],["array",{"_index":581,"t":{"35":{"position":[[871,5],[1021,6],[1608,5]]}}}],["ask",{"_index":59,"t":{"2":{"position":[[1075,5],[1450,4]]},"4":{"position":[[1059,5],[1434,4]]},"6":{"position":[[303,4],[400,3],[1519,3],[1693,3]]},"31":{"position":[[651,3]]},"39":{"position":[[865,5],[1227,5]]}}}],["assert",{"_index":202,"t":{"6":{"position":[[3437,6],[3752,6],[3810,6]]},"8":{"position":[[799,6]]}}}],["assist",{"_index":555,"t":{"33":{"position":[[1689,13]]}}}],["associ",{"_index":307,"t":{"12":{"position":[[732,10]]},"16":{"position":[[1403,10]]}}}],["assum",{"_index":643,"t":{"39":{"position":[[1308,6]]}}}],["attach",{"_index":450,"t":{"24":{"position":[[2510,10]]},"35":{"position":[[1955,11],[2637,11]]}}}],["auto_eval/cas",{"_index":229,"t":{"6":{"position":[[4373,15]]}}}],["auto_eval/readme.md",{"_index":235,"t":{"6":{"position":[[4551,19]]}}}],["auto_eval/taskweaver_eval.pi",{"_index":245,"t":{"8":{"position":[[331,29]]}}}],["automat",{"_index":677,"t":{"39":{"position":[[4533,13]]}}}],["avoid",{"_index":119,"t":{"6":{"position":[[811,5]]}}}],["b.txt",{"_index":194,"t":{"6":{"position":[[3181,8],[3281,7],[3512,6],[3611,8]]}}}],["back",{"_index":679,"t":{"39":{"position":[[4704,4]]}}}],["backend",{"_index":538,"t":{"33":{"position":[[985,7],[1036,7],[1132,8]]}}}],["base",{"_index":117,"t":{"6":{"position":[[717,5],[1371,5],[2496,5],[3565,5]]},"16":{"position":[[461,5],[1133,5]]},"24":{"position":[[65,5],[141,5],[226,5],[386,5],[988,5],[1135,5],[1279,5],[1332,5],[1684,5],[2249,5]]},"39":{"position":[[4314,4]]}}}],["base_url=openai_api_bas",{"_index":551,"t":{"33":{"position":[[1509,25]]}}}],["basic",{"_index":379,"t":{"18":{"position":[[31,6]]}}}],["befor",{"_index":79,"t":{"2":{"position":[[1472,6]]},"4":{"position":[[1456,6]]},"35":{"position":[[1791,7]]}}}],["behav",{"_index":61,"t":{"2":{"position":[[1116,6]]},"4":{"position":[[1100,6]]}}}],["behavior",{"_index":87,"t":{"2":{"position":[[1716,9]]},"4":{"position":[[1700,9]]},"39":{"position":[[1667,8]]}}}],["behind",{"_index":625,"t":{"39":{"position":[[245,6]]}}}],["below",{"_index":65,"t":{"2":{"position":[[1175,5]]},"4":{"position":[[1159,5]]},"6":{"position":[[119,6]]},"24":{"position":[[2337,6]]},"33":{"position":[[871,6]]},"39":{"position":[[977,6],[1452,6],[3615,6]]}}}],["benefit",{"_index":593,"t":{"35":{"position":[[1653,7]]}}}],["better",{"_index":283,"t":{"10":{"position":[[88,6]]}}}],["between",{"_index":175,"t":{"6":{"position":[[2685,7]]},"12":{"position":[[934,7],[1429,7]]},"24":{"position":[[257,7]]},"39":{"position":[[3640,7]]}}}],["blog",{"_index":385,"t":{"20":{"position":[[151,4]]},"26":{"position":[[8,4]]},"29":{"position":[[36,4]]},"37":{"position":[[8,4]]}}}],["both",{"_index":84,"t":{"2":{"position":[[1557,4]]},"4":{"position":[[1541,4]]},"33":{"position":[[498,4]]}}}],["calcul",{"_index":171,"t":{"6":{"position":[[2330,9],[2563,10]]}}}],["call",{"_index":21,"t":{"2":{"position":[[286,7]]},"4":{"position":[[270,7]]},"12":{"position":[[171,6],[637,6]]},"14":{"position":[[1308,6],[1680,6],[1806,5]]},"16":{"position":[[82,6],[370,4],[1229,6],[1327,6]]},"18":{"position":[[263,6]]},"22":{"position":[[576,7]]},"24":{"position":[[2197,6]]},"33":{"position":[[39,6]]},"35":{"position":[[3002,4]]},"37":{"position":[[52,6]]},"39":{"position":[[759,6],[1388,6],[2202,4],[2790,5]]}}}],["capabl",{"_index":636,"t":{"39":{"position":[[659,11],[4140,10]]}}}],["case",{"_index":106,"t":{"6":{"position":[[226,5],[2710,6],[2850,5],[3712,4],[4045,4],[4360,5]]},"24":{"position":[[8,6],[2108,5]]},"39":{"position":[[2141,5],[3859,5]]}}}],["caus",{"_index":475,"t":{"29":{"position":[[50,5]]}}}],["cell",{"_index":377,"t":{"16":{"position":[[1561,6]]}}}],["chain",{"_index":20,"t":{"2":{"position":[[277,5]]},"4":{"position":[[261,5]]}}}],["challeng",{"_index":0,"t":{"2":{"position":[[4,11]]},"39":{"position":[[1102,10]]}}}],["chang",{"_index":474,"t":{"24":{"position":[[3293,7]]},"29":{"position":[[220,8]]},"35":{"position":[[131,7],[823,7],[1561,6],[1669,6],[1823,6],[2053,6],[2109,6],[2363,7],[2869,8]]}}}],["chat",{"_index":135,"t":{"6":{"position":[[1179,4],[1318,4],[2530,4]]}}}],["check",{"_index":183,"t":{"6":{"position":[[2959,5]]},"12":{"position":[[1407,5]]}}}],["clarifi",{"_index":112,"t":{"6":{"position":[[433,7]]}}}],["class",{"_index":246,"t":{"8":{"position":[[361,5],[1014,5]]},"12":{"position":[[153,5],[387,5],[547,5],[573,5]]},"14":{"position":[[1427,5]]},"39":{"position":[[741,5],[2674,5],[2703,5],[4402,5]]}}}],["client",{"_index":549,"t":{"33":{"position":[[1468,6]]}}}],["client.chat.completions.cr",{"_index":552,"t":{"33":{"position":[[1550,31]]}}}],["close",{"_index":275,"t":{"8":{"position":[[1050,5]]},"16":{"position":[[1609,7]]}}}],["close(self",{"_index":270,"t":{"8":{"position":[[925,12]]}}}],["code",{"_index":178,"t":{"6":{"position":[[2788,5],[3672,5]]},"12":{"position":[[135,4],[222,4],[1300,4]]},"14":{"position":[[49,4],[1396,4]]},"16":{"position":[[347,4],[550,4],[577,4],[1264,4],[1526,4],[1556,4]]},"29":{"position":[[174,4]]},"33":{"position":[[1221,4],[1926,5]]},"35":{"position":[[146,4],[238,4],[1088,4],[1633,4],[1877,4],[2656,4],[2756,4]]},"39":{"position":[[25,4],[62,5],[168,4],[723,4],[810,4],[1067,4],[1167,4],[1780,4],[1887,4],[1993,4],[2101,4],[2232,4],[4250,4]]}}}],["code_generator.pi",{"_index":613,"t":{"35":{"position":[[3058,18]]}}}],["code_interpreter.experience_dir",{"_index":394,"t":{"22":{"position":[[302,31]]}}}],["codeinterpret",{"_index":392,"t":{"22":{"position":[[194,15]]},"39":{"position":[[2565,16],[4774,15]]}}}],["commun",{"_index":629,"t":{"39":{"position":[[330,13],[412,14],[3626,13]]}}}],["compar",{"_index":26,"t":{"2":{"position":[[380,8],[1421,8]]},"4":{"position":[[364,8],[1405,8]]},"6":{"position":[[744,8]]},"39":{"position":[[1705,8]]}}}],["compat",{"_index":523,"t":{"33":{"position":[[537,10]]}}}],["complain",{"_index":486,"t":{"31":{"position":[[30,11]]}}}],["complet",{"_index":416,"t":{"24":{"position":[[563,8]]},"33":{"position":[[1537,10],[1893,11]]},"39":{"position":[[1644,8],[3573,8]]}}}],["complex",{"_index":44,"t":{"2":{"position":[[771,8]]},"4":{"position":[[755,8]]}}}],["compon",{"_index":286,"t":{"12":{"position":[[45,10]]},"18":{"position":[[309,9]]}}}],["concept",{"_index":284,"t":{"10":{"position":[[123,7]]},"24":{"position":[[1973,7]]},"26":{"position":[[232,7]]},"39":{"position":[[2448,7],[4067,7]]}}}],["config=config_var",{"_index":256,"t":{"8":{"position":[[572,18]]}}}],["config_var",{"_index":214,"t":{"6":{"position":[[3985,11]]},"8":{"position":[[459,11]]}}}],["configur",{"_index":215,"t":{"6":{"position":[[3997,14]]},"8":{"position":[[264,14]]},"14":{"position":[[134,14],[212,13],[274,14],[366,15],[521,14],[650,14],[855,15],[1011,15],[1100,14]]},"16":{"position":[[158,13],[659,14],[1001,10]]},"18":{"position":[[123,15]]},"22":{"position":[[29,9],[82,10],[154,13],[225,9],[625,11],[834,13]]},"26":{"position":[[117,11]]},"33":{"position":[[2078,14],[2419,14],[2462,13],[2493,15]]}}}],["confirm",{"_index":78,"t":{"2":{"position":[[1459,12]]},"4":{"position":[[1443,12]]}}}],["connect",{"_index":349,"t":{"14":{"position":[[1652,10],[1786,10]]}}}],["consequ",{"_index":597,"t":{"35":{"position":[[1803,11]]}}}],["consid",{"_index":88,"t":{"2":{"position":[[1744,8]]},"4":{"position":[[1728,8]]},"14":{"position":[[1315,8]]},"39":{"position":[[270,8],[831,8],[1188,8]]}}}],["consist",{"_index":318,"t":{"12":{"position":[[1541,11]]}}}],["constrain",{"_index":483,"t":{"29":{"position":[[304,11]]},"33":{"position":[[46,12],[503,11],[617,11],[1085,11]]},"35":{"position":[[24,11],[2901,11]]},"37":{"position":[[59,12],[269,11],[339,11]]}}}],["contact",{"_index":619,"t":{"37":{"position":[[511,7]]}}}],["contain",{"_index":195,"t":{"6":{"position":[[3296,7],[4418,8]]},"31":{"position":[[378,7]]},"35":{"position":[[1947,7]]}}}],["content",{"_index":184,"t":{"6":{"position":[[2978,8],[3501,7],[3578,7]]},"24":{"position":[[160,8],[275,7],[302,8],[765,7],[1171,8]]},"33":{"position":[[1659,10],[1720,10]]},"35":{"position":[[2153,7],[2230,8],[2394,8],[2482,8]]}}}],["content=\"task_type_1",{"_index":462,"t":{"24":{"position":[[2794,22]]}}}],["content_a",{"_index":197,"t":{"6":{"position":[[3345,9],[3444,9],[3488,12]]}}}],["content_b",{"_index":200,"t":{"6":{"position":[[3391,9],[3457,10],[3519,12]]}}}],["context",{"_index":57,"t":{"2":{"position":[[997,7]]},"4":{"position":[[981,7]]},"39":{"position":[[3149,7]]}}}],["control",{"_index":366,"t":{"16":{"position":[[887,11]]},"33":{"position":[[340,7]]},"39":{"position":[[3398,7]]}}}],["convers",{"_index":95,"t":{"6":{"position":[[73,14],[350,13],[626,12],[1051,12],[1272,12],[4254,12]]},"8":{"position":[[147,14]]},"16":{"position":[[851,12]]},"24":{"position":[[2781,12]]},"35":{"position":[[2771,10]]},"39":{"position":[[3128,12],[3164,13],[3410,12],[3443,13]]}}}],["convert",{"_index":622,"t":{"39":{"position":[[111,7]]}}}],["copi",{"_index":222,"t":{"6":{"position":[[4173,6]]}}}],["core",{"_index":680,"t":{"39":{"position":[[4811,4]]}}}],["correct",{"_index":64,"t":{"2":{"position":[[1154,7],[1581,7]]},"4":{"position":[[1138,7],[1565,7]]},"31":{"position":[[812,7]]}}}],["correspondingli",{"_index":586,"t":{"35":{"position":[[1028,16]]}}}],["countri",{"_index":556,"t":{"33":{"position":[[1738,7]]}}}],["country_nam",{"_index":543,"t":{"33":{"position":[[1327,15],[1379,16]]}}}],["creat",{"_index":336,"t":{"14":{"position":[[976,6]]},"16":{"position":[[207,7],[1460,7]]},"20":{"position":[[84,6]]},"24":{"position":[[2500,6]]}}}],["csv",{"_index":637,"t":{"39":{"position":[[881,3]]}}}],["current",{"_index":148,"t":{"6":{"position":[[1544,7],[1718,7]]},"16":{"position":[[843,7]]},"24":{"position":[[3230,7]]},"33":{"position":[[664,10],[1141,10]]},"39":{"position":[[2155,7]]}}}],["current_plan_step",{"_index":578,"t":{"35":{"position":[[520,20],[666,20]]}}}],["custom",{"_index":478,"t":{"29":{"position":[[130,10]]}}}],["cyber",{"_index":630,"t":{"39":{"position":[[347,5]]}}}],["data",{"_index":13,"t":{"2":{"position":[[165,4],[180,5]]},"4":{"position":[[149,4],[164,5]]},"39":{"position":[[927,5],[1016,4],[1293,5],[2347,4],[3822,4],[3970,4]]}}}],["data_fil",{"_index":221,"t":{"6":{"position":[[4147,11]]}}}],["databas",{"_index":348,"t":{"14":{"position":[[1643,8]]},"39":{"position":[[4005,8]]}}}],["date",{"_index":47,"t":{"2":{"position":[[812,4]]},"4":{"position":[[796,4]]}}}],["db",{"_index":342,"t":{"14":{"position":[[1454,2]]}}}],["de",{"_index":627,"t":{"39":{"position":[[308,2]]}}}],["decid",{"_index":648,"t":{"39":{"position":[[1855,7]]}}}],["decod",{"_index":537,"t":{"33":{"position":[[976,8],[1027,8]]}}}],["def",{"_index":248,"t":{"8":{"position":[[403,3],[671,3],[921,3]]},"12":{"position":[[418,3]]},"14":{"position":[[1464,3]]},"24":{"position":[[2344,3]]},"39":{"position":[[2858,3]]}}}],["default",{"_index":323,"t":{"14":{"position":[[472,8]]},"22":{"position":[[359,7],[453,7]]}}}],["defin",{"_index":306,"t":{"12":{"position":[[717,7]]},"24":{"position":[[2711,6]]}}}],["depend",{"_index":218,"t":{"6":{"position":[[4094,13]]}}}],["deploy",{"_index":488,"t":{"31":{"position":[[94,8]]},"33":{"position":[[473,10],[2037,8]]},"37":{"position":[[209,8]]}}}],["deprec",{"_index":600,"t":{"35":{"position":[[2026,11]]}}}],["describ",{"_index":231,"t":{"6":{"position":[[4444,9]]}}}],["descript",{"_index":107,"t":{"6":{"position":[[241,11],[490,11],[944,11],[2364,12],[2381,11],[2814,11]]},"12":{"position":[[879,12],[1044,12],[1137,12],[1215,12]]},"14":{"position":[[423,12]]}}}],["design",{"_index":237,"t":{"8":{"position":[[38,8]]},"14":{"position":[[1693,6]]},"39":{"position":[[99,8],[257,6],[604,7],[3357,6]]}}}],["desir",{"_index":633,"t":{"39":{"position":[[578,7]]}}}],["destroy",{"_index":378,"t":{"16":{"position":[[1645,9]]}}}],["detail",{"_index":234,"t":{"6":{"position":[[4536,7]]},"14":{"position":[[895,8]]},"29":{"position":[[358,8]]}}}],["detect",{"_index":639,"t":{"39":{"position":[[910,9]]}}}],["determin",{"_index":500,"t":{"31":{"position":[[424,9]]}}}],["develop",{"_index":281,"t":{"10":{"position":[[64,11],[139,11]]},"39":{"position":[[621,9],[2605,9]]}}}],["diagram",{"_index":641,"t":{"39":{"position":[[969,7],[1444,7],[1464,7],[3607,7]]}}}],["differ",{"_index":50,"t":{"2":{"position":[[882,9],[1054,9],[1123,12],[1706,9]]},"4":{"position":[[866,9],[1038,9],[1107,12],[1690,9]]},"14":{"position":[[845,9],[1090,9],[1128,9],[1169,9],[1196,9],[1298,9],[1670,9]]},"16":{"position":[[1027,9],[1108,9],[1317,9],[1516,9],[1546,9]]},"22":{"position":[[637,9],[674,9],[704,9],[730,9]]},"24":{"position":[[589,9],[615,9],[798,9],[812,9],[890,9]]}}}],["differenti",{"_index":427,"t":{"24":{"position":[[1105,13]]}}}],["difficult",{"_index":405,"t":{"24":{"position":[[185,9]]},"31":{"position":[[53,9]]}}}],["directori",{"_index":217,"t":{"6":{"position":[[4071,9],[4195,9],[4389,10]]},"8":{"position":[[293,9]]},"16":{"position":[[193,9]]},"22":{"position":[[58,10],[250,9],[378,9],[417,10],[658,11]]},"24":{"position":[[1075,10],[1488,10],[1549,9]]},"26":{"position":[[144,9]]}}}],["disabl",{"_index":367,"t":{"16":{"position":[[934,7]]}}}],["discov",{"_index":512,"t":{"33":{"position":[[13,10]]}}}],["discrep",{"_index":317,"t":{"12":{"position":[[1417,11]]}}}],["discuss",{"_index":372,"t":{"16":{"position":[[1349,9]]},"18":{"position":[[17,9]]},"20":{"position":[[165,7]]},"24":{"position":[[2001,9]]},"26":{"position":[[27,9]]},"33":{"position":[[2438,9]]}}}],["divid",{"_index":173,"t":{"6":{"position":[[2620,8]]}}}],["document",{"_index":529,"t":{"33":{"position":[[830,14]]},"39":{"position":[[2630,13]]}}}],["done",{"_index":32,"t":{"2":{"position":[[509,4]]},"4":{"position":[[493,4]]},"6":{"position":[[3088,4],[3218,4]]},"39":{"position":[[3677,4]]}}}],["due",{"_index":37,"t":{"2":{"position":[[624,3]]},"4":{"position":[[608,3]]}}}],["dure",{"_index":102,"t":{"6":{"position":[[153,6],[1126,6]]}}}],["dynam",{"_index":362,"t":{"16":{"position":[[734,11]]},"24":{"position":[[53,11],[1863,7]]},"26":{"position":[[179,7]]},"39":{"position":[[1972,7]]}}}],["e.g",{"_index":92,"t":{"2":{"position":[[1830,5]]},"4":{"position":[[1814,5]]},"6":{"position":[[2777,5]]},"33":{"position":[[293,5]]}}}],["each",{"_index":104,"t":{"6":{"position":[[216,4],[2282,4],[4400,4]]},"14":{"position":[[1801,4]]},"16":{"position":[[1387,4]]},"24":{"position":[[912,4]]},"26":{"position":[[158,4]]},"39":{"position":[[3265,4],[3736,4]]}}}],["easi",{"_index":480,"t":{"29":{"position":[[205,4]]},"33":{"position":[[420,4]]}}}],["easier",{"_index":584,"t":{"35":{"position":[[922,6]]}}}],["easili",{"_index":595,"t":{"35":{"position":[[1695,6]]},"37":{"position":[[441,7]]}}}],["echo",{"_index":678,"t":{"39":{"position":[[4663,4],[4678,6]]}}}],["effect",{"_index":459,"t":{"24":{"position":[[2722,9]]}}}],["elabor",{"_index":335,"t":{"14":{"position":[[947,9]]}}}],["element",{"_index":582,"t":{"35":{"position":[[880,9],[1006,8],[1617,8]]}}}],["empti",{"_index":546,"t":{"33":{"position":[[1415,7]]}}}],["enabl",{"_index":309,"t":{"12":{"position":[[850,8]]},"16":{"position":[[924,6]]},"22":{"position":[[856,6]]},"26":{"position":[[172,6]]},"33":{"position":[[1074,6]]}}}],["encount",{"_index":411,"t":{"24":{"position":[[331,11]]}}}],["end",{"_index":138,"t":{"6":{"position":[[1285,5]]}}}],["endpoint",{"_index":611,"t":{"35":{"position":[[3011,9]]}}}],["enforc",{"_index":513,"t":{"33":{"position":[[80,7],[199,9],[1003,8],[1054,8],[1181,8],[1851,9]]},"37":{"position":[[93,7]]}}}],["enough",{"_index":528,"t":{"33":{"position":[[722,7]]}}}],["ensur",{"_index":659,"t":{"39":{"position":[[3370,6]]}}}],["entri",{"_index":356,"t":{"16":{"position":[[226,7]]},"24":{"position":[[2759,5]]}}}],["entry_type=\"experience_sub_path",{"_index":466,"t":{"24":{"position":[[3016,33]]}}}],["enum",{"_index":590,"t":{"35":{"position":[[1395,7]]}}}],["environ",{"_index":212,"t":{"6":{"position":[[3928,12],[4482,12]]}}}],["error",{"_index":510,"t":{"31":{"position":[[749,5],[802,5]]}}}],["especi",{"_index":42,"t":{"2":{"position":[[732,10]]},"4":{"position":[[716,10]]},"14":{"position":[[1226,10]]},"31":{"position":[[585,10]]},"39":{"position":[[4186,10]]}}}],["essenti",{"_index":285,"t":{"12":{"position":[[35,9]]}}}],["establish",{"_index":351,"t":{"14":{"position":[[1770,9]]}}}],["etc",{"_index":518,"t":{"33":{"position":[[209,4]]}}}],["eval_cod",{"_index":196,"t":{"6":{"position":[[3331,10],[3624,9]]}}}],["evalu",{"_index":2,"t":{"2":{"position":[[36,8],[86,10],[202,9],[243,10],[485,10],[586,10],[698,8],[834,10],[915,10],[1624,10]]},"4":{"position":[[20,8],[70,10],[186,9],[227,10],[469,10],[570,10],[682,8],[818,10],[899,10],[1608,10]]},"6":{"position":[[28,10],[164,10],[368,10],[580,10],[695,8],[772,10],[885,10],[1137,10],[1354,8],[2436,8],[2474,8],[2754,8],[3543,8],[3661,10],[3917,10],[3969,10],[4034,10],[4295,10],[4349,10],[4471,10],[4506,11]]},"8":{"position":[[17,10]]}}}],["even",{"_index":422,"t":{"24":{"position":[[844,4],[1012,4]]},"39":{"position":[[1940,4]]}}}],["event_handler=non",{"_index":265,"t":{"8":{"position":[[777,19]]}}}],["examin",{"_index":103,"t":{"6":{"position":[[188,8],[275,9],[289,8],[421,8],[455,8],[603,8],[1161,8],[1295,8]]},"31":{"position":[[169,7]]}}}],["exampl",{"_index":45,"t":{"2":{"position":[[784,8],[1040,8],[1181,7]]},"4":{"position":[[768,8],[1024,8],[1165,7]]},"6":{"position":[[862,7],[2832,7]]},"12":{"position":[[263,7],[518,8],[758,8],[953,9],[1557,8],[1591,8]]},"14":{"position":[[165,8],[752,8],[1328,7],[1593,7]]},"16":{"position":[[1051,8]]},"22":{"position":[[790,8]]},"24":{"position":[[320,7],[686,8],[1503,8]]},"29":{"position":[[145,8],[233,8]]},"31":{"position":[[528,8]]},"33":{"position":[[854,7]]},"35":{"position":[[1860,8],[1938,8],[2189,8],[2206,8],[2673,9],[2825,9],[2847,9]]},"39":{"position":[[843,8],[1205,8],[1730,8],[4741,8]]}}}],["except",{"_index":209,"t":{"6":{"position":[[3845,10]]}}}],["execut",{"_index":360,"t":{"16":{"position":[[564,8],[1251,8]]},"39":{"position":[[191,7],[540,8]]}}}],["executor",{"_index":359,"t":{"16":{"position":[[555,8]]}}}],["exist",{"_index":6,"t":{"2":{"position":[[77,8]]},"4":{"position":[[61,8]]}}}],["exp_1.yaml",{"_index":435,"t":{"24":{"position":[[1611,10]]}}}],["exp_2.yaml",{"_index":436,"t":{"24":{"position":[[1628,10]]}}}],["exp_sub_path",{"_index":464,"t":{"24":{"position":[[2966,13],[3055,14],[3070,12],[3116,12]]}}}],["exp_sub_paths[0].cont",{"_index":467,"t":{"24":{"position":[[3085,24]]}}}],["experi",{"_index":382,"t":{"20":{"position":[[41,10],[62,10],[105,10],[131,11],[204,10],[225,10]]},"22":{"position":[[47,10],[239,10],[367,10],[391,10],[647,10],[714,11],[867,10]]},"24":{"position":[[42,10],[130,10],[215,10],[291,10],[375,10],[939,11],[977,10],[1043,11],[1064,10],[1123,11],[1321,10],[1395,10],[1477,10],[1538,10],[1721,10],[1797,10],[1903,10],[2150,10],[2605,10],[2878,10],[2918,10]]},"26":{"position":[[51,11],[93,10],[133,10],[187,10],[268,10]]}}}],["experiment",{"_index":472,"t":{"24":{"position":[[3238,12]]},"33":{"position":[[756,16]]}}}],["explain",{"_index":614,"t":{"37":{"position":[[306,9]]}}}],["express",{"_index":585,"t":{"35":{"position":[[932,7]]}}}],["extend",{"_index":287,"t":{"12":{"position":[[59,6]]},"18":{"position":[[336,6]]},"39":{"position":[[640,6],[4121,6]]}}}],["extens",{"_index":398,"t":{"22":{"position":[[510,10]]}}}],["extern",{"_index":667,"t":{"39":{"position":[[3981,8]]}}}],["extra",{"_index":673,"t":{"39":{"position":[[4447,5]]}}}],["extra=sharedmemoryentry.cr",{"_index":456,"t":{"24":{"position":[[2627,31]]}}}],["extra_bodi",{"_index":559,"t":{"33":{"position":[[1772,12]]}}}],["extract",{"_index":644,"t":{"39":{"position":[[1362,7],[1543,7],[1808,7],[1895,7]]}}}],["f\"content",{"_index":203,"t":{"6":{"position":[[3468,9]]}}}],["facto",{"_index":628,"t":{"39":{"position":[[311,5]]}}}],["fail",{"_index":267,"t":{"8":{"position":[[830,9],[840,7]]},"31":{"position":[[238,6]]}}}],["fals",{"_index":322,"t":{"14":{"position":[[417,5]]},"33":{"position":[[2295,6]]}}}],["familiar",{"_index":579,"t":{"35":{"position":[[753,8]]}}}],["featur",{"_index":330,"t":{"14":{"position":[[693,7]]},"16":{"position":[[723,7],[1171,7]]},"24":{"position":[[3251,7]]},"29":{"position":[[9,7]]},"33":{"position":[[447,7],[694,7],[1108,7]]},"35":{"position":[[167,8]]},"37":{"position":[[44,7],[390,7]]}}}],["feel",{"_index":617,"t":{"37":{"position":[[498,4]]}}}],["few",{"_index":573,"t":{"35":{"position":[[127,3]]},"39":{"position":[[4588,3]]}}}],["field",{"_index":169,"t":{"6":{"position":[[2258,5],[3634,5],[3878,6]]},"12":{"position":[[1566,5]]},"22":{"position":[[133,5],[334,6]]},"31":{"position":[[396,6]]},"35":{"position":[[213,5],[844,5],[1075,5],[1581,5],[1726,5],[2125,5],[2161,5],[2732,6]]}}}],["figur",{"_index":98,"t":{"6":{"position":[[112,6]]},"24":{"position":[[1254,6]]}}}],["file",{"_index":126,"t":{"6":{"position":[[929,4],[2276,5],[3040,4],[3170,4],[3263,5],[3593,5],[3897,4],[3980,4],[4167,5],[4434,4],[4571,5]]},"12":{"position":[[748,5],[776,4],[1190,4],[1355,4],[1502,5]]},"14":{"position":[[312,4],[361,4],[787,5],[966,5]]},"16":{"position":[[172,5],[420,5],[498,5],[696,5],[965,5]]},"18":{"position":[[113,5]]},"22":{"position":[[168,5],[492,4],[616,5],[848,4]]},"35":{"position":[[2298,5],[2550,5]]},"39":{"position":[[885,4]]}}}],["file.read",{"_index":606,"t":{"35":{"position":[[2320,11],[2572,11]]}}}],["file_cont",{"_index":605,"t":{"35":{"position":[[2304,13],[2556,13]]}}}],["file_path",{"_index":601,"t":{"35":{"position":[[2242,9],[2494,9]]}}}],["fill",{"_index":358,"t":{"16":{"position":[[430,4]]}}}],["final",{"_index":172,"t":{"6":{"position":[[2344,5],[2548,5]]}}}],["find",{"_index":233,"t":{"6":{"position":[[4526,4]]},"31":{"position":[[192,4]]},"35":{"position":[[277,4],[1114,4],[3035,4]]},"39":{"position":[[1097,4]]}}}],["first",{"_index":90,"t":{"2":{"position":[[1782,5]]},"4":{"position":[[1766,5]]},"6":{"position":[[256,5]]},"16":{"position":[[599,5]]},"24":{"position":[[1248,5]]},"35":{"position":[[176,6]]},"39":{"position":[[30,5],[68,6],[1302,5],[1487,5],[1744,6]]}}}],["fix",{"_index":481,"t":{"29":{"position":[[213,3]]}}}],["flexibl",{"_index":331,"t":{"14":{"position":[[725,8]]}}}],["flow",{"_index":650,"t":{"39":{"position":[[2163,4],[3431,4]]}}}],["folder",{"_index":676,"t":{"39":{"position":[[4511,7],[4643,7]]}}}],["follow",{"_index":124,"t":{"6":{"position":[[914,9],[2799,9]]},"12":{"position":[[241,9],[818,8]]},"14":{"position":[[320,8],[1386,9]]},"22":{"position":[[816,9]]},"24":{"position":[[528,9],[1528,9]]},"31":{"position":[[267,9],[708,6]]},"33":{"position":[[120,9],[264,9],[794,6],[1958,9],[2068,9]]},"37":{"position":[[133,9]]},"39":{"position":[[1254,6],[1629,6],[2403,7],[2619,6],[2837,9]]}}}],["format",{"_index":51,"t":{"2":{"position":[[892,8]]},"4":{"position":[[876,8]]},"31":{"position":[[281,10],[719,7],[742,6]]},"33":{"position":[[134,7],[192,6],[285,7],[359,6],[996,6],[1047,6],[1174,6],[1844,6],[1972,6]]},"35":{"position":[[959,6]]},"37":{"position":[[147,7]]}}}],["found",{"_index":325,"t":{"14":{"position":[[581,5]]},"33":{"position":[[678,5]]}}}],["frame",{"_index":620,"t":{"39":{"position":[[3,5]]}}}],["framework",{"_index":206,"t":{"6":{"position":[[3732,9]]},"33":{"position":[[150,10],[224,10],[593,10]]},"39":{"position":[[42,10]]}}}],["francisco",{"_index":558,"t":{"33":{"position":[[1753,9]]}}}],["free",{"_index":618,"t":{"37":{"position":[[503,4]]}}}],["function",{"_index":10,"t":{"2":{"position":[[140,8],[305,8],[1663,9]]},"4":{"position":[[124,8],[289,8],[1647,9]]},"12":{"position":[[70,13],[183,8],[649,9],[677,8],[1376,8],[1441,8]]},"14":{"position":[[33,8],[96,9],[1743,9]]},"16":{"position":[[442,8]]},"18":{"position":[[347,13]]},"24":{"position":[[2297,8]]},"39":{"position":[[771,8],[2028,8],[2766,8]]}}}],["gener",{"_index":185,"t":{"6":{"position":[[2990,8],[3141,9]]},"12":{"position":[[212,9],[288,9],[907,9],[1092,9],[1286,9],[1363,8]]},"16":{"position":[[333,9]]},"29":{"position":[[316,10]]},"31":{"position":[[248,8],[671,8]]},"33":{"position":[[59,11],[101,8],[243,10],[515,10],[629,11],[1097,10]]},"35":{"position":[[36,10],[2913,10]]},"37":{"position":[[72,11],[114,8],[281,11],[351,10]]},"39":{"position":[[207,8],[800,9],[1771,8],[2106,9],[2219,8],[2653,8]]}}}],["get_reply_from_ag",{"_index":274,"t":{"8":{"position":[[1028,21]]}}}],["get_reply_from_agent(self",{"_index":261,"t":{"8":{"position":[[675,26]]}}}],["get_task_type(last_post.messag",{"_index":449,"t":{"24":{"position":[[2465,32]]}}}],["given",{"_index":108,"t":{"6":{"position":[[262,5]]}}}],["go",{"_index":658,"t":{"39":{"position":[[3328,2]]}}}],["goe",{"_index":354,"t":{"16":{"position":[[130,4]]}}}],["ground",{"_index":27,"t":{"2":{"position":[[394,6],[567,6],[1816,6]]},"4":{"position":[[378,6],[551,6],[1800,6]]},"6":{"position":[[730,6],[1384,6],[2208,6]]}}}],["guid",{"_index":536,"t":{"33":{"position":[[969,6],[1020,6]]},"39":{"position":[[2380,5]]}}}],["guidanc",{"_index":516,"t":{"33":{"position":[[179,9]]}}}],["guided_decoding_backend",{"_index":561,"t":{"33":{"position":[[1813,26]]}}}],["guided_json",{"_index":560,"t":{"33":{"position":[[1785,14]]}}}],["handcraft",{"_index":384,"t":{"20":{"position":[[93,11],[119,11]]}}}],["handl",{"_index":49,"t":{"2":{"position":[[871,6],[1695,6]]},"4":{"position":[[855,6],[1679,6]]},"39":{"position":[[2062,7]]}}}],["hard",{"_index":40,"t":{"2":{"position":[[665,4]]},"4":{"position":[[649,4]]},"24":{"position":[[1097,4]]}}}],["have",{"_index":433,"t":{"24":{"position":[[1448,6]]}}}],["help",{"_index":339,"t":{"14":{"position":[[1237,7]]},"31":{"position":[[772,4]]},"33":{"position":[[1681,7]]},"37":{"position":[[402,4]]}}}],["here",{"_index":539,"t":{"33":{"position":[[1204,4]]},"39":{"position":[[2644,5]]}}}],["hint",{"_index":113,"t":{"6":{"position":[[525,5]]}}}],["histori",{"_index":139,"t":{"6":{"position":[[1323,7],[2535,8]]},"39":{"position":[[3113,7]]}}}],["hope",{"_index":615,"t":{"37":{"position":[[380,4]]}}}],["http://localhost:8000/v1",{"_index":548,"t":{"33":{"position":[[1441,26],[2178,27]]}}}],["human",{"_index":55,"t":{"2":{"position":[[967,6],[1213,6],[1287,6],[1381,6]]},"4":{"position":[[951,6],[1197,6],[1271,6],[1365,6]]},"39":{"position":[[406,5]]}}}],["id",{"_index":429,"t":{"24":{"position":[[1229,3],[1297,3],[1702,3],[2267,3]]}}}],["idea",{"_index":508,"t":{"31":{"position":[[639,4]]}}}],["identifi",{"_index":437,"t":{"24":{"position":[[1661,8],[2226,8]]}}}],["illustr",{"_index":66,"t":{"2":{"position":[[1189,11]]},"4":{"position":[[1173,11]]}}}],["implement",{"_index":225,"t":{"6":{"position":[[4275,11]]},"8":{"position":[[988,9]]},"12":{"position":[[583,10],[1474,14]]},"14":{"position":[[550,15],[821,14],[1071,14]]},"16":{"position":[[260,14]]},"18":{"position":[[88,15]]},"22":{"position":[[477,14],[601,14]]},"29":{"position":[[288,11]]},"37":{"position":[[323,11]]},"39":{"position":[[2713,10],[2911,14],[3887,9],[4154,12],[4336,12],[4412,12]]}}}],["import",{"_index":293,"t":{"12":{"position":[[339,6],[446,6],[1518,9]]},"33":{"position":[[1263,6]]}}}],["includ",{"_index":380,"t":{"18":{"position":[[67,9]]},"31":{"position":[[730,7]]},"33":{"position":[[161,7]]}}}],["incompat",{"_index":476,"t":{"29":{"position":[[56,15]]}}}],["incorrect",{"_index":89,"t":{"2":{"position":[[1764,9]]},"4":{"position":[[1748,9]]}}}],["incur",{"_index":651,"t":{"39":{"position":[[2177,8]]}}}],["ineffici",{"_index":352,"t":{"14":{"position":[[1821,11]]}}}],["info",{"_index":396,"t":{"22":{"position":[[428,4]]},"29":{"position":[[0,4]]}}}],["inform",{"_index":316,"t":{"12":{"position":[[1331,11]]},"16":{"position":[[474,11]]},"24":{"position":[[2066,11]]},"39":{"position":[[4285,11]]}}}],["inherit",{"_index":303,"t":{"12":{"position":[[553,8]]},"39":{"position":[[2685,8],[4382,10]]}}}],["init_plan",{"_index":576,"t":{"35":{"position":[[455,12],[645,12]]}}}],["initi",{"_index":143,"t":{"6":{"position":[[1449,7]]},"16":{"position":[[65,12],[529,11],[638,11]]},"18":{"position":[[246,12]]}}}],["input",{"_index":12,"t":{"2":{"position":[[159,5]]},"4":{"position":[[143,5]]},"24":{"position":[[78,5],[1153,5],[1206,5]]}}}],["instanc",{"_index":497,"t":{"31":{"position":[[324,9]]},"33":{"position":[[557,9]]}}}],["instanti",{"_index":241,"t":{"8":{"position":[[218,11]]}}}],["instead",{"_index":664,"t":{"39":{"position":[[3910,7]]}}}],["instruct",{"_index":415,"t":{"24":{"position":[[547,12],[625,13],[643,12]]},"31":{"position":[[292,12]]},"33":{"position":[[805,12],[958,8],[1616,10],[2151,10]]},"39":{"position":[[1265,12],[1374,13],[1555,13],[1597,13],[1820,13],[1907,12],[2295,12],[2326,12]]}}}],["int",{"_index":297,"t":{"12":{"position":[[440,5],[1025,3]]}}}],["integ",{"_index":187,"t":{"6":{"position":[[3008,7]]}}}],["integr",{"_index":521,"t":{"33":{"position":[[432,9]]}}}],["interact",{"_index":82,"t":{"2":{"position":[[1521,11]]},"4":{"position":[[1505,11]]},"39":{"position":[[2799,8]]}}}],["internet",{"_index":672,"t":{"39":{"position":[[4326,9]]}}}],["interpret",{"_index":479,"t":{"29":{"position":[[179,12]]},"35":{"position":[[243,12],[1093,12],[1638,12],[1882,11],[2661,11]]}}}],["introduc",{"_index":99,"t":{"6":{"position":[[129,9]]},"18":{"position":[[163,10]]},"20":{"position":[[8,10]]},"24":{"position":[[1958,10]]},"26":{"position":[[217,10]]},"29":{"position":[[17,10]]},"37":{"position":[[27,10]]},"39":{"position":[[2433,10]]}}}],["introduct",{"_index":279,"t":{"10":{"position":[[36,12]]}}}],["issu",{"_index":477,"t":{"29":{"position":[[72,5],[196,5]]},"31":{"position":[[23,6],[181,7],[507,5]]}}}],["joke",{"_index":192,"t":{"6":{"position":[[3113,4]]}}}],["json",{"_index":519,"t":{"33":{"position":[[301,4]]},"35":{"position":[[954,4],[2961,4]]}}}],["json_schema",{"_index":541,"t":{"33":{"position":[[1277,11],[1800,12],[1996,12]]}}}],["judg",{"_index":25,"t":{"2":{"position":[[333,5]]},"4":{"position":[[317,5]]},"6":{"position":[[205,6],[668,6],[679,5],[1338,6],[2427,5],[2463,5]]}}}],["jupyt",{"_index":374,"t":{"16":{"position":[[1421,7]]}}}],["keep",{"_index":132,"t":{"6":{"position":[[1103,4],[1240,4],[1600,4]]},"12":{"position":[[1531,4]]}}}],["kernel",{"_index":375,"t":{"16":{"position":[[1429,7],[1475,6],[1664,7]]}}}],["key",{"_index":443,"t":{"24":{"position":[[2275,3]]}}}],["keyword",{"_index":34,"t":{"2":{"position":[[526,8],[677,8]]},"4":{"position":[[510,8],[661,8]]}}}],["know",{"_index":76,"t":{"2":{"position":[[1345,4]]},"4":{"position":[[1329,4]]}}}],["knowledg",{"_index":671,"t":{"39":{"position":[[4304,9]]}}}],["kwarg",{"_index":446,"t":{"24":{"position":[[2376,9]]},"39":{"position":[[2890,9]]}}}],["languag",{"_index":31,"t":{"2":{"position":[[471,9]]},"4":{"position":[[455,9]]},"31":{"position":[[118,8]]},"37":{"position":[[233,8]]},"39":{"position":[[291,9],[317,8],[393,8],[490,8],[516,10],[3778,9]]}}}],["larg",{"_index":490,"t":{"31":{"position":[[112,5]]},"37":{"position":[[227,5]]}}}],["last",{"_index":447,"t":{"24":{"position":[[2435,4]]}}}],["layer",{"_index":432,"t":{"24":{"position":[[1382,5]]}}}],["less",{"_index":646,"t":{"39":{"position":[[1692,4]]}}}],["let'",{"_index":121,"t":{"6":{"position":[[849,5]]},"24":{"position":[[450,5]]},"39":{"position":[[825,5],[1182,5]]}}}],["lifecycl",{"_index":353,"t":{"16":{"position":[[11,9]]},"18":{"position":[[185,10]]}}}],["limit",{"_index":36,"t":{"2":{"position":[[612,11]]},"4":{"position":[[596,11]]},"6":{"position":[[836,12],[1037,10]]}}}],["list",{"_index":219,"t":{"6":{"position":[[4108,4],[4159,4]]},"12":{"position":[[1132,4],[1157,4]]},"14":{"position":[[402,4]]}}}],["llama",{"_index":534,"t":{"33":{"position":[[947,5],[1605,5],[2140,5]]}}}],["llama.cpp",{"_index":526,"t":{"33":{"position":[[649,10]]}}}],["llama/meta",{"_index":533,"t":{"33":{"position":[[936,10],[1594,10],[2129,10]]}}}],["llm",{"_index":4,"t":{"2":{"position":[[66,3],[125,3]]},"4":{"position":[[50,3],[109,3]]},"12":{"position":[[1282,3],[1633,4]]},"16":{"position":[[772,4]]},"31":{"position":[[134,7]]},"37":{"position":[[249,6],[431,4]]},"39":{"position":[[2198,3]]}}}],["llm.api_bas",{"_index":565,"t":{"33":{"position":[[2162,15]]}}}],["llm.api_key",{"_index":566,"t":{"33":{"position":[[2206,14]]}}}],["llm.api_typ",{"_index":568,"t":{"33":{"position":[[2229,15]]}}}],["llm.model",{"_index":564,"t":{"33":{"position":[[2110,12]]}}}],["llm.openai.require_alternative_rol",{"_index":569,"t":{"33":{"position":[[2255,39],[2347,36]]}}}],["llm.openai.support_system_rol",{"_index":570,"t":{"33":{"position":[[2302,33],[2388,30]]}}}],["lm",{"_index":517,"t":{"33":{"position":[[189,2],[993,2],[1044,2],[1171,2],[1840,3]]}}}],["load",{"_index":334,"t":{"14":{"position":[[920,5]]},"16":{"position":[[57,7],[296,6],[518,6],[797,6],[910,7],[1101,4]]},"18":{"position":[[238,7]]},"39":{"position":[[874,4],[4547,6]]}}}],["local",{"_index":487,"t":{"31":{"position":[[86,7]]},"33":{"position":[[467,5]]},"37":{"position":[[201,7]]}}}],["long",{"_index":43,"t":{"2":{"position":[[762,4]]},"4":{"position":[[746,4]]},"8":{"position":[[109,4]]}}}],["look",{"_index":438,"t":{"24":{"position":[[1751,5]]},"35":{"position":[[329,5],[1202,5]]}}}],["m",{"_index":530,"t":{"33":{"position":[[886,1]]}}}],["made",{"_index":572,"t":{"35":{"position":[[120,4]]}}}],["main",{"_index":494,"t":{"31":{"position":[[206,4]]}}}],["maintain",{"_index":340,"t":{"14":{"position":[[1270,8],[1631,9]]},"16":{"position":[[1294,8]]}}}],["make",{"_index":136,"t":{"6":{"position":[[1216,4]]},"14":{"position":[[704,4]]},"33":{"position":[[319,5]]},"39":{"position":[[2267,4]]}}}],["mani",{"_index":142,"t":{"6":{"position":[[1432,4]]},"24":{"position":[[418,4]]},"31":{"position":[[11,4]]}}}],["manual",{"_index":608,"t":{"35":{"position":[[2789,6]]},"39":{"position":[[1243,6],[1351,6],[1532,6],[1797,6],[1875,7]]}}}],["map",{"_index":11,"t":{"2":{"position":[[154,4]]},"4":{"position":[[138,4]]}}}],["match",{"_index":33,"t":{"2":{"position":[[517,8],[686,8],[1806,5]]},"4":{"position":[[501,8],[670,8],[1790,5]]}}}],["matter",{"_index":364,"t":{"16":{"position":[[807,6]]}}}],["matur",{"_index":527,"t":{"33":{"position":[[715,6]]}}}],["max_round",{"_index":223,"t":{"6":{"position":[[4205,11]]}}}],["maximum",{"_index":224,"t":{"6":{"position":[[4221,7]]}}}],["mean",{"_index":58,"t":{"2":{"position":[[1013,7]]},"4":{"position":[[997,7]]},"12":{"position":[[621,5]]},"39":{"position":[[75,5]]}}}],["memori",{"_index":338,"t":{"14":{"position":[[1149,7]]},"16":{"position":[[241,7],[1482,6]]},"24":{"position":[[1991,6],[2021,7],[2036,6],[2132,6],[2360,7],[2368,7],[2752,6],[2958,7]]},"26":{"position":[[250,6]]},"39":{"position":[[2874,7],[2882,7],[2939,6],[2967,6],[3074,6]]}}}],["memory.get_shared_memory_entri",{"_index":465,"t":{"24":{"position":[[2982,33]]}}}],["messag",{"_index":262,"t":{"8":{"position":[[702,8],[768,8]]},"24":{"position":[[2445,7]]},"31":{"position":[[455,8]]},"33":{"position":[[1627,8],[2534,8]]},"35":{"position":[[596,10],[698,9]]},"39":{"position":[[3758,8],[4696,7]]}}}],["message=\"add",{"_index":453,"t":{"24":{"position":[[2592,12]]}}}],["meta",{"_index":532,"t":{"33":{"position":[[931,4],[2123,5]]}}}],["method",{"_index":7,"t":{"2":{"position":[[97,7],[597,6],[845,6],[926,6],[1635,6]]},"4":{"position":[[81,7],[581,6],[829,6],[910,6],[1619,6]]},"6":{"position":[[39,6],[783,7],[800,6],[896,6],[4306,6]]},"8":{"position":[[28,6],[1056,8]]},"12":{"position":[[607,7]]},"39":{"position":[[2734,7],[2752,6],[4435,7]]}}}],["mix",{"_index":425,"t":{"24":{"position":[[1031,3]]}}}],["model",{"_index":491,"t":{"31":{"position":[[127,6],[231,6],[623,7],[659,5],[781,5]]},"33":{"position":[[92,5],[925,5]]},"35":{"position":[[99,6],[2980,5]]},"37":{"position":[[105,5],[242,6]]}}}],["model=\"meta",{"_index":553,"t":{"33":{"position":[[1582,11]]}}}],["modifi",{"_index":598,"t":{"35":{"position":[[1849,6],[2814,6]]}}}],["modul",{"_index":383,"t":{"20":{"position":[[52,6],[215,6]]}}}],["more",{"_index":54,"t":{"2":{"position":[[955,4],[1516,4]]},"4":{"position":[[939,4],[1500,4]]},"6":{"position":[[2734,4],[4531,4]]},"8":{"position":[[171,4]]},"14":{"position":[[70,4],[720,4],[890,4]]},"20":{"position":[[173,4]]},"29":{"position":[[353,4]]},"31":{"position":[[523,4]]},"37":{"position":[[436,4]]},"39":{"position":[[4722,4]]}}}],["moreov",{"_index":52,"t":{"2":{"position":[[901,9]]},"4":{"position":[[885,9]]}}}],["motiv",{"_index":381,"t":{"20":{"position":[[23,10]]}}}],["much",{"_index":583,"t":{"35":{"position":[[917,4]]}}}],["multi",{"_index":16,"t":{"2":{"position":[[222,5]]},"4":{"position":[[206,5]]}}}],["multipl",{"_index":23,"t":{"2":{"position":[[314,8]]},"4":{"position":[[298,8]]},"14":{"position":[[773,8]]},"35":{"position":[[2620,8]]},"39":{"position":[[150,8],[3482,8]]}}}],["n",{"_index":291,"t":{"12":{"position":[[298,1],[437,2],[917,1],[1017,1]]}}}],["name",{"_index":189,"t":{"6":{"position":[[3045,5],[3175,5]]},"12":{"position":[[827,5],[1011,5],[1113,5],[1209,5]]},"14":{"position":[[384,5],[617,6]]},"16":{"position":[[393,4]]},"22":{"position":[[442,4],[465,4],[568,4]]}}}],["natur",{"_index":30,"t":{"2":{"position":[[463,7],[641,7]]},"4":{"position":[[447,7],[625,7]]},"39":{"position":[[385,7],[482,7],[995,7],[1142,9],[1697,7],[3770,7],[4225,9]]}}}],["necessari",{"_index":244,"t":{"8":{"position":[[254,9]]},"14":{"position":[[1841,10]]},"39":{"position":[[2123,9]]}}}],["need",{"_index":134,"t":{"6":{"position":[[1170,5],[1685,4],[2951,4],[3535,4]]},"8":{"position":[[980,4]]},"14":{"position":[[1261,5],[1762,4]]},"24":{"position":[[354,4],[1240,4],[1842,4],[2861,5]]},"35":{"position":[[65,4],[1841,4],[2045,4],[2101,4],[2804,6],[2994,4]]},"39":{"position":[[631,5],[1763,4],[3287,5],[3803,5],[3952,4]]}}}],["new",{"_index":72,"t":{"2":{"position":[[1277,3],[1365,3]]},"4":{"position":[[1261,3],[1349,3]]},"6":{"position":[[24,3],[143,3],[796,3],[881,3],[4291,3]]},"8":{"position":[[13,3]]},"14":{"position":[[1782,3]]},"16":{"position":[[1081,3]]},"24":{"position":[[2188,3]]},"29":{"position":[[249,3]]},"33":{"position":[[26,3]]},"35":{"position":[[1918,3],[2072,3],[2694,3]]},"37":{"position":[[40,3]]},"39":{"position":[[688,3],[2503,3],[2591,3],[3899,3],[3923,3],[4167,3],[4351,3]]}}}],["non",{"_index":489,"t":{"31":{"position":[[103,3]]},"37":{"position":[[218,3]]}}}],["none",{"_index":252,"t":{"8":{"position":[[488,6]]},"14":{"position":[[1459,4],[1514,5]]}}}],["nontrivi",{"_index":1,"t":{"2":{"position":[[22,10]]},"4":{"position":[[6,10]]}}}],["normal",{"_index":174,"t":{"6":{"position":[[2665,10],[3700,6]]},"14":{"position":[[82,6],[1729,6]]}}}],["notic",{"_index":580,"t":{"35":{"position":[[803,6]]},"39":{"position":[[3191,7]]}}}],["now",{"_index":594,"t":{"35":{"position":[[1691,3],[2041,3],[2885,3]]}}}],["null",{"_index":567,"t":{"33":{"position":[[2221,7]]}}}],["number",{"_index":48,"t":{"2":{"position":[[822,7]]},"4":{"position":[[806,7]]},"6":{"position":[[1558,6],[1732,6],[3016,6],[3158,6],[3313,7],[4229,6]]},"12":{"position":[[307,8],[926,7],[1064,6],[1081,7],[1172,8]]},"14":{"position":[[261,8],[463,8]]}}}],["object",{"_index":243,"t":{"8":{"position":[[242,6]]},"14":{"position":[[994,7],[1138,7]]},"16":{"position":[[1448,7],[1628,7]]},"33":{"position":[[1301,9]]},"35":{"position":[[381,9],[429,9],[856,6],[994,7],[1254,9],[1302,9],[1593,6]]},"39":{"position":[[2946,7],[3007,7],[3081,7],[3699,7]]}}}],["obtain",{"_index":406,"t":{"24":{"position":[[198,6]]},"39":{"position":[[1586,6]]}}}],["old",{"_index":599,"t":{"35":{"position":[[1934,3],[2202,3],[2429,3]]}}}],["on",{"_index":182,"t":{"6":{"position":[[2908,3],[2915,3]]},"14":{"position":[[590,3]]},"24":{"position":[[311,3],[1060,3]]},"35":{"position":[[1799,3],[2720,3]]},"39":{"position":[[143,3]]}}}],["onc",{"_index":647,"t":{"39":{"position":[[1834,4]]}}}],["open('a.txt",{"_index":198,"t":{"6":{"position":[[3357,13]]}}}],["open('b.txt",{"_index":201,"t":{"6":{"position":[[3403,13]]}}}],["open(file_path",{"_index":603,"t":{"35":{"position":[[2274,15],[2526,15]]}}}],["openai",{"_index":522,"t":{"33":{"position":[[530,6],[1256,6],[1270,6],[1477,7],[2245,9],[2455,6]]}}}],["openai_api_bas",{"_index":547,"t":{"33":{"position":[[1423,15]]}}}],["openai_api_key",{"_index":545,"t":{"33":{"position":[[1398,14]]}}}],["optional[dict",{"_index":251,"t":{"8":{"position":[[471,14]]}}}],["orchestr",{"_index":661,"t":{"39":{"position":[[3531,11]]}}}],["order",{"_index":571,"t":{"35":{"position":[[3,5],[1897,5]]}}}],["otherwis",{"_index":665,"t":{"39":{"position":[[3933,10]]}}}],["out",{"_index":430,"t":{"24":{"position":[[1261,3]]}}}],["outlin",{"_index":515,"t":{"33":{"position":[[169,9],[1194,9]]}}}],["output",{"_index":14,"t":{"2":{"position":[[173,6],[343,6],[422,7],[437,6],[553,6],[711,6],[752,6],[1028,7],[1162,8]]},"4":{"position":[[157,6],[327,6],[406,7],[421,6],[537,6],[695,6],[736,6],[1012,7],[1146,8]]},"33":{"position":[[352,6]]},"35":{"position":[[780,6]]}}}],["overhead",{"_index":653,"t":{"39":{"position":[[2207,8]]}}}],["packag",{"_index":220,"t":{"6":{"position":[[4116,8]]}}}],["page",{"_index":282,"t":{"10":{"position":[[76,5]]},"14":{"position":[[881,4]]},"18":{"position":[[8,5]]},"33":{"position":[[2476,5]]}}}],["paramet",{"_index":313,"t":{"12":{"position":[[997,11],[1228,11]]}}}],["part",{"_index":321,"t":{"14":{"position":[[344,4]]},"24":{"position":[[2279,4]]},"39":{"position":[[1980,5]]}}}],["partner",{"_index":96,"t":{"6":{"position":[[88,7]]},"8":{"position":[[162,8]]}}}],["pass",{"_index":116,"t":{"6":{"position":[[643,4],[1309,4]]}}}],["past",{"_index":502,"t":{"31":{"position":[[471,5]]}}}],["path",{"_index":455,"t":{"24":{"position":[[2620,6]]}}}],["perform",{"_index":3,"t":{"2":{"position":[[49,11],[1084,7]]},"4":{"position":[[33,11],[1068,7]]},"39":{"position":[[566,7],[894,7]]}}}],["philosophi",{"_index":624,"t":{"39":{"position":[[234,10]]}}}],["phrase",{"_index":35,"t":{"2":{"position":[[538,7]]},"4":{"position":[[522,7]]}}}],["physic",{"_index":631,"t":{"39":{"position":[[353,8]]}}}],["piec",{"_index":288,"t":{"12":{"position":[[126,5]]},"39":{"position":[[714,5]]}}}],["plan",{"_index":577,"t":{"35":{"position":[[490,7],[658,7]]}}}],["planner",{"_index":391,"t":{"22":{"position":[[182,7],[771,7],[896,7]]},"29":{"position":[[162,7]]},"35":{"position":[[226,7],[260,8]]},"39":{"position":[[1843,7],[2077,8],[2553,7],[3056,8],[3249,8],[3343,8],[3386,7],[3519,7],[3652,7],[4758,7]]}}}],["planner'",{"_index":498,"t":{"31":{"position":[[350,9]]}}}],["planner.experience_dir",{"_index":393,"t":{"22":{"position":[[275,22],[944,25]]}}}],["planner.pi",{"_index":612,"t":{"35":{"position":[[3043,10]]}}}],["planner.use_experi",{"_index":402,"t":{"22":{"position":[[912,25]]}}}],["planner_exp_dir",{"_index":403,"t":{"22":{"position":[[970,17]]}}}],["planner_experi",{"_index":434,"t":{"24":{"position":[[1570,18]]}}}],["pleas",{"_index":278,"t":{"10":{"position":[[16,6]]},"29":{"position":[[261,6]]},"37":{"position":[[491,6]]}}}],["plugin",{"_index":280,"t":{"10":{"position":[[57,6],[116,6]]},"12":{"position":[[19,7],[114,6],[276,6],[346,7],[566,6],[703,7],[805,6],[900,6],[1265,7],[1618,6]]},"14":{"position":[[13,6],[110,6],[194,6],[543,6],[608,8],[672,6],[713,6],[930,8],[987,6],[1042,7],[1179,7],[1254,6],[1364,7],[1624,6],[1704,6]]},"16":{"position":[[4,6],[47,6],[151,6],[185,7],[219,6],[282,6],[379,6],[508,6],[628,6],[757,7],[785,7],[903,6],[946,6],[986,7],[1125,7],[1219,6],[1283,6],[1441,6],[1621,6]]},"18":{"position":[[45,6],[81,6],[178,6],[228,6],[288,6]]},"39":{"position":[[692,7],[702,6],[1326,6],[3903,6]]}}}],["point",{"_index":67,"t":{"2":{"position":[[1206,6]]},"4":{"position":[[1190,6]]},"6":{"position":[[2293,5],[2406,5],[2515,6],[2609,6],[3797,5]]},"14":{"position":[[793,8]]}}}],["popular",{"_index":514,"t":{"33":{"position":[[142,7]]}}}],["possibl",{"_index":520,"t":{"33":{"position":[[328,8]]},"35":{"position":[[1782,8]]}}}],["post",{"_index":386,"t":{"20":{"position":[[156,5]]},"24":{"position":[[2394,5],[2440,4]]},"26":{"position":[[13,5]]},"29":{"position":[[41,4]]},"37":{"position":[[13,5]]},"39":{"position":[[2903,5],[3002,4],[3694,4]]}}}],["post_proxy.end",{"_index":463,"t":{"24":{"position":[[2829,16]]}}}],["post_proxy.update_attach",{"_index":451,"t":{"24":{"position":[[2521,29]]}}}],["power",{"_index":329,"t":{"14":{"position":[[684,8]]},"18":{"position":[[300,8]]}}}],["pre",{"_index":276,"t":{"10":{"position":[[0,3]]}}}],["precis",{"_index":176,"t":{"6":{"position":[[2739,7]]}}}],["prepar",{"_index":227,"t":{"6":{"position":[[4331,8]]}}}],["previou",{"_index":320,"t":{"14":{"position":[[335,8]]},"16":{"position":[[1366,8]]},"29":{"position":[[87,8]]},"35":{"position":[[771,8]]},"39":{"position":[[1721,8]]}}}],["previous",{"_index":193,"t":{"6":{"position":[[3130,10]]}}}],["print(\"complet",{"_index":562,"t":{"33":{"position":[[1865,17]]}}}],["print(file_cont",{"_index":607,"t":{"35":{"position":[[2332,20],[2584,20]]}}}],["problem",{"_index":495,"t":{"31":{"position":[[211,7]]}}}],["process",{"_index":19,"t":{"2":{"position":[[254,7]]},"4":{"position":[[238,7]]},"6":{"position":[[175,8],[1148,8]]},"10":{"position":[[151,8]]},"16":{"position":[[28,7]]},"18":{"position":[[209,7]]},"24":{"position":[[1416,8]]},"39":{"position":[[1027,9],[1281,7],[2358,10]]}}}],["produc",{"_index":63,"t":{"2":{"position":[[1146,7]]},"4":{"position":[[1130,7]]}}}],["profil",{"_index":371,"t":{"16":{"position":[[1153,8]]}}}],["program",{"_index":626,"t":{"39":{"position":[[279,11],[504,11]]}}}],["project",{"_index":390,"t":{"22":{"position":[[146,7],[409,7],[826,7]]},"24":{"position":[[441,8],[1188,8]]}}}],["prompt",{"_index":496,"t":{"31":{"position":[[312,7],[544,7],[762,6]]}}}],["properti",{"_index":542,"t":{"33":{"position":[[1311,13]]},"35":{"position":[[391,13],[439,13],[973,10],[1264,13],[1312,13]]}}}],["propos",{"_index":94,"t":{"6":{"position":[[14,7]]}}}],["provid",{"_index":80,"t":{"2":{"position":[[1479,9],[1569,7]]},"4":{"position":[[1463,9],[1553,7]]},"6":{"position":[[473,7],[513,7],[564,8],[3859,7]]},"12":{"position":[[1583,7]]},"33":{"position":[[369,9]]},"35":{"position":[[73,7]]},"39":{"position":[[4104,7],[4577,8]]}}}],["put",{"_index":674,"t":{"39":{"position":[[4469,3]]}}}],["python",{"_index":242,"t":{"8":{"position":[[235,6]]},"12":{"position":[[1467,6]]},"14":{"position":[[89,6],[814,6],[1064,6],[1736,6]]},"16":{"position":[[253,6]]},"33":{"position":[[878,6]]},"35":{"position":[[1403,10],[1752,6],[1990,7],[2223,6],[2403,6]]}}}],["queri",{"_index":343,"t":{"14":{"position":[[1483,6]]},"24":{"position":[[154,5],[269,5]]}}}],["question",{"_index":85,"t":{"2":{"position":[[1603,9]]},"4":{"position":[[1587,9]]},"6":{"position":[[308,9],[404,9]]},"37":{"position":[[465,9]]}}}],["r",{"_index":604,"t":{"35":{"position":[[2290,4],[2542,4]]}}}],["r').read().strip",{"_index":199,"t":{"6":{"position":[[3371,19],[3417,19]]}}}],["rais",{"_index":208,"t":{"6":{"position":[[3836,5]]},"31":{"position":[[16,6]]}}}],["random",{"_index":186,"t":{"6":{"position":[[3001,6],[3106,6],[3151,6]]},"12":{"position":[[300,6],[453,6],[919,6],[1074,6],[1165,6]]},"14":{"position":[[254,6],[456,6]]}}}],["random.randint(1",{"_index":298,"t":{"12":{"position":[[467,18]]}}}],["random_gener",{"_index":308,"t":{"12":{"position":[[833,16]]}}}],["random_generator(n=5",{"_index":312,"t":{"12":{"position":[[975,21]]}}}],["randomgener",{"_index":302,"t":{"12":{"position":[[531,15],[789,15]]},"14":{"position":[[178,15]]}}}],["randomgenerator(plugin",{"_index":295,"t":{"12":{"position":[[393,24]]}}}],["rang",{"_index":319,"t":{"14":{"position":[[241,5],[390,5],[443,5]]}}}],["range(n",{"_index":301,"t":{"12":{"position":[[500,9]]}}}],["re",{"_index":509,"t":{"31":{"position":[[668,2]]}}}],["read",{"_index":333,"t":{"14":{"position":[[871,4]]},"39":{"position":[[1236,4],[1342,4],[1523,4],[1788,4],[1866,4]]}}}],["read_manu",{"_index":645,"t":{"39":{"position":[[1395,12],[2037,12]]}}}],["real",{"_index":410,"t":{"24":{"position":[[315,4]]}}}],["reason",{"_index":655,"t":{"39":{"position":[[2421,8]]}}}],["recent",{"_index":440,"t":{"24":{"position":[[1949,8]]},"33":{"position":[[0,9]]}}}],["recipi",{"_index":501,"t":{"31":{"position":[[438,9]]}}}],["recommend",{"_index":663,"t":{"39":{"position":[[3874,9]]}}}],["refer",{"_index":29,"t":{"2":{"position":[[412,9]]},"4":{"position":[[396,9]]},"10":{"position":[[23,5]]},"29":{"position":[[268,5]]}}}],["register_plugin",{"_index":294,"t":{"12":{"position":[[354,15],[370,16]]},"14":{"position":[[1410,16]]}}}],["rel",{"_index":506,"t":{"31":{"position":[[606,10]]},"33":{"position":[[409,10]]}}}],["repli",{"_index":444,"t":{"24":{"position":[[2291,5]]},"39":{"position":[[2728,5],[2746,5],[4429,5]]}}}],["reply(self",{"_index":445,"t":{"24":{"position":[[2348,11]]},"39":{"position":[[2862,11]]}}}],["reply_cont",{"_index":592,"t":{"35":{"position":[[1425,16],[1504,16],[2170,14],[2468,13]]}}}],["reply_typ",{"_index":589,"t":{"35":{"position":[[1361,13],[1490,13],[1715,10],[2134,10],[2383,10]]}}}],["report",{"_index":151,"t":{"6":{"position":[[1760,6]]}}}],["repres",{"_index":168,"t":{"6":{"position":[[2224,11]]},"39":{"position":[[1006,9],[1152,11],[2281,9],[4235,11]]}}}],["request",{"_index":181,"t":{"6":{"position":[[2899,8]]},"39":{"position":[[130,7],[471,7]]}}}],["requir",{"_index":81,"t":{"2":{"position":[[1507,8]]},"4":{"position":[[1491,8]]},"6":{"position":[[2724,7],[4125,8]]},"12":{"position":[[864,9],[1029,9]]},"14":{"position":[[407,9]]},"31":{"position":[[412,8]]},"33":{"position":[[1367,11]]},"35":{"position":[[631,11],[715,11],[1466,11],[1526,11]]},"39":{"position":[[3473,8]]}}}],["requisit",{"_index":277,"t":{"10":{"position":[[4,11]]}}}],["respect",{"_index":395,"t":{"22":{"position":[[341,13]]},"35":{"position":[[3077,13]]}}}],["respons",{"_index":91,"t":{"2":{"position":[[1788,8]]},"4":{"position":[[1772,8]]},"6":{"position":[[2937,10],[2969,8]]},"8":{"position":[[855,8]]},"31":{"position":[[257,9],[360,8],[684,8]]},"33":{"position":[[110,9],[254,9],[1949,8],[2574,10]]},"35":{"position":[[407,11],[727,12],[835,8],[1280,11],[1538,12],[1572,8]]},"37":{"position":[[123,9]]},"39":{"position":[[220,9],[3028,8]]}}}],["response_json_schema",{"_index":574,"t":{"35":{"position":[[192,20],[346,21],[1054,20],[1219,21]]}}}],["response_round",{"_index":263,"t":{"8":{"position":[[724,14]]}}}],["response_round.post_list",{"_index":268,"t":{"8":{"position":[[884,25]]}}}],["response_round.st",{"_index":266,"t":{"8":{"position":[[806,20]]}}}],["restrict",{"_index":596,"t":{"35":{"position":[[1702,8]]}}}],["result",{"_index":311,"t":{"12":{"position":[[966,6],[1119,6]]},"33":{"position":[[1883,9]]}}}],["retriev",{"_index":404,"t":{"24":{"position":[[117,8],[362,8]]}}}],["return",{"_index":149,"t":{"6":{"position":[[1626,6]]},"8":{"position":[[877,6]]},"12":{"position":[[460,6],[1102,8],[1244,6]]},"24":{"position":[[2822,6]]},"39":{"position":[[2992,7]]}}}],["reusabl",{"_index":332,"t":{"14":{"position":[[738,9]]}}}],["right",{"_index":407,"t":{"24":{"position":[[209,5]]}}}],["rigid",{"_index":38,"t":{"2":{"position":[[635,5]]},"4":{"position":[[619,5]]}}}],["role",{"_index":101,"t":{"6":{"position":[[147,5]]},"22":{"position":[[6,4],[210,6],[437,4],[528,4],[563,4],[684,6],[740,5],[779,4],[904,5]]},"24":{"position":[[1932,5],[2052,4],[2089,6],[2192,4],[2851,4]]},"26":{"position":[[163,5]]},"33":{"position":[[1640,8],[1703,8]]},"39":{"position":[[2459,5],[2480,5],[2542,5],[2595,5],[2664,4],[2698,4],[2817,5],[3044,4],[3093,4],[3208,5],[3282,4],[3312,5],[3491,5],[3547,5],[3668,5],[3798,4],[3838,5],[3927,5],[4032,4],[4078,5],[4171,6],[4355,4],[4397,4],[4453,5],[4599,5],[4668,4],[4736,4],[4790,6],[4816,5]]}}}],["role_name.experience_dir",{"_index":389,"t":{"22":{"position":[[108,24]]}}}],["round",{"_index":130,"t":{"6":{"position":[[1064,6],[1206,6],[1437,7],[1487,5],[1498,5],[1552,5],[1656,6],[1669,6],[1726,5],[1839,7],[1919,7],[2000,7],[2081,7],[2162,7],[4239,6]]},"16":{"position":[[864,6]]}}}],["run",{"_index":232,"t":{"6":{"position":[[4498,3]]},"31":{"position":[[66,3]]},"33":{"position":[[776,3],[1912,3]]},"37":{"position":[[181,3],[411,3]]}}}],["runnabl",{"_index":623,"t":{"39":{"position":[[159,8]]}}}],["same",{"_index":60,"t":{"2":{"position":[[1096,4]]},"4":{"position":[[1080,4]]},"6":{"position":[[3308,4]]},"14":{"position":[[809,4],[1059,4]]},"16":{"position":[[1575,4]]},"24":{"position":[[881,4]]}}}],["sampl",{"_index":326,"t":{"14":{"position":[[601,6],[1357,6]]},"33":{"position":[[1214,6]]},"35":{"position":[[2008,7],[2451,8]]},"39":{"position":[[4592,6]]}}}],["san",{"_index":557,"t":{"33":{"position":[[1749,3]]}}}],["save",{"_index":188,"t":{"6":{"position":[[3027,4],[3121,4]]}}}],["schema",{"_index":482,"t":{"29":{"position":[[253,7]]},"33":{"position":[[306,7],[384,7]]},"35":{"position":[[85,6],[787,7],[944,6],[1922,7],[2076,7],[2698,7],[2966,6]]}}}],["scope",{"_index":460,"t":{"24":{"position":[[2732,5]]}}}],["scope=\"convers",{"_index":458,"t":{"24":{"position":[[2687,21]]}}}],["score",{"_index":170,"t":{"6":{"position":[[2287,5],[2350,5],[2400,5],[2509,5],[2554,5],[2589,6],[2603,5],[2676,5],[3791,5]]}}}],["score_point",{"_index":153,"t":{"6":{"position":[[1801,12],[1881,12],[1962,12],[2043,12],[2124,12],[3241,12]]}}}],["scoring_point",{"_index":152,"t":{"6":{"position":[[1783,15],[2243,14],[3223,15]]}}}],["second",{"_index":609,"t":{"35":{"position":[[2939,7]]},"39":{"position":[[2247,7]]}}}],["section",{"_index":373,"t":{"16":{"position":[[1375,8]]},"29":{"position":[[341,7]]}}}],["see",{"_index":122,"t":{"6":{"position":[[855,3]]},"31":{"position":[[337,3]]}}}],["seen",{"_index":485,"t":{"31":{"position":[[6,4]]}}}],["select",{"_index":363,"t":{"16":{"position":[[746,6]]},"20":{"position":[[236,10]]},"22":{"position":[[878,9]]},"24":{"position":[[31,6],[966,6],[1310,6],[1406,9]]},"26":{"position":[[44,6],[104,9],[198,10]]}}}],["selected_experi",{"_index":468,"t":{"24":{"position":[[3134,20]]}}}],["self.app",{"_index":254,"t":{"8":{"position":[[530,8]]}}}],["self.app.get_sess",{"_index":258,"t":{"8":{"position":[[606,22]]}}}],["self.app.stop",{"_index":271,"t":{"8":{"position":[[938,15]]}}}],["self.db",{"_index":344,"t":{"14":{"position":[[1503,7],[1520,7]]}}}],["self.load_experience(query=queri",{"_index":469,"t":{"24":{"position":[[3157,33]]}}}],["self.sess",{"_index":257,"t":{"8":{"position":[[591,12]]}}}],["self.session.send_messag",{"_index":264,"t":{"8":{"position":[[741,26]]}}}],["self.session.session_id",{"_index":260,"t":{"8":{"position":[[647,23]]}}}],["self.session_id",{"_index":259,"t":{"8":{"position":[[629,15]]}}}],["send",{"_index":180,"t":{"6":{"position":[[2892,4]]},"33":{"position":[[2525,4]]},"39":{"position":[[3750,7],[3812,4]]}}}],["send_to",{"_index":499,"t":{"31":{"position":[[388,7]]},"35":{"position":[[563,10],[687,10]]}}}],["sens",{"_index":654,"t":{"39":{"position":[[2272,5]]}}}],["separ",{"_index":369,"t":{"16":{"position":[[1012,10]]}}}],["server",{"_index":540,"t":{"33":{"position":[[1243,7],[2555,6]]}}}],["session",{"_index":361,"t":{"16":{"position":[[615,8],[1037,9],[1085,8],[1392,7],[1580,8],[1598,7]]}}}],["set",{"_index":228,"t":{"6":{"position":[[4342,3]]},"14":{"position":[[296,3]]},"16":{"position":[[1118,3]]},"22":{"position":[[96,7],[263,7]]},"24":{"position":[[540,3],[1713,3],[1789,3],[1895,3],[2142,3],[2870,3]]},"26":{"position":[[260,3]]},"33":{"position":[[2060,3]]}}}],["share",{"_index":441,"t":{"24":{"position":[[1984,6],[2014,6],[2029,6],[2060,5],[2125,6],[2745,6],[2951,6]]},"26":{"position":[[243,6]]}}}],["show",{"_index":324,"t":{"14":{"position":[[501,4]]},"39":{"position":[[1477,5]]}}}],["shown",{"_index":97,"t":{"6":{"position":[[99,5]]},"24":{"position":[[2331,5]]},"33":{"position":[[865,5]]},"37":{"position":[[168,5]]},"39":{"position":[[3594,5]]}}}],["signatur",{"_index":305,"t":{"12":{"position":[[686,9],[1385,10],[1450,9]]},"16":{"position":[[451,9]]},"39":{"position":[[2847,10]]}}}],["similar",{"_index":409,"t":{"24":{"position":[[246,10],[660,7],[709,7]]}}}],["simpl",{"_index":129,"t":{"6":{"position":[[1006,7]]},"12":{"position":[[256,6]]},"33":{"position":[[847,6]]}}}],["simpli",{"_index":428,"t":{"24":{"position":[[1215,6]]}}}],["slightli",{"_index":421,"t":{"24":{"position":[[789,8]]}}}],["small",{"_index":507,"t":{"31":{"position":[[617,5]]}}}],["snippet",{"_index":290,"t":{"12":{"position":[[227,9],[1305,9]]},"14":{"position":[[54,9],[1401,8]]},"16":{"position":[[352,9],[582,8],[1269,9],[1531,9]]},"39":{"position":[[173,8],[815,9],[1072,9],[1172,9],[2237,9],[4255,8]]}}}],["sole",{"_index":408,"t":{"24":{"position":[[232,6]]}}}],["solut",{"_index":114,"t":{"6":{"position":[[534,10],[552,8],[652,8],[708,8],[2449,9],[2487,8],[2767,9],[3556,8],[3774,8]]}}}],["sometim",{"_index":39,"t":{"2":{"position":[[655,9]]},"4":{"position":[[639,9]]},"24":{"position":[[175,9]]}}}],["specif",{"_index":240,"t":{"8":{"position":[[176,13]]},"12":{"position":[[98,13]]},"24":{"position":[[1425,13]]},"33":{"position":[[276,8]]},"35":{"position":[[2084,13]]}}}],["specifi",{"_index":211,"t":{"6":{"position":[[3905,7]]},"12":{"position":[[1195,9]]},"14":{"position":[[229,7]]},"16":{"position":[[398,9],[674,9]]},"22":{"position":[[549,9]]},"33":{"position":[[1120,7],[1979,9]]}}}],["sql_pull_data",{"_index":327,"t":{"14":{"position":[[624,14],[1343,13]]}}}],["sqldatabase.from_uri(self.config.get(\"sqlite_db_path",{"_index":345,"t":{"14":{"position":[[1530,55]]}}}],["sqlpulldata",{"_index":347,"t":{"14":{"position":[[1612,11]]}}}],["sqlpulldata(plugin",{"_index":341,"t":{"14":{"position":[[1433,20]]}}}],["stage",{"_index":357,"t":{"16":{"position":[[311,6]]}}}],["start",{"_index":146,"t":{"6":{"position":[[1473,8]]},"16":{"position":[[119,7],[1072,6]]},"33":{"position":[[736,5]]}}}],["state",{"_index":22,"t":{"2":{"position":[[296,8]]},"4":{"position":[[280,8]]},"14":{"position":[[153,7],[1206,7],[1284,6]]},"16":{"position":[[1303,6]]},"18":{"position":[[147,7]]}}}],["stateless",{"_index":350,"t":{"14":{"position":[[1719,9]]}}}],["statement",{"_index":207,"t":{"6":{"position":[[3759,10],[3817,9]]}}}],["static",{"_index":401,"t":{"22":{"position":[[751,6]]},"26":{"position":[[86,6]]}}}],["step",{"_index":17,"t":{"2":{"position":[[228,4]]},"4":{"position":[[212,4]]},"24":{"position":[[717,5],[780,5],[861,4],[1166,4]]},"39":{"position":[[1493,4]]}}}],["step_1",{"_index":418,"t":{"24":{"position":[[728,7]]}}}],["step_2",{"_index":419,"t":{"24":{"position":[[736,7]]}}}],["step_3",{"_index":420,"t":{"24":{"position":[[748,7]]}}}],["still",{"_index":62,"t":{"2":{"position":[[1140,5]]},"4":{"position":[[1124,5]]},"33":{"position":[[705,5]]}}}],["stop",{"_index":115,"t":{"6":{"position":[[617,4]]}}}],["storag",{"_index":668,"t":{"39":{"position":[[3990,7]]}}}],["store",{"_index":666,"t":{"39":{"position":[[3960,5]]}}}],["str",{"_index":250,"t":{"8":{"position":[[440,4],[454,4],[711,4],[719,4]]},"14":{"position":[[1490,5]]}}}],["straightforward",{"_index":439,"t":{"24":{"position":[[1757,16]]},"39":{"position":[[1923,16],[4363,15]]}}}],["string",{"_index":544,"t":{"33":{"position":[[1353,8]]},"35":{"position":[[478,8],[508,8],[551,8],[584,8],[617,8],[1349,8],[1385,9],[1452,8]]}}}],["structur",{"_index":417,"t":{"24":{"position":[[671,10],[1559,10]]}}}],["sub",{"_index":454,"t":{"24":{"position":[[2616,3]]}}}],["sub_path=exp_sub_path",{"_index":470,"t":{"24":{"position":[[3191,22]]}}}],["subdirectori",{"_index":230,"t":{"6":{"position":[[4405,12]]},"24":{"position":[[1455,14],[1732,13],[1808,12],[1914,12],[2161,13],[2889,13],[2929,12]]},"26":{"position":[[279,13]]}}}],["subject",{"_index":473,"t":{"24":{"position":[[3282,7]]}}}],["submit",{"_index":610,"t":{"35":{"position":[[2950,6]]}}}],["succe",{"_index":154,"t":{"6":{"position":[[1824,8],[1904,8],[1985,8],[2066,8],[2147,8]]}}}],["successfulli",{"_index":563,"t":{"33":{"position":[[2024,12]]}}}],["such",{"_index":179,"t":{"6":{"position":[[2843,4]]},"31":{"position":[[142,4]]},"33":{"position":[[641,4]]},"39":{"position":[[1998,4],[4264,4],[4651,4]]}}}],["suggest",{"_index":616,"t":{"37":{"position":[[478,12]]}}}],["sum",{"_index":127,"t":{"6":{"position":[[969,4],[1121,4],[1258,4],[1367,3],[1463,3],[1578,4],[1618,3],[1637,3],[1752,3],[1771,3],[1851,3],[1931,3],[2012,3],[2093,3],[2174,3],[2577,7]]}}}],["summari",{"_index":669,"t":{"39":{"position":[[4054,8]]}}}],["sunni",{"_index":71,"t":{"2":{"position":[[1262,5],[1408,5],[1836,9]]},"4":{"position":[[1246,5],[1392,5],[1820,9]]}}}],["super().__init__(task_descript",{"_index":253,"t":{"8":{"position":[[495,34]]}}}],["supervis",{"_index":109,"t":{"6":{"position":[[335,10]]}}}],["support",{"_index":328,"t":{"14":{"position":[[639,10]]},"16":{"position":[[1186,9]]},"33":{"position":[[235,7],[489,8],[609,7],[1162,8]]},"35":{"position":[[12,7],[154,7],[1906,7],[2889,7]]},"37":{"position":[[261,7]]}}}],["sure",{"_index":137,"t":{"6":{"position":[[1221,4]]}}}],["system",{"_index":554,"t":{"33":{"position":[[1649,9]]},"39":{"position":[[362,8],[556,6]]}}}],["take",{"_index":86,"t":{"2":{"position":[[1642,5]]},"4":{"position":[[1626,5]]},"39":{"position":[[2929,5]]}}}],["talk",{"_index":657,"t":{"39":{"position":[[3237,4],[3296,4],[3728,4]]}}}],["target",{"_index":110,"t":{"6":{"position":[[379,6],[591,7]]}}}],["task",{"_index":18,"t":{"2":{"position":[[233,5],[1101,5]]},"4":{"position":[[217,5],[1085,5]]},"6":{"position":[[236,4],[445,5],[485,4],[939,4],[964,4],[998,4],[1423,4],[2809,4],[2881,4],[3080,4],[3210,4],[4458,4]]},"24":{"position":[[84,5],[399,4],[423,4],[509,4],[574,5],[599,4],[822,4],[900,4],[917,4],[1001,4],[1224,4],[1269,4],[1292,4],[1345,4],[1674,4],[1697,4],[2239,4],[2262,4],[2416,4]]},"39":{"position":[[586,6],[1059,4],[1123,5],[1505,5],[1657,5],[3463,4],[3586,4],[4213,4]]}}}],["task_descript",{"_index":140,"t":{"6":{"position":[[1398,17],[2856,17]]},"8":{"position":[[422,17]]}}}],["task_typ",{"_index":448,"t":{"24":{"position":[[2453,9]]}}}],["task_type_1",{"_index":412,"t":{"24":{"position":[[460,12],[1593,11]]}}}],["task_type_2",{"_index":413,"t":{"24":{"position":[[473,12]]}}}],["task_type_3",{"_index":414,"t":{"24":{"position":[[490,12]]}}}],["tasktypeidentifi",{"_index":442,"t":{"24":{"position":[[2204,18],[2309,18]]}}}],["taskweav",{"_index":226,"t":{"6":{"position":[[4316,10]]},"8":{"position":[[51,11],[317,10]]},"12":{"position":[[3,11]]},"14":{"position":[[909,10]]},"16":{"position":[[108,10],[1199,10]]},"18":{"position":[[55,11],[322,10]]},"22":{"position":[[14,10]]},"24":{"position":[[93,11],[1824,11],[1938,10],[3262,10]]},"26":{"position":[[66,11]]},"29":{"position":[[107,10],[330,10]]},"31":{"position":[[70,10]]},"33":{"position":[[395,11],[2096,11],[2509,10]]},"35":{"position":[[50,11],[2927,11]]},"37":{"position":[[185,10],[365,11],[415,10]]},"39":{"position":[[9,10],[438,10],[2468,11],[2510,10],[3217,10],[4087,10],[4557,11],[4825,11]]}}}],["taskweaver.plugin",{"_index":292,"t":{"12":{"position":[[321,17]]}}}],["taskweaver/code_interpreter/code_interpreter/code_generator_prompt.pi",{"_index":587,"t":{"35":{"position":[[1125,70]]}}}],["taskweaver/planner/planner_prompt.pi",{"_index":575,"t":{"35":{"position":[[288,37]]}}}],["taskweaver/taskweaver/ext_rol",{"_index":675,"t":{"39":{"position":[[4480,30],[4612,30]]}}}],["taskweaverapp(app_dir=app_dir",{"_index":255,"t":{"8":{"position":[[541,30]]}}}],["taskweavervirtualuser(virtualus",{"_index":247,"t":{"8":{"position":[[367,35]]}}}],["tell",{"_index":191,"t":{"6":{"position":[[3065,4],[3096,4],[3195,4]]}}}],["term",{"_index":621,"t":{"39":{"position":[[57,4]]}}}],["test",{"_index":105,"t":{"6":{"position":[[221,4],[1028,4],[3707,4],[3727,4]]},"33":{"position":[[1229,4]]}}}],["text",{"_index":591,"t":{"35":{"position":[[1414,7],[1763,5],[1998,5],[2415,6],[2441,6]]},"39":{"position":[[2375,4],[4280,4]]}}}],["theori",{"_index":368,"t":{"16":{"position":[[974,7]]}}}],["therefor",{"_index":93,"t":{"6":{"position":[[0,10],[2650,10]]},"14":{"position":[[1027,10]]},"35":{"position":[[106,10]]},"39":{"position":[[427,10],[2086,10]]}}}],["though",{"_index":424,"t":{"24":{"position":[[1017,6]]},"39":{"position":[[1945,6]]}}}],["thought",{"_index":588,"t":{"35":{"position":[[1328,10],[1478,11],[2629,7],[2724,7]]}}}],["through",{"_index":355,"t":{"16":{"position":[[135,7]]},"39":{"position":[[3331,7],[3682,7]]}}}],["time",{"_index":24,"t":{"2":{"position":[[323,6]]},"4":{"position":[[307,6]]},"16":{"position":[[605,4]]}}}],["tip",{"_index":471,"t":{"24":{"position":[[3214,3]]}}}],["titl",{"_index":423,"t":{"24":{"position":[[866,6]]}}}],["today",{"_index":69,"t":{"2":{"position":[[1240,6],[1268,5],[1314,6],[1374,6],[1414,6]]},"4":{"position":[[1224,6],[1252,5],[1298,6],[1358,6],[1398,6]]}}}],["togeth",{"_index":660,"t":{"39":{"position":[[3505,9],[3561,8]]}}}],["topic",{"_index":388,"t":{"20":{"position":[[187,6]]}}}],["total",{"_index":144,"t":{"6":{"position":[[1457,5],[1572,5],[1746,5],[2636,5]]}}}],["track",{"_index":133,"t":{"6":{"position":[[1108,5],[1245,5],[1605,5]]}}}],["tradit",{"_index":118,"t":{"6":{"position":[[760,11]]}}}],["translat",{"_index":632,"t":{"39":{"position":[[449,10]]}}}],["treat",{"_index":9,"t":{"2":{"position":[[115,5]]},"4":{"position":[[99,5]]},"6":{"position":[[51,6],[3686,5]]},"8":{"position":[[134,7]]}}}],["tri",{"_index":503,"t":{"31":{"position":[[485,5]]}}}],["true",{"_index":310,"t":{"12":{"position":[[859,4],[874,4],[1039,4]]},"22":{"position":[[938,5]]},"33":{"position":[[2336,4]]}}}],["truth",{"_index":28,"t":{"2":{"position":[[401,5],[574,6],[1823,6]]},"4":{"position":[[385,5],[558,6],[1807,6]]},"6":{"position":[[737,6],[1391,6],[2215,5]]}}}],["two",{"_index":100,"t":{"6":{"position":[[139,3],[3259,3]]},"14":{"position":[[1038,3]]},"35":{"position":[[1740,3]]}}}],["type",{"_index":314,"t":{"12":{"position":[[1019,5],[1126,5]]},"14":{"position":[[396,5]]},"24":{"position":[[404,5],[428,5],[514,4],[604,5],[827,6],[905,6],[922,4],[1006,5],[1274,4],[1350,5],[1679,4],[2244,4],[2421,4]]},"33":{"position":[[1293,7],[1345,7]]},"35":{"position":[[373,7],[421,7],[470,7],[500,7],[543,7],[576,7],[609,7],[1246,7],[1294,7],[1341,7],[1377,7],[1444,7],[1981,5],[2120,4],[2217,5],[2377,5],[2433,4],[2462,5]]}}}],["type=\"experience_sub_path",{"_index":457,"t":{"24":{"position":[[2659,27]]}}}],["type=attachmenttype.shared_memory_entri",{"_index":452,"t":{"24":{"position":[[2551,40]]}}}],["typic",{"_index":8,"t":{"2":{"position":[[105,9],[370,9],[499,9]]},"4":{"position":[[89,9],[354,9],[483,9]]}}}],["under",{"_index":634,"t":{"39":{"position":[[593,5]]}}}],["understand",{"_index":56,"t":{"2":{"position":[[982,10]]},"4":{"position":[[966,10]]},"10":{"position":[[95,13]]},"31":{"position":[[787,10]]}}}],["unit",{"_index":205,"t":{"6":{"position":[[3722,4]]}}}],["unless",{"_index":399,"t":{"22":{"position":[[533,6]]}}}],["unnecessari",{"_index":652,"t":{"39":{"position":[[2186,11]]}}}],["us",{"_index":41,"t":{"2":{"position":[[673,3]]},"4":{"position":[[657,3]]},"6":{"position":[[1020,4],[2322,4],[2415,4],[3643,4],[3742,5]]},"12":{"position":[[1323,3],[1575,4],[1610,3]]},"14":{"position":[[23,4],[513,3]]},"16":{"position":[[831,4]]},"22":{"position":[[763,3]]},"24":{"position":[[2121,3]]},"33":{"position":[[461,3],[1066,4]]},"39":{"position":[[4197,6]]}}}],["user",{"_index":83,"t":{"2":{"position":[[1542,5]]},"4":{"position":[[1526,5]]},"16":{"position":[[1067,4]]},"24":{"position":[[1148,4],[1201,4]]},"33":{"position":[[1712,7]]},"39":{"position":[[4716,5]]}}}],["user'",{"_index":370,"t":{"16":{"position":[[1146,6]]},"39":{"position":[[123,6],[464,6],[4689,6]]}}}],["valu",{"_index":315,"t":{"12":{"position":[[1251,6]]},"35":{"position":[[1744,7]]}}}],["variabl",{"_index":642,"t":{"39":{"position":[[1040,9],[2311,10]]}}}],["veri",{"_index":426,"t":{"24":{"position":[[1092,4]]},"39":{"position":[[990,4]]}}}],["version",{"_index":213,"t":{"6":{"position":[[3941,8],[3954,7]]},"29":{"position":[[96,7]]}}}],["virtualus",{"_index":273,"t":{"8":{"position":[[1002,11]]}}}],["vllm",{"_index":525,"t":{"33":{"position":[[571,5],[747,4],[780,5],[825,4],[1152,4],[1238,4],[2046,5],[2550,4]]}}}],["vllm.entrypoints.openai.api_serv",{"_index":531,"t":{"33":{"position":[[888,34]]}}}],["want",{"_index":75,"t":{"2":{"position":[[1337,4]]},"4":{"position":[[1321,4]]},"24":{"position":[[23,4],[958,4]]}}}],["way",{"_index":177,"t":{"6":{"position":[[2747,3]]},"16":{"position":[[880,3]]},"22":{"position":[[758,4]]},"24":{"position":[[1871,4],[1885,3]]},"33":{"position":[[425,3]]},"39":{"position":[[4114,3]]}}}],["we'v",{"_index":484,"t":{"31":{"position":[[0,5]]}}}],["weather",{"_index":68,"t":{"2":{"position":[[1232,7],[1306,7],[1354,7]]},"4":{"position":[[1216,7],[1290,7],[1338,7]]}}}],["weight",{"_index":157,"t":{"6":{"position":[[1869,7],[1950,7],[2031,7],[2112,7],[2194,7],[2305,7],[2642,7],[3321,7]]}}}],["well",{"_index":239,"t":{"8":{"position":[[100,5]]},"31":{"position":[[579,5],[865,5]]}}}],["whether",{"_index":365,"t":{"16":{"position":[[814,7]]}}}],["whole",{"_index":461,"t":{"24":{"position":[[2775,5]]}}}],["without",{"_index":397,"t":{"22":{"position":[[497,8]]}}}],["word",{"_index":662,"t":{"39":{"position":[[3716,6]]}}}],["work",{"_index":123,"t":{"6":{"position":[[903,6],[4063,7],[4187,7]]},"8":{"position":[[285,7]]},"31":{"position":[[574,4],[860,4]]},"35":{"position":[[2796,4]]},"39":{"position":[[3500,4],[3556,4]]}}}],["workflow",{"_index":640,"t":{"39":{"position":[[937,8],[1412,8]]}}}],["wrap",{"_index":289,"t":{"12":{"position":[[140,7]]},"39":{"position":[[728,7]]}}}],["write",{"_index":204,"t":{"6":{"position":[[3651,5]]},"39":{"position":[[680,5]]}}}],["yaml",{"_index":125,"t":{"6":{"position":[[924,4],[2271,4],[3892,4],[4429,4]]},"12":{"position":[[743,4],[771,4],[1185,4],[1350,4],[1497,4]]},"14":{"position":[[307,4],[356,4],[782,4],[961,4]]},"16":{"position":[[415,4],[493,4],[691,4],[960,4]]},"18":{"position":[[108,4]]}}}],["ye",{"_index":77,"t":{"2":{"position":[[1388,4]]},"4":{"position":[[1372,4]]}}}],["york",{"_index":73,"t":{"2":{"position":[[1281,5],[1369,4]]},"4":{"position":[[1265,5],[1353,4]]}}}]],"pipeline":["stemmer"]}}] \ No newline at end of file +[{"documents":[{"i":1,"t":"","u":"/TaskWeaver/blog/archive","b":["Blog"]},{"i":2,"t":"How to evaluate a LLM agent?","u":"/TaskWeaver/blog/evaluation","b":["Blog"]},{"i":10,"t":"Plugins In-Depth","u":"/TaskWeaver/blog/plugin","b":["Blog"]},{"i":20,"t":"Run TaskWeaver with Locally Deployed Not-that-Large Language Models","u":"/TaskWeaver/blog/local_llm","b":["Blog"]},{"i":30,"t":"Experience selection","u":"/TaskWeaver/blog/experience","b":["Blog"]},{"i":38,"t":"Roles in TaskWeaver","u":"/TaskWeaver/blog/role","b":["Blog"]}],"index":{"version":"2.3.9","fields":["t"],"fieldVectors":[["t/1",[]],["t/2",[0,1.466,1,1.466,2,1.466]],["t/10",[3,1.716,4,1.716]],["t/20",[5,0.925,6,0.618,7,0.925,8,0.925,9,0.925,10,0.925,11,0.925]],["t/30",[12,1.716,13,1.716]],["t/38",[6,1.147,14,1.716]]],"invertedIndex":[["agent",{"_index":2,"t":{"2":{"position":[[22,6]]}}}],["deploy",{"_index":8,"t":{"20":{"position":[[28,8]]}}}],["depth",{"_index":4,"t":{"10":{"position":[[11,5]]}}}],["evalu",{"_index":0,"t":{"2":{"position":[[7,8]]}}}],["experi",{"_index":12,"t":{"30":{"position":[[0,10]]}}}],["languag",{"_index":10,"t":{"20":{"position":[[52,8]]}}}],["larg",{"_index":9,"t":{"20":{"position":[[46,5]]}}}],["llm",{"_index":1,"t":{"2":{"position":[[18,3]]}}}],["local",{"_index":7,"t":{"20":{"position":[[20,7]]}}}],["model",{"_index":11,"t":{"20":{"position":[[61,6]]}}}],["plugin",{"_index":3,"t":{"10":{"position":[[0,7]]}}}],["role",{"_index":14,"t":{"38":{"position":[[0,5]]}}}],["run",{"_index":5,"t":{"20":{"position":[[0,3]]}}}],["select",{"_index":13,"t":{"30":{"position":[[11,9]]}}}],["taskweav",{"_index":6,"t":{"20":{"position":[[4,10]]},"38":{"position":[[9,10]]}}}]],"pipeline":["stemmer"]}},{"documents":[{"i":4,"t":"The challenges","u":"/TaskWeaver/blog/evaluation","h":"#the-challenges","p":2},{"i":6,"t":"A new evaluation method","u":"/TaskWeaver/blog/evaluation","h":"#a-new-evaluation-method","p":2},{"i":8,"t":"How to adapt for other agents?","u":"/TaskWeaver/blog/evaluation","h":"#how-to-adapt-for-other-agents","p":2},{"i":12,"t":"Plugin Basics","u":"/TaskWeaver/blog/plugin","h":"#plugin-basics","p":10},{"i":14,"t":"Configurations and States","u":"/TaskWeaver/blog/plugin","h":"#configurations-and-states","p":10},{"i":16,"t":"The Plugin Lifecycle","u":"/TaskWeaver/blog/plugin","h":"#the-plugin-lifecycle","p":10},{"i":18,"t":"Conclusion","u":"/TaskWeaver/blog/plugin","h":"#conclusion","p":10},{"i":22,"t":"Motivation","u":"/TaskWeaver/blog/local_llm","h":"#motivation","p":20},{"i":24,"t":"Constrained Generation","u":"/TaskWeaver/blog/local_llm","h":"#constrained-generation","p":20},{"i":26,"t":"How we implemented the constrained generation in TaskWeaver","u":"/TaskWeaver/blog/local_llm","h":"#how-we-implemented-the-constrained-generation-in-taskweaver","p":20},{"i":28,"t":"Conclusion","u":"/TaskWeaver/blog/local_llm","h":"#conclusion","p":20},{"i":32,"t":"Static experience selection","u":"/TaskWeaver/blog/experience","h":"#static-experience-selection","p":30},{"i":34,"t":"Dynamic experience selection","u":"/TaskWeaver/blog/experience","h":"#dynamic-experience-selection","p":30},{"i":36,"t":"Conclusion","u":"/TaskWeaver/blog/experience","h":"#conclusion","p":30}],"index":{"version":"2.3.9","fields":["t"],"fieldVectors":[["t/4",[0,2.895]],["t/6",[1,1.912,2,1.912,3,1.912]],["t/8",[4,2.303,5,2.303]],["t/12",[6,1.792,7,2.303]],["t/14",[8,2.303,9,2.303]],["t/16",[6,1.792,10,2.303]],["t/18",[11,1.83]],["t/22",[12,2.895]],["t/24",[13,1.792,14,1.792]],["t/26",[13,1.272,14,1.272,15,1.634,16,1.634]],["t/28",[11,1.83]],["t/32",[17,1.912,18,1.487,19,1.487]],["t/34",[18,1.487,19,1.487,20,1.912]],["t/36",[11,1.83]]],"invertedIndex":[["adapt",{"_index":4,"t":{"8":{"position":[[7,5]]}}}],["agent",{"_index":5,"t":{"8":{"position":[[23,7]]}}}],["basic",{"_index":7,"t":{"12":{"position":[[7,6]]}}}],["challeng",{"_index":0,"t":{"4":{"position":[[4,10]]}}}],["conclus",{"_index":11,"t":{"18":{"position":[[0,10]]},"28":{"position":[[0,10]]},"36":{"position":[[0,10]]}}}],["configur",{"_index":8,"t":{"14":{"position":[[0,14]]}}}],["constrain",{"_index":13,"t":{"24":{"position":[[0,11]]},"26":{"position":[[23,11]]}}}],["dynam",{"_index":20,"t":{"34":{"position":[[0,7]]}}}],["evalu",{"_index":2,"t":{"6":{"position":[[6,10]]}}}],["experi",{"_index":18,"t":{"32":{"position":[[7,10]]},"34":{"position":[[8,10]]}}}],["gener",{"_index":14,"t":{"24":{"position":[[12,10]]},"26":{"position":[[35,10]]}}}],["implement",{"_index":15,"t":{"26":{"position":[[7,11]]}}}],["lifecycl",{"_index":10,"t":{"16":{"position":[[11,9]]}}}],["method",{"_index":3,"t":{"6":{"position":[[17,6]]}}}],["motiv",{"_index":12,"t":{"22":{"position":[[0,10]]}}}],["new",{"_index":1,"t":{"6":{"position":[[2,3]]}}}],["plugin",{"_index":6,"t":{"12":{"position":[[0,6]]},"16":{"position":[[4,6]]}}}],["select",{"_index":19,"t":{"32":{"position":[[18,9]]},"34":{"position":[[19,9]]}}}],["state",{"_index":9,"t":{"14":{"position":[[19,6]]}}}],["static",{"_index":17,"t":{"32":{"position":[[0,6]]}}}],["taskweav",{"_index":16,"t":{"26":{"position":[[49,10]]}}}]],"pipeline":["stemmer"]}},{"documents":[{"i":1,"t":"Archive","s":"","u":"/TaskWeaver/blog/archive","p":1},{"i":2,"t":"The challenges","s":"How to evaluate a LLM agent?","u":"/TaskWeaver/blog/evaluation","p":2},{"i":10,"t":"**Pre-requisites**: Please refer to the Introduction and the Plugin Development","s":"Plugins In-Depth","u":"/TaskWeaver/blog/plugin","p":10},{"i":20,"t":"The feature introduced in this blog post can cause incompatibility issue with the previous version of TaskWeaver","s":"Run TaskWeaver with Locally Deployed Not-that-Large Language Models","u":"/TaskWeaver/blog/local_llm","p":20},{"i":30,"t":"We have introduced the motivation of the experience module in Experience","s":"Experience selection","u":"/TaskWeaver/blog/experience","p":30},{"i":38,"t":"We frame TaskWeaver as a code-first agent framework. The term \"code-first\" means that the agent is designed to","s":"Roles in TaskWeaver","u":"/TaskWeaver/blog/role","p":38}],"index":{"version":"2.3.9","fields":["t"],"fieldVectors":[["t/1",[0,2.337]],["t/2",[1,2.337]],["t/10",[2,1.442,3,1.442,4,1.442,5,1.442,6,1.442,7,1.442,8,1.442]],["t/20",[9,1.21,10,0.809,11,1.21,12,1.21,13,1.21,14,1.21,15,1.21,16,1.21,17,1.21,18,0.809]],["t/30",[10,1.105,19,1.653,20,2.222,21,1.653]],["t/38",[18,0.731,22,1.093,23,1.653,24,1.653,25,1.653,26,1.093,27,1.093,28,1.093,29,1.093]]],"invertedIndex":[["agent",{"_index":25,"t":{"38":{"position":[[36,5],[90,5]]}}}],["archiv",{"_index":0,"t":{"1":{"position":[[0,7]]}}}],["blog",{"_index":11,"t":{"20":{"position":[[31,4]]}}}],["caus",{"_index":13,"t":{"20":{"position":[[45,5]]}}}],["challeng",{"_index":1,"t":{"2":{"position":[[4,10]]}}}],["code",{"_index":23,"t":{"38":{"position":[[25,4],[62,5]]}}}],["design",{"_index":29,"t":{"38":{"position":[[99,8]]}}}],["develop",{"_index":8,"t":{"10":{"position":[[68,11]]}}}],["experi",{"_index":20,"t":{"30":{"position":[[41,10],[62,10]]}}}],["featur",{"_index":9,"t":{"20":{"position":[[4,7]]}}}],["first",{"_index":24,"t":{"38":{"position":[[30,5],[68,6]]}}}],["frame",{"_index":22,"t":{"38":{"position":[[3,5]]}}}],["framework",{"_index":26,"t":{"38":{"position":[[42,10]]}}}],["incompat",{"_index":14,"t":{"20":{"position":[[51,15]]}}}],["introduc",{"_index":10,"t":{"20":{"position":[[12,10]]},"30":{"position":[[8,10]]}}}],["introduct",{"_index":6,"t":{"10":{"position":[[40,12]]}}}],["issu",{"_index":15,"t":{"20":{"position":[[67,5]]}}}],["mean",{"_index":28,"t":{"38":{"position":[[75,5]]}}}],["modul",{"_index":21,"t":{"30":{"position":[[52,6]]}}}],["motiv",{"_index":19,"t":{"30":{"position":[[23,10]]}}}],["pleas",{"_index":4,"t":{"10":{"position":[[20,6]]}}}],["plugin",{"_index":7,"t":{"10":{"position":[[61,6]]}}}],["post",{"_index":12,"t":{"20":{"position":[[36,4]]}}}],["pre",{"_index":2,"t":{"10":{"position":[[0,5]]}}}],["previou",{"_index":16,"t":{"20":{"position":[[82,8]]}}}],["refer",{"_index":5,"t":{"10":{"position":[[27,5]]}}}],["requisit",{"_index":3,"t":{"10":{"position":[[6,13]]}}}],["taskweav",{"_index":18,"t":{"20":{"position":[[102,10]]},"38":{"position":[[9,10]]}}}],["term",{"_index":27,"t":{"38":{"position":[[57,4]]}}}],["version",{"_index":17,"t":{"20":{"position":[[91,7]]}}}]],"pipeline":["stemmer"]}},{"documents":[],"index":{"version":"2.3.9","fields":["t"],"fieldVectors":[],"invertedIndex":[],"pipeline":["stemmer"]}},{"documents":[{"i":3,"t":"The challenges​ It is nontrivial to evaluate the performance of a LLM agent. Existing evaluation methods typically treat the LLM agent as a function that maps input data to output data. If the agent is evaluated against a multi-step task, the evaluation process is then like a chain of calling a stateful function multiple times. To judge the output of the agent, it is typically compared to a ground truth or a reference output. As the output of the agent is in natural language, the evaluation is typically done by matching keywords or phrases in the output to the ground truth. This evaluation method has its limitations due to its rigid nature. It is sometimes hard to use keywords matching to evaluate the output of the agent, especially when the output is long and complex. For example, if the answer is a date or a number, the evaluation method may not be able to handle the different formats. Moreover, the evaluation method should be able to act more like a human, who can understand the context and the meaning of the output. For example, when different agents are asked to perform the same task, they may behave differently, but still produce correct outputs. The below example illustrates this point: Human: What is the weather today? Agent 1: It is sunny today in New York. Human: What is the weather today? Agent 2: Do you want to know the weather in New York today? Human: Yes. Agent 2: It is sunny today. Compared to Agent 1, Agent 2 asks for confirmation before providing the answer, which requires more interaction with the user. However, both agents provide the correct answer to the question. But if the evaluation method takes the agent as a function, it may not be able to handle the different behaviors of the agents and consider Agent 2 as incorrect (as the first response does not match the ground truth, e.g., \"sunny\").","s":"How to evaluate a LLM agent?","u":"/TaskWeaver/blog/evaluation","h":"","p":2},{"i":5,"t":"It is nontrivial to evaluate the performance of a LLM agent. Existing evaluation methods typically treat the LLM agent as a function that maps input data to output data. If the agent is evaluated against a multi-step task, the evaluation process is then like a chain of calling a stateful function multiple times. To judge the output of the agent, it is typically compared to a ground truth or a reference output. As the output of the agent is in natural language, the evaluation is typically done by matching keywords or phrases in the output to the ground truth. This evaluation method has its limitations due to its rigid nature. It is sometimes hard to use keywords matching to evaluate the output of the agent, especially when the output is long and complex. For example, if the answer is a date or a number, the evaluation method may not be able to handle the different formats. Moreover, the evaluation method should be able to act more like a human, who can understand the context and the meaning of the output. For example, when different agents are asked to perform the same task, they may behave differently, but still produce correct outputs. The below example illustrates this point: Human: What is the weather today? Agent 1: It is sunny today in New York. Human: What is the weather today? Agent 2: Do you want to know the weather in New York today? Human: Yes. Agent 2: It is sunny today. Compared to Agent 1, Agent 2 asks for confirmation before providing the answer, which requires more interaction with the user. However, both agents provide the correct answer to the question. But if the evaluation method takes the agent as a function, it may not be able to handle the different behaviors of the agents and consider Agent 2 as incorrect (as the first response does not match the ground truth, e.g., \"sunny\").","s":"The challenges","u":"/TaskWeaver/blog/evaluation","h":"#the-challenges","p":2},{"i":7,"t":"Therefore, we propose a new evaluation method that treats the agent as a conversational partner as shown in the figure below: We introduce two new roles during the evaluation process: the Examiner and the Judge. For each test case, the task description is first given to the Examiner. The Examiner then asks questions to the agent and supervises the conversation. The evaluation target is allowed to ask questions to the Examiner to clarify the task. The Examiner can only provide the task description and cannot provide any hints or solutions. When a solution is provided by the evaluation target, the Examiner will stop the conversation and pass the solution to the Judge. The Judge will then evaluate the solution based on the ground truth. Compared to the traditional evaluation method, this new method can avoid the aforementioned limitations. Let's see an example of how the new evaluation method works. The following YAML file is a task description for the task \"Sum of 1 to 50\". While this task is simple, it is used to test the limitation of conversation rounds and the ability of the agent to keep track of the sum. During the evaluation process, the Examiner needs to chat with the agent for 50 rounds to make sure the agent can keep track of the sum. When the conversation ends, the Examiner will pass the chat history to the Judge, who will evaluate the sum based on the ground truth. task_description: |- The task has many rounds. The initial total sum is 0. Starting from round 1 to round 50, you should ask the agent to add the current round number to the total sum. The agent should keep track of the sum and return the sum after the 50th round. Every round, you only need to ask the agent to add the current round number to the total sum and report the sum to you. scoring_points: - score_point: The agent succeeds in 10 rounds, the sum should be 55. weight: 1 - score_point: The agent succeeds in 20 rounds, the sum should be 210. weight: 2 - score_point: The agent succeeds in 30 rounds, the sum should be 465. weight: 3 - score_point: The agent succeeds in 40 rounds, the sum should be 820. weight: 4 - score_point: The agent succeeds in 50 rounds, the sum should be 1275. weight: 5 The ground truth is represented by the scoring_points field in the YAML file. Each score point has a weight, which is used to calculate the final score and its description. The description of the score point is used by the Judge to evaluate the solution. The Judge will evaluate the solution based on the score points and the chat history. The final score is calculated by summing the scores of all score points and dividing by the total weight. Therefore, the normalized score is between 0 and 1. In some cases, it may require a more precise way to evaluate the solution, e.g., with code. This following task description is an example of such a case. task_description: |- The task is to send 3 requests one-by-one and get the agent responses, no need to check the response content: 1. generate 1 random integer number and save it to a file named 'a.txt', just tell me if the task is done 2. tell me a random joke 3. save the previously generated random number to a file named 'b.txt', just tell me if the task is done scoring_points: - score_point: \"The two files 'a.txt' and 'b.txt' should contain the same number\" weight: 1 eval_code: |- content_a = open('a.txt', 'r').read().strip() content_b = open('b.txt', 'r').read().strip() assert content_a == content_b, f\"content of a.txt: {content_a}, content of b.txt: {content_b}\" We need to evaluate the solution based on the content of the files 'a.txt' and 'b.txt'. The eval_code field is used to write the evaluation code. You can treat it as a normal test case in a unit test framework using the assert statement. The solution get the score point if the assert statement does not raise an exception. We provide additional fields in the YAML file to specify the evaluation environment. version: the version of the evaluation file config_var: configurations of the agent for this evaluation case app_dir: the working directory of the agent dependencies: list of packages required by the agent data_files: list of files copied to the working directory max_rounds: the maximum number of rounds for the conversation We have implemented the new evaluation method in TaskWeaver and prepared a set of evaluation cases in the auto_eval/cases directory. Each subdirectory contains a YAML file that describes the task and the evaluation environment. To run the evaluation, you can find more details in the auto_eval/README.md file.","s":"A new evaluation method","u":"/TaskWeaver/blog/evaluation","h":"#a-new-evaluation-method","p":2},{"i":9,"t":"Although the new evaluation method is designed for TaskWeaver, it can be applied to other agents as well, as long as the agent can be treated as a conversational partner. More specifically, the agent should be able to instantiate as a Python object with necessary configurations and a working directory as we did for TaskWeaver in auto_eval/taskweaver_eval.py: class TaskWeaverVirtualUser(VirtualUser): def __init__(self, task_description: str, app_dir: str, config_var: Optional[dict] = None): super().__init__(task_description) self.app = TaskWeaverApp(app_dir=app_dir, config=config_var) self.session = self.app.get_session() self.session_id = self.session.session_id def get_reply_from_agent(self, message: str) -> str: response_round = self.session.send_message( message, event_handler=None, ) assert response_round.state != \"failed\", \"Failed to get response from agent.\" return response_round.post_list[-1].message def close(self): self.app.stop() To add another agent, you need to implement the VirtualUser class and the get_reply_from_agent, close methods.","s":"How to adapt for other agents?","u":"/TaskWeaver/blog/evaluation","h":"#how-to-adapt-for-other-agents","p":2},{"i":11,"t":"Pre-requisites: Please refer to the Introduction and the Plugin Development pages for a better understanding of the plugin concept and its development process.","s":"Plugins In-Depth","u":"/TaskWeaver/blog/plugin","h":"","p":10},{"i":13,"t":"In TaskWeaver, the plugins are the essential components to extend the functionality of the agent. Specifically, a plugin is a piece of code wrapped in a class that can be called as a function by the agent in the generated code snippets. The following is a simple example of a plugin that generates n random numbers: from taskweaver.plugin import Plugin, register_plugin @register_plugin class RandomGenerator(Plugin): def __call__(self, n: int): import random return [random.randint(1, 100) for _ in range(n)] In this example, the RandomGenerator class inherits the Plugin class and implements the __call__ method, which means it can be called as a function. What would be the function signature of the plugin? It is defined in the associated YAML file. For example, the YAML file for the RandomGenerator plugin is as follows: name: random_generator enabled: true required: true description: >- This plugin generates n random numbers between 1 and 100. examples: |- result = random_generator(n=5) parameters: - name: n type: int required: true description: >- The number of random numbers to generate. returns: - name: result type: list description: >- The list of random numbers. The YAML file specifies the name, description, parameters, and return values of the plugin. When the LLM generates the code snippets, it will use the information in the YAML file to generate the function signature. We did not check the discrepancy between the function signature in the Python implementation and the YAML file. So, it is important to keep them consistent. The examples field is used to provide examples of how to use the plugin for the LLM.","s":"Plugin Basics","u":"/TaskWeaver/blog/plugin","h":"#plugin-basics","p":10},{"i":15,"t":"Although the plugin is used as a function in the code snippets, it is more than a normal Python function. The plugin can have its own configurations and states. For example, the RandomGenerator plugin can have a configuration to specify the range of the random numbers. The configurations can be set in the YAML file as follows: # the previous part of the YAML file configurations: - name: range type: list required: false description: >- The range of the random numbers. default: [1, 100] We did not show how to use the configurations in the plugin implementation, which could be found in one of our sample plugins, namely sql_pull_data. Supporting configurations in the plugin is a powerful feature to make the plugin more flexible and reusable. For example, we can have multiple YAML files pointing to the same Python implementation but with different configurations. Read this page for more details. When TaskWeaver loads the plugins, it will elaborate the YAML files and create the plugin objects with the configurations. Therefore, two plugins with the same Python implementation but different configurations are actually different objects in memory. That is why different plugins can have different states, and this is especially helpful when the plugin needs to maintain some states across different calls. Consider the example of the sql_pull_data sample plugin, which has the following code snippet: @register_plugin class SqlPullData(Plugin): db = None def __call__(self, query: str): ... if self.db is None: self.db = SQLDatabase.from_uri(self.config.get(\"sqlite_db_path\")) In the example above, the SqlPullData plugin maintains a database connection across different calls. If we design the plugin to be a stateless normal Python function, we would need to establish a new connection for each call, which is inefficient and not necessary.","s":"Configurations and States","u":"/TaskWeaver/blog/plugin","h":"#configurations-and-states","p":10},{"i":17,"t":"The plugin lifecycle is the process of how the plugin is loaded, initialized, and called by the agent. When TaskWeaver starts, it goes through all the plugin configuration files in the plugins directory and creates the plugin entries in the memory. The Python implementation of the plugin is not loaded at this stage. When the agent generates the code snippets, it will call the plugin by the name specified in the YAML file, and fill in the function signature based on the information in the YAML file. The plugin is loaded and initialized when the code executor executes the code snippets for the first time in a session. The plugin is initialized with the configurations specified in the YAML file. Although we have the feature to dynamically select the plugins in the LLM, all the plugins are loaded no matter whether they are used in the current conversation round. The only way of controlling the plugin loading is to enable or disable the plugin in the YAML file. In theory, the plugins can be configured separately for different sessions. For example, when a user starts a new session, we can load a different set of plugins based on the user's profile. But this feature is not supported in TaskWeaver yet. The plugin is called when the agent executes the code snippets. The plugin can maintain states across different calls, which has been discussed in the previous section. As each session is associated with a Jupyter kernel, the plugin objects are created in the kernel memory and can be accessed across different code snippets, from different code cells, in the same session. When the session is closed, the plugin objects are also destroyed with the kernel.","s":"The Plugin Lifecycle","u":"/TaskWeaver/blog/plugin","h":"#the-plugin-lifecycle","p":10},{"i":19,"t":"In this page, we discussed the basics of the plugin in TaskWeaver, including the plugin implementation, the YAML file, the configurations, and the states. We also introduced the plugin lifecycle, which is the process of how the plugin is loaded, initialized, and called by the agent. The plugin is a powerful component in TaskWeaver to extend the functionality of the agent.","s":"Conclusion","u":"/TaskWeaver/blog/plugin","h":"#conclusion","p":10},{"i":21,"t":"info The feature introduced in this blog post can cause incompatibility issue with the previous version of TaskWeaver if you have customized the examples for the planner and code interpreter. The issue is easy to fix by changing the examples to the new schema. Please refer to the How we implemented the constrained generation in TaskWeaver section for more details.","s":"Run TaskWeaver with Locally Deployed Not-that-Large Language Models","u":"/TaskWeaver/blog/local_llm","h":"","p":20},{"i":23,"t":"We've seen many raised issues complaining that it is difficult to run TaskWeaver with locally deployed non-that-large language models (LLMs), such as 7b or 13b. When we examine the issues, we find that the main problem is that the models failed to generate responses following our formatting instructions in the prompt. For instance, we see that the planner's response does not contain a send_to field, which is required to determine the recipient of the message. In the past, we have tried to address this issue by adding more examples in the prompt, which however did not work well, especially for these relatively small models. Another idea was to ask the model to re-generate the response if it does not follow the format. We include the format error in the prompt to help the model understand the error and correct it. However, this approach also did not work well.","s":"Motivation","u":"/TaskWeaver/blog/local_llm","h":"#motivation","p":20},{"i":25,"t":"Recently, we discovered a new approach called \"Constrained Generation\" that can enforce the model to generate responses following the format. Popular frameworks include Outlines, Guidance, lm-format-enforcer, etc. All these frameworks support generating responses following a specific format, e.g., a JSON schema. This makes it possible to control the output format by providing it a schema. In TaskWeaver, a relatively easy way to integrate this feature is to use a local deployment that supports both constrained generation and OpenAI compatible API, for instance, the vllm. There are other frameworks that support constrained generation, such as llama.cpp. But currently, we found that this feature is still not mature enough, so we start with vllm for experimentation. To run vllm, you can follow the instructions in the vllm documentation. A simple example is shown below: python -m vllm.entrypoints.openai.api_server --model meta-llama/Meta-Llama-3-8B-Instruct --guided-decoding-backend lm-format-enforcer where --guided-decoding-backend lm-format-enforcer is used to enable the constrained generation feature and specify the backend. Currently, vllm only supports lm-format-enforcer and outlines. Here is a sample code to test the vllm server: from openai import OpenAI json_schema = { \"type\": \"object\", \"properties\": { \"country_name\": { \"type\": \"string\" } }, \"required\": [\"country_name\"] } openai_api_key = \"EMPTY\" openai_api_base = \"http://localhost:8000/v1\" client = OpenAI( api_key=openai_api_key, base_url=openai_api_base, ) completion = client.chat.completions.create( model=\"meta-llama/Meta-Llama-3-8B-Instruct\", messages = [ {\"role\": \"system\", \"content\": \"You are a helpful assistant.\"}, {\"role\": \"user\", \"content\": \"Which country is San Francisco in?\"} ], extra_body={ \"guided_json\": json_schema, \"guided_decoding_backend\": \"lm-format-enforcer\" } ) print(\"Completion result:\", completion) If you run the above code, you will get the response following the format specified in the json_schema. After you have successfully deployed vllm, you can set the following configurations in TaskWeaver: { \"llm.model\": \"meta-llama/Meta-Llama-3-8B-Instruct\", \"llm.api_base\": \"http://localhost:8000/v1\", \"llm.api_key\": \"null\", \"llm.api_type\": \"openai\", \"llm.openai.require_alternative_roles\": false, \"llm.openai.support_system_role\": true } The llm.openai.require_alternative_roles and llm.openai.support_system_role configurations are discussed in the OpenAI Configuration page. With these configurations, TaskWeaver will send the messages to the vllm server and get the responses.","s":"Constrained Generation","u":"/TaskWeaver/blog/local_llm","h":"#constrained-generation","p":20},{"i":27,"t":"In order to support the constrained generation in TaskWeaver, we need to provide the schema to the model. Therefore, we made a few changes in the code to support this feature. First, we add a response_json_schema field to the planner and code interpreter. For planner, you can find it in taskweaver/planner/planner_prompt.py. It looks like this: response_json_schema: |- { \"type\": \"object\", \"properties\": { \"response\": { \"type\": \"object\", \"properties\": { \"init_plan\": { \"type\": \"string\" }, \"plan\": { \"type\": \"string\" }, \"current_plan_step\": { \"type\": \"string\" }, \"send_to\": { \"type\": \"string\" }, \"message\": { \"type\": \"string\" } }, \"required\": [ \"init_plan\", \"plan\", \"current_plan_step\", \"send_to\", \"message\" ] } }, \"required\": [\"response\"] } If you are familiar with the previous output schema, you may notice that we have changed the response field to an object from an array of elements. This is because that it is much easier to express the schema in JSON format if the properties are in an object, not elements in an array. Correspondingly, we add a response_json_schema field to the code interpreter. You can find it in taskweaver/code_interpreter/code_interpreter/code_generator_prompt.py, which looks like this: response_json_schema: |- { \"type\": \"object\", \"properties\": { \"response\": { \"type\": \"object\", \"properties\": { \"thought\": { \"type\": \"string\" }, \"reply_type\": { \"type\": \"string\", \"enum\": [\"python\", \"text\"] }, \"reply_content\": { \"type\": \"string\" } }, \"required\": [\"thought\", \"reply_type\", \"reply_content\"] } }, \"required\": [\"response\"] } We also change the response field to an object from an array of elements in the code interpreter. A benefit of this change is that we can now easily restrict the reply_type field to only two values: python and text, which is not possible before. One consequence of this change is that we need to modify the examples for the code interpreter in order to support the new schema. The old examples contain attachments that have the types of python, text, and sample, which are deprecated. We now need to change them to the new schema. Specifically, we need to change the type field to reply_type and the content field to reply_content. For example, the old example: - type: python content: |- file_path = \"/abc/def.txt\" with open(file_path, \"r\") as file: file_contents = file.read() print(file_contents) should be changed to: - type: reply_type content: python # or 'text' if the old type is 'text' or 'sample' - type: reply_content content: |- file_path = \"/abc/def.txt\" with open(file_path, \"r\") as file: file_contents = file.read() print(file_contents) There could be multiple thought attachments in the code interpreter examples. But in the new schema, there is only one thought field. So we have added code to do the conversion and no manual work is needed to modify the examples. If you have examples, after these changes, we can now support the constrained generation in TaskWeaver. Second, we submit the JSON schema to the model when we need to call the endpoint, which you can find in planner.py and code_generator.py, respectively.","s":"How we implemented the constrained generation in TaskWeaver","u":"/TaskWeaver/blog/local_llm","h":"#how-we-implemented-the-constrained-generation-in-taskweaver","p":20},{"i":29,"t":"In this blog post, we have introduced a new feature called \"Constrained Generation\" that can enforce the model to generate responses following the format. We have also shown how to run TaskWeaver with locally deployed non-that-large language models (LLMs) that support constrained generation. We have also explained how we implemented the constrained generation in TaskWeaver. We hope this feature can help you run TaskWeaver with LLMs more easily. If you have any questions or suggestions, please feel free to contact us.","s":"Conclusion","u":"/TaskWeaver/blog/local_llm","h":"#conclusion","p":20},{"i":31,"t":"We have introduced the motivation of the experience module in Experience and how to create a handcrafted experience in Handcrafted Experience. In this blog post, we discuss more advanced topics about the experience module on experience selection.","s":"Experience selection","u":"/TaskWeaver/blog/experience","h":"","p":30},{"i":33,"t":"Every role in TaskWeaver can configure its own experience directory, which can be configured by setting the role_name.experience_dir field in the project configuration file. For the Planner and CodeInterpreter roles, you can configure the experience directory by setting the planner.experience_dir and code_interpreter.experience_dir fields respectively. The default experience directory is experience in the project directory. info The role name is by default the name of the implementation file (without the extension) of the role unless you have specified the role name by calling _set_name in the implementation file. By configuring different experience directories for different roles, you can have different experiences for different roles in a static way. Use the Planner role as an example, you can have the following project configuration file to enable the experience selection for the Planner role. { \"planner.use_experience\": true, \"planner.experience_dir\": \"planner_exp_dir\" }","s":"Static experience selection","u":"/TaskWeaver/blog/experience","h":"#static-experience-selection","p":30},{"i":35,"t":"In some cases, you may want to select the experience dynamically based on the input task. In TaskWeaver, although we retrieve the experience based on the query content, it is sometimes difficult to obtain the right experience based solely on the similarity between the query content and the experience content. One real example we encountered is that we need to retrieve the experience based on the task type. We have many task types in the project, let's say task_type_1, task_type_2, and task_type_3. Every task type is about following a set of instructions to complete a task. Although different task types have different instructions, the instructions are similar in structure. For example, they all have similar steps like step_1, step_2, and step_3, only the content of the steps is slightly different for different task types. Actually, even most of the step titles are the same for different task types. Each task type has its own experience, and we want to select the experience based on the task type. Even though we can mix all the experiences into one experience directory, it is very hard to differentiate the experiences based on the user input or the step content. In this project, the user input is simply a task ID, and we need to first figure out the task type based on the task ID, and then select the experience based on the task type. To achieve this, we add a layer in the experience selection process. Specifically, we allow having subdirectories in the experience directory. For example, we can have the following experience directory structure: planner_experience ├── task_type_1 │ ├── exp_1.yaml │ ├── exp_2.yaml │ └── ... When we can identify the task type based on the task ID, we can set the experience subdirectory. This looks straightforward, but how can we set the experience subdirectory in TaskWeaver? As we need to do this in a dynamic way, the only way is to set the experience subdirectory in a role. TaskWeaver recently introduced the concept of shared memory as discussed in Shared Memory. Shared memory allows a role to share information with other roles, and in this case, we can use shared memory to set the experience subdirectory. We can add a new role called TaskTypeIdentifier to identify the task type based on the task ID. The key part of the reply function in TaskTypeIdentifier is shown below: def reply(self, memory: Memory, **kwargs: ...) -> Post: # ... # get the task type from the last post message task_type = get_task_type(last_post.message) # create an attachment post_proxy.update_attachment( type=AttachmentType.shared_memory_entry, message=\"Add experience sub path\", extra=SharedMemoryEntry.create( type=\"experience_sub_path\", scope=\"conversation\", # define the effective scope of the shared memory entry to be the whole conversation content=\"task_type_1\", ), ) return post_proxy.end() In a role that needs to set the experience subdirectory, we can get the experience subdirectory from the shared memory. exp_sub_paths = memory.get_shared_memory_entries( entry_type=\"experience_sub_path\", ) if exp_sub_paths: exp_sub_path = exp_sub_paths[0].content else: exp_sub_path = \"\" selected_experiences = self.load_experience(query=query, sub_path=exp_sub_path) tip This is the current experimental feature in TaskWeaver which is subject to change.","s":"Dynamic experience selection","u":"/TaskWeaver/blog/experience","h":"#dynamic-experience-selection","p":30},{"i":37,"t":"In this blog post, we have discussed how to select experiences in TaskWeaver. We have static experience selection by configuring the experience directory for each role. To enable dynamic experience selection, we have introduced the concept of shared memory to set the experience subdirectory.","s":"Conclusion","u":"/TaskWeaver/blog/experience","h":"#conclusion","p":30},{"i":39,"t":"We frame TaskWeaver as a code-first agent framework. The term \"code-first\" means that the agent is designed to convert the user's request into one or multiple runnable code snippets and then execute them to generate the response. The philosophy behind this design is to consider programming languages as the de facto language for communication in cyber-physical systems, just like the natural language for human communication. Therefore, TaskWeaver translates the user's request in natural language into programming languages, which can be executed by the system to perform the desired tasks. Under this design, when the developer needs to extend the agent's capability, they can write a new plugin. A plugin is a piece of code wrapped in a class that can be called as a function by the agent in the generated code snippets. Let's consider an example: the agent is asked to load a CSV file and perform anomaly detection on the data. The workflow of the agent is in the diagram below. It is very natural to represent data to be processed in variables and this task in code snippets. However, we do find challenges for other tasks that are not naturally represented in code snippets. Let's consider another example: the agent is asked to read a manual and follow the instructions to process the data. We first assume there is a plugin that can read the manual and extract the instructions, called read_manual. The workflow of the agent is in the diagram below. This diagram only shows the first step of the task, which is to read the manual and extract the instructions. Although it does obtain the instructions, and the agent can follow them to complete the task, the behavior of the agent is less natural compared to the previous example. Why? First, there is no need to generate code to read the manual and extract the instructions. Once the Planner has decided to read the manual, the code to extract the instructions is straightforward. Even though that there might be dynamic parts in the code such as some arguments in the function read_manual, it could be handled by the Planner. Therefore, the Code Generator is not necessary in this case, and the current flow actually incurred unnecessary LLM call overhead to generate the code snippets. Second, it does not make sense to represent the instructions in variables. The instructions are not data to be processed, but a text guide for the agent to follow. For these reasons, we introduced the concept of roles in TaskWeaver. Roles are actually not new in TaskWeaver as there are already roles like Planner and CodeInterpreter. To add a new role, the developer can follow the documentation here. In general, a role is a class that inherits the Role class and implements the reply method. The reply method is the function that the agent calls to interact with the role, which has the following signature: def reply(self, memory: Memory, **kwargs) -> Post: # implementation It takes the memory object, which is the memory of the agent, and returns a Post object, which is the response of the role to the Planner. With the memory object, the role can access the history of the conversation and the context of the conversation. You may have noticed that all roles in TaskWeaver can only talk to the Planner, not to each other. If a role needs to talk to another role, it should go through the Planner. This design is to ensure that the Planner can control the conversation and the flow of the conversation. For a task that requires multiple roles to work together, the Planner can orchestrate the roles to work together to complete the task as shown in the diagram below. The communication between the Planner and the roles is done through the Post object. In other words, they talk to each other by sending messages in natural language. What if a role needs to send some data to another role? If this is the case, we would recommend to implement a new plugin instead of a new role. Otherwise, you may need to store the data in an external storage like a database and let the other role to access it. In summary, the concept of roles in TaskWeaver is to provide a way to extend the agent's capability by implementing new roles. This is especially useful when the task is not naturally represented in code snippets such as acquire text information from a knowledge base or the internet. Implementing a new role is straightforward by inheriting the Role class and implementing the reply method. All extra roles should be put in the TaskWeaver/taskweaver/ext_role folder, which will be automatically loaded by TaskWeaver. We have provided a few sample roles in the TaskWeaver/taskweaver/ext_role folder, such as the Echo role that echoes the user's message back to the user. More advanced role examples are the Planner and the CodeInterpreter roles, which are the core roles in TaskWeaver.","s":"Roles in TaskWeaver","u":"/TaskWeaver/blog/role","h":"","p":38}],"index":{"version":"2.3.9","fields":["t"],"fieldVectors":[["t/3",[0,1.964,1,1.964,2,2.897,3,2.303,4,1.296,5,1.738,6,1.964,7,1.953,8,3.17,9,1.409,10,1.304,11,1.964,12,1.646,13,2.303,14,2.859,15,1.964,16,1.964,17,1.409,18,1.706,19,0.808,20,1.964,21,0.444,22,1.219,23,1.219,24,1.646,25,1.646,26,1.971,27,2.657,28,2.657,29,1.409,30,2.303,31,1.219,32,1.409,33,3.17,34,2.748,35,1.964,36,1.646,37,1.964,38,1.964,39,1.646,40,1.646,41,0.609,42,1.219,43,1.646,44,1.964,45,0.599,46,3.17,47,1.964,48,1.219,49,2.303,50,1.856,51,1.061,52,1.964,53,1.964,54,0.852,55,2.878,56,1.409,57,1.646,58,1.409,59,1.706,60,1.061,61,1.964,62,1.646,63,1.964,64,2.303,65,1.061,66,1.964,67,1.409,68,3.17,69,3.614,70,1.706,71,3.17,72,0.621,73,2.748,74,2.878,75,1.646,76,1.964,77,1.964,78,1.964,79,1.646,80,1.296,81,0.703,82,1.646,83,1.061,84,1.646,85,1.409,86,1.646,87,1.646,88,1.409,89,1.964,90,0.926,91,0.703,92,1.409]],["t/5",[1,1.969,2,2.898,3,2.308,4,1.299,5,1.739,6,1.969,7,1.955,8,3.174,9,1.412,10,1.306,11,1.969,12,1.65,13,2.308,14,2.861,15,1.969,16,1.969,17,1.412,18,1.709,19,0.81,20,1.969,21,0.445,22,1.222,23,1.222,24,1.65,25,1.65,26,1.975,27,2.661,28,2.661,29,1.412,30,2.308,31,1.222,32,1.412,33,3.174,34,2.753,35,1.969,36,1.65,37,1.969,38,1.969,39,1.65,40,1.65,41,0.61,42,1.222,43,1.65,44,1.969,45,0.6,46,3.174,47,1.969,48,1.222,49,2.308,50,1.858,51,1.064,52,1.969,53,1.969,54,0.853,55,2.881,56,1.412,57,1.65,58,1.412,59,1.709,60,1.064,61,1.969,62,1.65,63,1.969,64,2.308,65,1.064,66,1.969,67,1.412,68,3.174,69,3.617,70,1.709,71,3.174,72,0.622,73,2.753,74,2.881,75,1.65,76,1.969,77,1.969,78,1.969,79,1.65,80,1.299,81,0.705,82,1.65,83,1.064,84,1.65,85,1.412,86,1.65,87,1.65,88,1.412,89,1.969,90,0.929,91,0.705,92,1.412]],["t/7",[2,2.878,5,1.605,7,1.557,9,1.328,18,2.281,19,0.762,25,2.573,26,0.833,27,1.936,28,1.936,32,1.328,36,1.552,41,0.893,45,0.35,48,1.906,54,0.574,59,1.637,60,0.627,65,0.627,67,2.066,70,2,72,0.651,74,1.552,80,1.243,81,0.663,85,1.328,90,0.548,91,0.663,92,0.833,93,1.328,94,1.446,95,1.659,96,1.161,97,0.721,98,1.161,99,0.478,100,1.552,101,0.627,102,2.307,103,3.345,104,1.249,105,2.636,106,2.573,107,2.573,108,1.446,109,1.446,110,2.307,111,1.161,112,1.446,113,1.446,114,4.295,115,1.446,116,2.307,117,1.891,118,1.446,119,1.446,120,1.446,121,0.973,122,1.161,123,1.434,124,0.663,125,1.637,126,1.485,127,4.814,128,3.284,129,0.973,130,3.825,131,1.446,132,2.31,133,2.878,134,1.425,135,2.878,136,0.833,137,1.446,138,1.446,139,1.852,140,1.852,141,1.099,142,0.973,143,0.973,144,3.284,145,2.307,146,0.973,147,1.15,148,1.15,149,0.721,150,1.446,151,1.446,152,2.878,153,3.824,154,3.588,155,1.446,156,1.446,157,4.167,158,1.446,159,1.446,160,1.446,161,1.446,162,2.31,163,1.446,164,1.446,165,1.446,166,1.446,167,1.446,168,1.161,169,1.434,170,4.295,171,2.307,172,2.307,173,1.446,174,1.852,175,0.833,176,1.446,177,0.627,178,0.762,179,0.833,180,0.973,181,1.161,182,1.15,183,1.161,184,1.657,185,0.663,186,1.936,187,1.446,188,2.307,189,1.15,190,3.284,191,2.878,192,1.446,193,1.446,194,3.284,195,1.552,196,2.307,197,2.878,198,1.446,199,2.307,200,2.878,201,1.446,202,2.31,203,1.446,204,1.161,205,1.446,206,0.973,207,2.307,208,1.161,209,1.446,210,1.446,211,0.627,212,2.307,213,1.852,214,1.161,215,0.478,216,1.161,217,1.249,218,1.446,219,1.552,220,1.446,221,1.446,222,1.446,223,1.446,224,1.446,225,0.36,226,0.142,227,1.446,228,0.548,229,1.446,230,0.973,231,1.446,232,0.833,233,0.833,234,0.973,235,1.446]],["t/9",[2,1.829,5,1.624,7,1.77,9,1.829,43,2.137,54,0.79,72,0.576,91,0.913,95,1.378,96,2.55,123,1.583,134,1.378,140,2.55,141,1.49,147,1.583,149,1.583,202,2.55,214,2.55,215,1.049,216,2.55,217,1.378,225,0.79,226,0.401,236,1.583,237,2.137,238,3.176,239,2.55,240,1.583,241,3.176,242,1.378,243,1.378,244,2.137,245,3.176,246,2.349,247,3.176,248,2.246,249,3.176,250,3.817,251,3.176,252,2.55,253,3.176,254,3.176,255,3.176,256,3.176,257,3.176,258,3.176,259,3.176,260,3.176,261,3.176,262,1.77,263,3.176,264,3.176,265,3.176,266,3.176,267,3.275,268,3.176,269,3.176,270,3.176,271,3.176,272,2.137,273,3.176,274,3.176,275,2.55]],["t/11",[19,1.362,29,2.374,56,2.374,276,4.122,277,4.122,278,2.774,279,4.122,280,2.076,281,3.841,282,2.374,283,4.122,284,2.374]],["t/13",[4,1.346,5,1.174,7,1.121,10,1.567,21,0.645,41,1.011,45,0.72,48,2.288,58,1.488,70,1.288,80,0.978,81,1.022,107,2.946,124,1.022,125,2.288,126,1.517,129,1.738,132,2.074,141,1.32,149,2.026,169,1.288,175,2.047,178,1.343,183,2.074,185,1.364,186,3.089,189,2.182,211,1.121,219,2.392,225,0.884,226,0.254,240,1.288,242,1.121,246,2.521,248,1.288,280,2.207,285,2.583,286,2.074,287,1.738,288,2.074,289,2.074,290,2.047,291,4.379,292,2.583,293,3.263,294,2.854,295,2.583,296,2.074,297,3.555,298,2.583,299,2.854,300,2.583,301,2.583,302,2.854,303,2.074,304,2.583,305,2.735,306,2.074,307,2.074,308,2.583,309,1.288,310,2.735,311,2.854,312,2.583,313,3.555,314,1.772,315,2.074,316,1.488,317,2.583,318,2.583]],["t/15",[10,1.328,21,0.729,22,2.003,23,1.261,41,0.872,42,1.261,45,0.658,48,1.746,50,2.097,54,1,60,1.52,67,1.457,70,1.261,72,0.459,81,0.727,88,1.457,93,1.457,100,1.702,104,1.098,107,1.702,124,1.007,125,2.163,126,1.433,134,1.52,136,1.457,141,1.31,174,2.813,178,1.157,182,1.261,186,2.358,189,1.746,211,1.098,215,1.652,219,1.702,225,1,226,0.249,228,0.958,234,1.702,236,1.261,237,1.702,242,1.883,243,1.52,244,1.702,246,1.457,248,1.261,250,2.031,252,2.813,280,2.282,282,1.457,290,2.018,294,2.031,296,2.031,299,2.031,302,2.031,314,1.261,319,4.02,320,1.261,321,1.702,322,2.031,323,2.031,324,2.031,325,2.031,326,2.018,327,3.504,328,1.261,329,2.031,330,0.958,331,2.529,332,2.529,333,2.031,334,1.457,335,2.529,336,1.457,337,1.702,338,1.261,339,1.457,340,2.813,341,2.529,342,2.529,343,2.031,344,3.504,345,2.529,346,2.031,347,2.529,348,2.031,349,3.504,350,2.529,351,2.529,352,2.529]],["t/17",[4,1.008,5,1.364,10,0.879,19,0.879,21,0.804,22,1.326,24,1.791,41,0.662,45,0.404,50,2.013,60,1.155,72,0.483,83,1.155,90,1.008,95,1.155,104,1.155,117,2.089,125,2.21,126,1.533,130,2.137,143,2.778,146,2.441,148,1.326,177,1.155,178,1.582,185,0.765,189,1.326,211,1.574,215,1.364,217,1.155,225,0.662,226,0.357,228,1.008,236,1.326,242,1.155,243,1.574,275,2.137,280,2.333,290,2.553,305,1.791,307,2.137,309,1.326,316,1.533,320,1.326,328,1.326,330,1.374,334,2.757,336,2.089,338,1.808,340,2.137,353,2.137,354,2.661,355,2.137,356,2.137,357,2.661,358,2.661,359,2.661,360,2.913,361,4.788,362,1.533,363,1.326,364,2.661,365,2.661,366,1.791,367,2.661,368,2.661,369,2.661,370,2.137,371,2.661,372,1.155,373,2.137,374,2.661,375,4.128,376,2.137,377,2.661,378,2.661]],["t/19",[5,1.528,10,1.285,19,1.285,21,0.706,22,1.939,99,1.285,125,1.939,126,1.285,143,2.618,215,1.285,225,0.968,226,0.455,280,2.262,282,2.24,286,3.123,287,2.618,329,3.123,334,2.24,353,3.123,372,1.688,379,3.891,380,2.618]],["t/21",[29,2.205,45,0.695,54,0.953,72,0.695,99,1.265,178,1.265,185,1.1,213,3.074,225,0.953,226,0.451,234,2.577,278,2.577,320,1.908,330,1.45,373,3.074,381,3.074,382,2.205,383,1.661,384,3.829,385,3.829,386,3.677,387,3.829,388,2.205,389,3.074,390,3.074,391,3.829,392,2.577,393,2.577,394,2.205]],["t/23",[4,1.227,31,1.615,42,1.615,45,0.492,51,1.973,54,0.806,56,1.866,59,1.615,64,2.18,81,0.931,91,1.307,103,2.601,122,2.601,123,2.059,124,1.187,142,2.18,169,1.615,179,1.866,185,1.187,195,2.18,208,2.601,226,0.319,232,1.866,233,1.866,239,3.316,262,1.406,267,2.601,272,2.18,339,1.866,380,2.18,386,3.651,395,3.24,396,3.24,397,3.24,398,2.601,399,2.18,400,2.18,401,2.601,402,2.601,403,2.849,404,3.24,405,3.24,406,3.24,407,3.24,408,1.866,409,4.548,410,2.601,411,3.24,412,2.601,413,3.24,414,3.24,415,3.24,416,3.24,417,3.24,418,2.601,419,2.601,420,3.24,421,3.24,422,3.24,423,4.131,424,2.601]],["t/25",[14,1.213,21,0.382,41,0.765,45,0.32,51,2.079,62,1.417,65,0.914,72,0.382,80,0.797,81,0.605,83,0.914,84,1.417,91,1.148,92,1.213,97,1.05,101,1.334,105,1.691,124,1.221,129,1.417,136,1.213,141,1.503,146,1.417,148,1.533,162,2.916,177,0.914,178,1.016,179,1.213,180,1.417,184,1.771,185,1.275,206,2.445,211,1.334,215,1.32,226,0.357,228,0.797,232,1.771,240,1.05,242,0.914,243,0.914,262,1.334,282,1.213,293,1.691,309,1.05,310,1.417,311,1.691,314,1.533,322,1.691,325,1.691,326,1.213,328,1.991,330,1.376,339,1.213,346,1.691,366,1.417,372,0.914,380,1.417,390,1.691,393,2.069,394,2.301,399,1.417,400,2.069,403,1.771,408,2.301,410,1.691,419,1.691,424,1.691,425,1.691,426,2.106,427,3.562,428,2.106,429,3.075,430,2.106,431,4.249,432,2.106,433,1.691,434,1.691,435,2.106,436,4.437,437,2.106,438,2.106,439,4.697,440,2.106,441,2.106,442,2.106,443,1.691,444,1.691,445,2.106,446,2.106,447,3.075,448,3.633,449,3.633,450,3.633,451,2.469,452,3.075,453,3.633,454,1.691,455,3.075,456,3.633,457,1.691,458,3.075,459,1.691,460,2.106,461,2.106,462,2.106,463,3.075,464,2.106,465,2.106,466,2.106,467,2.069,468,2.106,469,2.106,470,1.691,471,2.106,472,2.106,473,2.106,474,2.106,475,2.106,476,2.106,477,2.106,478,2.106,479,2.106,480,2.106,481,2.106,482,2.106,483,2.106,484,2.106,485,3.075,486,3.075]],["t/27",[14,1.1,21,0.347,23,0.952,45,0.674,51,0.829,72,0.623,79,1.286,80,0.724,81,1.095,90,0.724,91,1.231,93,1.1,95,0.829,100,1.286,123,0.952,126,0.945,134,1.859,141,1.566,147,1.426,169,2.276,178,1.467,182,1.426,184,2.194,185,0.823,195,1.286,226,0.282,233,1.976,240,0.952,242,1.771,243,1.927,262,1.242,314,2.558,315,1.534,320,0.952,326,1.648,328,1.899,330,0.724,388,1.648,389,3.276,392,3.142,393,2.988,394,1.648,403,1.648,412,2.298,418,1.534,433,2.298,434,1.534,457,3.276,459,3.666,487,2.862,488,1.911,489,1.534,490,3.81,491,1.911,492,2.298,493,2.862,494,2.862,495,2.862,496,1.911,497,1.534,498,3.431,499,3.431,500,1.911,501,1.911,502,1.911,503,1.911,504,1.911,505,3.81,506,4.081,507,1.911,508,3.276,509,3.81,510,1.911,511,3.431,512,1.534,513,1.911,514,1.911,515,2.862,516,3.431,517,2.298,518,1.911,519,2.862,520,2.862,521,2.862,522,2.862,523,2.862,524,2.862,525,2.862,526,1.534,527,1.534,528,1.911,529,1.911,530,1.911,531,1.911,532,1.534]],["t/29",[4,1.679,21,0.658,31,1.808,51,1.574,54,0.903,72,0.658,85,2.089,91,1.043,97,1.808,99,1.199,124,1.043,185,1.433,225,0.903,226,0.471,232,2.553,278,2.441,328,1.808,330,1.679,339,2.089,382,2.089,383,1.574,394,2.757,399,2.441,400,2.441,401,2.913,402,2.913,403,2.553,427,2.913,512,2.913,533,3.628,534,3.628,535,3.628,536,3.628,537,3.628,538,3.628]],["t/31",[54,1,99,1.328,336,2.315,363,2.003,372,1.744,382,2.315,383,1.744,539,4.02,540,3.068,541,4.714,542,4.714,543,3.227,544,4.02]],["t/33",[21,0.588,41,0.806,45,0.492,50,2.078,101,2.28,124,0.931,126,1.582,141,1.187,169,2.059,177,1.406,189,2.267,211,1.406,215,1.671,217,2.147,225,1.028,226,0.319,228,1.564,309,1.615,310,2.18,323,3.316,363,1.615,381,2.601,388,2.619,532,2.601,540,2.961,545,3.24,546,3.651,547,2.601,548,4.131,549,3.24,550,3.24,551,3.24,552,3.24,553,3.24,554,2.601,555,3.24,556,3.24]],["t/35",[10,0.615,12,2.274,17,2.167,18,2.562,19,0.615,21,0.338,39,1.254,40,1.254,41,0.463,45,0.513,50,1.751,60,0.808,65,0.808,72,0.338,75,1.889,83,1.218,90,0.705,95,0.808,97,0.929,98,1.496,99,0.615,101,1.751,104,0.808,106,1.889,111,2.254,117,2.721,121,1.254,124,0.807,134,1.632,141,1.508,142,1.254,147,1.4,148,0.929,149,0.929,175,1.073,177,1.218,182,1.4,184,2.324,217,1.466,226,0.37,228,1.607,230,2.963,236,1.4,240,0.929,248,0.929,262,0.808,284,1.073,306,1.496,314,2.452,316,1.073,321,1.254,330,0.705,336,1.073,337,1.254,338,2.259,343,2.254,356,1.496,362,1.617,363,1.875,372,0.808,383,1.218,392,1.254,398,1.496,408,1.946,425,1.496,443,1.496,467,1.254,492,1.496,517,1.496,540,2.989,546,2.254,557,2.808,558,1.496,559,1.863,560,1.863,561,3.379,562,1.863,563,1.863,564,2.808,565,1.863,566,1.863,567,2.808,568,1.863,569,1.863,570,1.863,571,1.863,572,2.254,573,1.863,574,1.496,575,1.863,576,1.496,577,1.863,578,1.863,579,3.762,580,1.863,581,1.863,582,1.863,583,1.863,584,1.863,585,1.863,586,1.863,587,2.808,588,1.496,589,3.535,590,2.808,591,1.863,592,1.496,593,1.496,594,1.496,595,1.863,596,1.863,597,1.863,598,1.863,599,1.863,600,1.863,601,1.863,602,1.863,603,1.863,604,1.863,605,1.863,606,1.863,607,1.863,608,1.863,609,1.863,610,1.863,611,3.762,612,1.863,613,1.863,614,1.863,615,1.863,616,1.863,617,1.863,618,1.863,619,1.863]],["t/37",[99,1.301,101,1.709,104,1.709,215,1.301,217,1.709,226,0.388,228,1.491,230,2.65,284,2.268,309,1.963,338,1.963,362,2.268,363,2.472,372,1.709,382,2.268,383,1.709,540,3.012,554,3.161,589,3.161]],["t/39",[0,1.211,3,1.606,4,0.571,5,1.529,7,1.284,10,0.978,13,2.621,17,0.869,18,2.108,19,0.978,21,0.61,23,1.189,26,0.869,30,2.746,31,1.942,32,0.869,41,0.375,42,0.752,45,0.51,49,1.015,54,0.375,55,1.015,57,1.015,58,0.869,59,1.189,65,1.284,72,0.74,80,0.904,81,0.434,82,1.015,83,0.655,86,1.015,87,1.015,88,1.704,90,1.387,91,0.686,93,1.374,95,1.46,97,0.752,99,0.498,101,2.257,104,1.035,106,1.606,117,0.869,121,1.606,123,1.189,124,1.053,126,0.498,134,1.59,136,0.869,139,1.211,141,0.686,147,0.752,148,0.752,149,0.752,168,2.7,175,0.869,177,0.655,178,1.551,179,1.704,180,1.606,181,1.916,182,0.752,185,1.12,204,1.211,206,1.015,225,0.969,226,0.416,233,0.869,236,0.752,237,2.263,243,1.46,244,1.015,246,1.937,248,0.752,262,1.035,272,1.991,280,1.46,281,1.916,284,1.374,287,1.606,288,1.211,289,1.211,290,2.243,303,1.916,305,1.015,316,0.869,320,0.752,321,1.015,324,1.211,326,0.869,333,2.941,334,1.374,337,1.606,338,1.826,348,1.211,355,1.916,360,1.916,362,0.869,366,1.015,370,2.376,376,1.916,383,1.284,388,2.569,408,2.436,444,1.211,451,1.211,454,1.211,467,1.606,470,1.916,489,1.211,497,1.211,508,1.916,526,2.941,527,1.211,543,1.211,547,1.916,558,1.211,572,1.211,574,1.211,576,1.211,588,1.916,592,2.376,593,1.211,594,1.211,620,1.509,621,1.509,622,1.509,623,1.509,624,1.509,625,1.509,626,2.386,627,1.509,628,1.509,629,2.96,630,1.509,631,1.509,632,1.509,633,1.509,634,1.509,635,2.386,636,2.386,637,1.509,638,1.509,639,1.509,640,2.386,641,3.364,642,2.386,643,1.509,644,3.364,645,2.386,646,1.509,647,1.509,648,1.509,649,1.509,650,2.386,651,1.509,652,1.509,653,1.509,654,1.509,655,1.509,656,1.509,657,2.96,658,1.509,659,1.509,660,2.386,661,1.509,662,1.509,663,1.509,664,1.509,665,1.509,666,1.509,667,1.509,668,1.509,669,1.509,670,1.509,671,1.509,672,1.509,673,1.509,674,1.509,675,2.386,676,2.386,677,1.509,678,2.386,679,1.509,680,1.509]]],"invertedIndex":[["",{"_index":141,"t":{"7":{"position":[[1416,1],[2874,1],[3342,1],[3355,1],[3401,1],[3454,2]]},"9":{"position":[[486,1],[539,1],[604,1],[645,1],[717,1],[739,1],[797,1],[827,2]]},"13":{"position":[[892,1],[963,1],[973,1],[1057,1],[1150,1]]},"15":{"position":[[329,1],[436,1],[1457,1],[1496,3],[1528,1]]},"25":{"position":[[1289,1],[1291,1],[1325,1],[1343,1],[1362,1],[1364,2],[1396,1],[1413,1],[1439,1],[1475,1],[1535,1],[1548,1],[1636,1],[1638,1],[1769,2],[1861,1],[1863,1],[2108,1],[2341,1]]},"27":{"position":[[368,1],[371,1],[405,1],[419,1],[453,1],[468,1],[487,2],[498,1],[517,2],[541,1],[560,2],[574,1],[593,2],[607,1],[626,1],[628,2],[643,1],[708,1],[710,1],[712,2],[740,1],[1241,1],[1244,1],[1278,1],[1292,1],[1326,1],[1339,1],[1358,2],[1375,1],[1422,2],[1442,1],[1461,1],[1463,2],[1521,1],[1523,2],[1551,1],[2239,1],[2252,1],[2318,1],[2410,1],[2491,1],[2504,1],[2570,1]]},"33":{"position":[[910,1],[988,1]]},"35":{"position":[[1589,3],[1605,1],[1607,3],[1622,1],[1624,3],[1639,1],[1641,3],[1645,3],[2386,4],[2392,1],[2400,1],[2402,3],[2406,1],[2463,1],[2498,1],[2709,1],[2817,2],[2820,1],[2980,1],[3050,1],[3083,1],[3129,1],[3131,2],[3155,1]]},"39":{"position":[[2901,1],[2909,1]]}}}],["0",{"_index":145,"t":{"7":{"position":[[1470,2],[2693,1]]}}}],["1",{"_index":70,"t":{"3":{"position":[[1253,2],[1439,2]]},"5":{"position":[[1237,2],[1423,2]]},"7":{"position":[[977,1],[1493,1],[1877,1],[2699,2],[2987,2],[2999,1],[3329,1]]},"13":{"position":[[942,1]]},"15":{"position":[[481,3]]}}}],["10",{"_index":155,"t":{"7":{"position":[[1836,2]]}}}],["100",{"_index":299,"t":{"13":{"position":[[486,4],[948,4]]},"15":{"position":[[485,4]]}}}],["1275",{"_index":166,"t":{"7":{"position":[[2188,5]]}}}],["13b",{"_index":405,"t":{"23":{"position":[[156,4]]}}}],["1].messag",{"_index":269,"t":{"9":{"position":[[910,10]]}}}],["2",{"_index":74,"t":{"3":{"position":[[1327,2],[1399,2],[1448,1],[1759,1]]},"5":{"position":[[1311,2],[1383,2],[1432,1],[1743,1]]},"7":{"position":[[1958,1],[3093,2]]}}}],["20",{"_index":158,"t":{"7":{"position":[[1916,2]]}}}],["210",{"_index":159,"t":{"7":{"position":[[1945,4]]}}}],["3",{"_index":162,"t":{"7":{"position":[[2039,1],[2897,1],[3118,2]]},"25":{"position":[[953,1],[1611,1],[2146,1]]}}}],["30",{"_index":160,"t":{"7":{"position":[[1997,2]]}}}],["4",{"_index":165,"t":{"7":{"position":[[2120,1]]}}}],["40",{"_index":163,"t":{"7":{"position":[[2078,2]]}}}],["465",{"_index":161,"t":{"7":{"position":[[2026,4]]}}}],["5",{"_index":167,"t":{"7":{"position":[[2202,1]]}}}],["50",{"_index":128,"t":{"7":{"position":[[982,4],[1203,2],[1504,3],[2159,2]]}}}],["50th",{"_index":150,"t":{"7":{"position":[[1651,4]]}}}],["55",{"_index":156,"t":{"7":{"position":[[1865,3]]}}}],["7b",{"_index":404,"t":{"23":{"position":[[150,2]]}}}],["820",{"_index":164,"t":{"7":{"position":[[2107,4]]}}}],["8b",{"_index":450,"t":{"25":{"position":[[955,2],[1613,2],[2148,2]]}}}],["_",{"_index":300,"t":{"13":{"position":[[495,1]]}}}],["__call__",{"_index":304,"t":{"13":{"position":[[598,8]]}}}],["__call__(self",{"_index":296,"t":{"13":{"position":[[422,14]]},"15":{"position":[[1468,14]]}}}],["__init__(self",{"_index":249,"t":{"9":{"position":[[407,14]]}}}],["_set_nam",{"_index":553,"t":{"33":{"position":[[584,9]]}}}],["a.txt",{"_index":190,"t":{"7":{"position":[[3051,8],[3269,7],[3481,6],[3599,7]]}}}],["abc/def.txt",{"_index":520,"t":{"27":{"position":[[2254,14],[2506,14]]}}}],["abil",{"_index":131,"t":{"7":{"position":[[1079,7]]}}}],["abov",{"_index":346,"t":{"15":{"position":[[1601,6]]},"25":{"position":[[1920,5]]}}}],["access",{"_index":376,"t":{"17":{"position":[[1500,8]]},"39":{"position":[[3102,6],[4040,6]]}}}],["achiev",{"_index":581,"t":{"35":{"position":[[1359,7]]}}}],["acquir",{"_index":670,"t":{"39":{"position":[[4272,7]]}}}],["act",{"_index":53,"t":{"3":{"position":[[951,3]]},"5":{"position":[[935,3]]}}}],["actual",{"_index":337,"t":{"15":{"position":[[1119,8]]},"35":{"position":[[834,9]]},"39":{"position":[[2168,8],[2490,8]]}}}],["ad",{"_index":418,"t":{"23":{"position":[[516,6]]},"27":{"position":[[2750,5]]}}}],["add",{"_index":147,"t":{"7":{"position":[[1536,3],[1710,3]]},"9":{"position":[[957,3]]},"27":{"position":[[186,3],[1048,3]]},"35":{"position":[[1376,3],[2182,3]]},"39":{"position":[[2585,3]]}}}],["addit",{"_index":210,"t":{"7":{"position":[[3867,10]]}}}],["address",{"_index":417,"t":{"23":{"position":[[494,7]]}}}],["advanc",{"_index":543,"t":{"31":{"position":[[178,8]]},"39":{"position":[[4727,8]]}}}],["aforement",{"_index":120,"t":{"7":{"position":[[821,14]]}}}],["against",{"_index":15,"t":{"3":{"position":[[212,7]]},"5":{"position":[[196,7]]}}}],["agent",{"_index":5,"t":{"3":{"position":[[70,6],[129,5],[193,5],[357,6],[451,5],[725,6],[1064,6],[1247,5],[1321,5],[1393,5],[1433,5],[1442,5],[1562,6],[1652,5],[1733,6],[1753,5]]},"5":{"position":[[54,6],[113,5],[177,5],[341,6],[435,5],[709,6],[1048,6],[1231,5],[1305,5],[1377,5],[1417,5],[1426,5],[1546,6],[1636,5],[1717,6],[1737,5]]},"7":{"position":[[62,5],[325,5],[1094,5],[1193,5],[1230,5],[1527,5],[1587,5],[1701,5],[1818,5],[1898,5],[1979,5],[2060,5],[2141,5],[2931,5],[4019,5],[4088,5],[4141,5]]},"9":{"position":[[90,6],[121,5],[194,5],[869,7],[969,6]]},"13":{"position":[[91,6],[199,5]]},"17":{"position":[[96,6],[327,5],[1245,5]]},"19":{"position":[[277,6],[368,6]]},"39":{"position":[[36,5],[90,5],[787,5],[856,5],[953,5],[1218,5],[1428,5],[1619,5],[1683,5],[2394,5],[2784,5],[2981,6]]}}}],["agent'",{"_index":635,"t":{"39":{"position":[[651,7],[4132,7]]}}}],["allow",{"_index":111,"t":{"7":{"position":[[389,7]]},"35":{"position":[[1442,5],[2043,6]]}}}],["alreadi",{"_index":656,"t":{"39":{"position":[[2534,7]]}}}],["although",{"_index":236,"t":{"9":{"position":[[0,8]]},"15":{"position":[[0,8]]},"17":{"position":[[702,8]]},"35":{"position":[[105,8],[580,8]]},"39":{"position":[[1569,8]]}}}],["anomali",{"_index":638,"t":{"39":{"position":[[902,7]]}}}],["anoth",{"_index":272,"t":{"9":{"position":[[961,7]]},"23":{"position":[[631,7]]},"39":{"position":[[1197,7],[3304,7],[3830,7]]}}}],["answer",{"_index":46,"t":{"3":{"position":[[800,6],[1493,7],[1589,6]]},"5":{"position":[[784,6],[1477,7],[1573,6]]}}}],["api",{"_index":438,"t":{"25":{"position":[[548,4]]}}}],["api_key=openai_api_key",{"_index":465,"t":{"25":{"position":[[1485,23]]}}}],["app_dir",{"_index":216,"t":{"7":{"position":[[4050,8]]},"9":{"position":[[445,8]]}}}],["appli",{"_index":238,"t":{"9":{"position":[[73,7]]}}}],["approach",{"_index":424,"t":{"23":{"position":[[838,8]]},"25":{"position":[[30,8]]}}}],["argument",{"_index":649,"t":{"39":{"position":[[2011,9]]}}}],["array",{"_index":498,"t":{"27":{"position":[[871,5],[1021,6],[1608,5]]}}}],["ask",{"_index":59,"t":{"3":{"position":[[1075,5],[1450,4]]},"5":{"position":[[1059,5],[1434,4]]},"7":{"position":[[303,4],[400,3],[1519,3],[1693,3]]},"23":{"position":[[651,3]]},"39":{"position":[[865,5],[1227,5]]}}}],["assert",{"_index":202,"t":{"7":{"position":[[3437,6],[3752,6],[3810,6]]},"9":{"position":[[799,6]]}}}],["assist",{"_index":471,"t":{"25":{"position":[[1689,13]]}}}],["associ",{"_index":307,"t":{"13":{"position":[[732,10]]},"17":{"position":[[1403,10]]}}}],["assum",{"_index":643,"t":{"39":{"position":[[1308,6]]}}}],["attach",{"_index":517,"t":{"27":{"position":[[1955,11],[2637,11]]},"35":{"position":[[2510,10]]}}}],["auto_eval/cas",{"_index":229,"t":{"7":{"position":[[4373,15]]}}}],["auto_eval/readme.md",{"_index":235,"t":{"7":{"position":[[4551,19]]}}}],["auto_eval/taskweaver_eval.pi",{"_index":245,"t":{"9":{"position":[[331,29]]}}}],["automat",{"_index":677,"t":{"39":{"position":[[4533,13]]}}}],["avoid",{"_index":119,"t":{"7":{"position":[[811,5]]}}}],["b.txt",{"_index":194,"t":{"7":{"position":[[3181,8],[3281,7],[3512,6],[3611,8]]}}}],["back",{"_index":679,"t":{"39":{"position":[[4704,4]]}}}],["backend",{"_index":453,"t":{"25":{"position":[[985,7],[1036,7],[1132,8]]}}}],["base",{"_index":117,"t":{"7":{"position":[[717,5],[1371,5],[2496,5],[3565,5]]},"17":{"position":[[461,5],[1133,5]]},"35":{"position":[[65,5],[141,5],[226,5],[386,5],[988,5],[1135,5],[1279,5],[1332,5],[1684,5],[2249,5]]},"39":{"position":[[4314,4]]}}}],["base_url=openai_api_bas",{"_index":466,"t":{"25":{"position":[[1509,25]]}}}],["basic",{"_index":379,"t":{"19":{"position":[[31,6]]}}}],["befor",{"_index":79,"t":{"3":{"position":[[1472,6]]},"5":{"position":[[1456,6]]},"27":{"position":[[1791,7]]}}}],["behav",{"_index":61,"t":{"3":{"position":[[1116,6]]},"5":{"position":[[1100,6]]}}}],["behavior",{"_index":87,"t":{"3":{"position":[[1716,9]]},"5":{"position":[[1700,9]]},"39":{"position":[[1667,8]]}}}],["behind",{"_index":625,"t":{"39":{"position":[[245,6]]}}}],["below",{"_index":65,"t":{"3":{"position":[[1175,5]]},"5":{"position":[[1159,5]]},"7":{"position":[[119,6]]},"25":{"position":[[871,6]]},"35":{"position":[[2337,6]]},"39":{"position":[[977,6],[1452,6],[3615,6]]}}}],["benefit",{"_index":510,"t":{"27":{"position":[[1653,7]]}}}],["better",{"_index":283,"t":{"11":{"position":[[88,6]]}}}],["between",{"_index":175,"t":{"7":{"position":[[2685,7]]},"13":{"position":[[934,7],[1429,7]]},"35":{"position":[[257,7]]},"39":{"position":[[3640,7]]}}}],["blog",{"_index":382,"t":{"21":{"position":[[36,4]]},"29":{"position":[[8,4]]},"31":{"position":[[151,4]]},"37":{"position":[[8,4]]}}}],["both",{"_index":84,"t":{"3":{"position":[[1557,4]]},"5":{"position":[[1541,4]]},"25":{"position":[[498,4]]}}}],["calcul",{"_index":171,"t":{"7":{"position":[[2330,9],[2563,10]]}}}],["call",{"_index":21,"t":{"3":{"position":[[286,7]]},"5":{"position":[[270,7]]},"13":{"position":[[171,6],[637,6]]},"15":{"position":[[1308,6],[1680,6],[1806,5]]},"17":{"position":[[82,6],[370,4],[1229,6],[1327,6]]},"19":{"position":[[263,6]]},"25":{"position":[[39,6]]},"27":{"position":[[3002,4]]},"29":{"position":[[52,6]]},"33":{"position":[[576,7]]},"35":{"position":[[2197,6]]},"39":{"position":[[759,6],[1388,6],[2202,4],[2790,5]]}}}],["capabl",{"_index":636,"t":{"39":{"position":[[659,11],[4140,10]]}}}],["case",{"_index":106,"t":{"7":{"position":[[226,5],[2710,6],[2850,5],[3712,4],[4045,4],[4360,5]]},"35":{"position":[[8,6],[2108,5]]},"39":{"position":[[2141,5],[3859,5]]}}}],["caus",{"_index":384,"t":{"21":{"position":[[50,5]]}}}],["cell",{"_index":377,"t":{"17":{"position":[[1561,6]]}}}],["chain",{"_index":20,"t":{"3":{"position":[[277,5]]},"5":{"position":[[261,5]]}}}],["challeng",{"_index":0,"t":{"3":{"position":[[4,11]]},"39":{"position":[[1102,10]]}}}],["chang",{"_index":392,"t":{"21":{"position":[[220,8]]},"27":{"position":[[131,7],[823,7],[1561,6],[1669,6],[1823,6],[2053,6],[2109,6],[2363,7],[2869,8]]},"35":{"position":[[3293,7]]}}}],["chat",{"_index":135,"t":{"7":{"position":[[1179,4],[1318,4],[2530,4]]}}}],["check",{"_index":183,"t":{"7":{"position":[[2959,5]]},"13":{"position":[[1407,5]]}}}],["clarifi",{"_index":112,"t":{"7":{"position":[[433,7]]}}}],["class",{"_index":246,"t":{"9":{"position":[[361,5],[1014,5]]},"13":{"position":[[153,5],[387,5],[547,5],[573,5]]},"15":{"position":[[1427,5]]},"39":{"position":[[741,5],[2674,5],[2703,5],[4402,5]]}}}],["client",{"_index":464,"t":{"25":{"position":[[1468,6]]}}}],["client.chat.completions.cr",{"_index":468,"t":{"25":{"position":[[1550,31]]}}}],["close",{"_index":275,"t":{"9":{"position":[[1050,5]]},"17":{"position":[[1609,7]]}}}],["close(self",{"_index":270,"t":{"9":{"position":[[925,12]]}}}],["code",{"_index":178,"t":{"7":{"position":[[2788,5],[3672,5]]},"13":{"position":[[135,4],[222,4],[1300,4]]},"15":{"position":[[49,4],[1396,4]]},"17":{"position":[[347,4],[550,4],[577,4],[1264,4],[1526,4],[1556,4]]},"21":{"position":[[174,4]]},"25":{"position":[[1221,4],[1926,5]]},"27":{"position":[[146,4],[238,4],[1088,4],[1633,4],[1877,4],[2656,4],[2756,4]]},"39":{"position":[[25,4],[62,5],[168,4],[723,4],[810,4],[1067,4],[1167,4],[1780,4],[1887,4],[1993,4],[2101,4],[2232,4],[4250,4]]}}}],["code_generator.pi",{"_index":531,"t":{"27":{"position":[[3058,18]]}}}],["code_interpreter.experience_dir",{"_index":549,"t":{"33":{"position":[[302,31]]}}}],["codeinterpret",{"_index":547,"t":{"33":{"position":[[194,15]]},"39":{"position":[[2565,16],[4774,15]]}}}],["commun",{"_index":629,"t":{"39":{"position":[[330,13],[412,14],[3626,13]]}}}],["compar",{"_index":26,"t":{"3":{"position":[[380,8],[1421,8]]},"5":{"position":[[364,8],[1405,8]]},"7":{"position":[[744,8]]},"39":{"position":[[1705,8]]}}}],["compat",{"_index":437,"t":{"25":{"position":[[537,10]]}}}],["complain",{"_index":397,"t":{"23":{"position":[[30,11]]}}}],["complet",{"_index":467,"t":{"25":{"position":[[1537,10],[1893,11]]},"35":{"position":[[563,8]]},"39":{"position":[[1644,8],[3573,8]]}}}],["complex",{"_index":44,"t":{"3":{"position":[[771,8]]},"5":{"position":[[755,8]]}}}],["compon",{"_index":286,"t":{"13":{"position":[[45,10]]},"19":{"position":[[309,9]]}}}],["concept",{"_index":284,"t":{"11":{"position":[[123,7]]},"35":{"position":[[1973,7]]},"37":{"position":[[232,7]]},"39":{"position":[[2448,7],[4067,7]]}}}],["config=config_var",{"_index":256,"t":{"9":{"position":[[572,18]]}}}],["config_var",{"_index":214,"t":{"7":{"position":[[3985,11]]},"9":{"position":[[459,11]]}}}],["configur",{"_index":215,"t":{"7":{"position":[[3997,14]]},"9":{"position":[[264,14]]},"15":{"position":[[134,14],[212,13],[274,14],[366,15],[521,14],[650,14],[855,15],[1011,15],[1100,14]]},"17":{"position":[[158,13],[659,14],[1001,10]]},"19":{"position":[[123,15]]},"25":{"position":[[2078,14],[2419,14],[2462,13],[2493,15]]},"33":{"position":[[29,9],[82,10],[154,13],[225,9],[625,11],[834,13]]},"37":{"position":[[117,11]]}}}],["confirm",{"_index":78,"t":{"3":{"position":[[1459,12]]},"5":{"position":[[1443,12]]}}}],["connect",{"_index":349,"t":{"15":{"position":[[1652,10],[1786,10]]}}}],["consequ",{"_index":514,"t":{"27":{"position":[[1803,11]]}}}],["consid",{"_index":88,"t":{"3":{"position":[[1744,8]]},"5":{"position":[[1728,8]]},"15":{"position":[[1315,8]]},"39":{"position":[[270,8],[831,8],[1188,8]]}}}],["consist",{"_index":318,"t":{"13":{"position":[[1541,11]]}}}],["constrain",{"_index":394,"t":{"21":{"position":[[304,11]]},"25":{"position":[[46,12],[503,11],[617,11],[1085,11]]},"27":{"position":[[24,11],[2901,11]]},"29":{"position":[[59,12],[269,11],[339,11]]}}}],["contact",{"_index":538,"t":{"29":{"position":[[511,7]]}}}],["contain",{"_index":195,"t":{"7":{"position":[[3296,7],[4418,8]]},"23":{"position":[[378,7]]},"27":{"position":[[1947,7]]}}}],["content",{"_index":184,"t":{"7":{"position":[[2978,8],[3501,7],[3578,7]]},"25":{"position":[[1659,10],[1720,10]]},"27":{"position":[[2153,7],[2230,8],[2394,8],[2482,8]]},"35":{"position":[[160,8],[275,7],[302,8],[765,7],[1171,8]]}}}],["content=\"task_type_1",{"_index":609,"t":{"35":{"position":[[2794,22]]}}}],["content_a",{"_index":197,"t":{"7":{"position":[[3345,9],[3444,9],[3488,12]]}}}],["content_b",{"_index":200,"t":{"7":{"position":[[3391,9],[3457,10],[3519,12]]}}}],["context",{"_index":57,"t":{"3":{"position":[[997,7]]},"5":{"position":[[981,7]]},"39":{"position":[[3149,7]]}}}],["control",{"_index":366,"t":{"17":{"position":[[887,11]]},"25":{"position":[[340,7]]},"39":{"position":[[3398,7]]}}}],["convers",{"_index":95,"t":{"7":{"position":[[73,14],[350,13],[626,12],[1051,12],[1272,12],[4254,12]]},"9":{"position":[[147,14]]},"17":{"position":[[851,12]]},"27":{"position":[[2771,10]]},"35":{"position":[[2781,12]]},"39":{"position":[[3128,12],[3164,13],[3410,12],[3443,13]]}}}],["convert",{"_index":622,"t":{"39":{"position":[[111,7]]}}}],["copi",{"_index":222,"t":{"7":{"position":[[4173,6]]}}}],["core",{"_index":680,"t":{"39":{"position":[[4811,4]]}}}],["correct",{"_index":64,"t":{"3":{"position":[[1154,7],[1581,7]]},"5":{"position":[[1138,7],[1565,7]]},"23":{"position":[[812,7]]}}}],["correspondingli",{"_index":503,"t":{"27":{"position":[[1028,16]]}}}],["countri",{"_index":472,"t":{"25":{"position":[[1738,7]]}}}],["country_nam",{"_index":458,"t":{"25":{"position":[[1327,15],[1379,16]]}}}],["creat",{"_index":336,"t":{"15":{"position":[[976,6]]},"17":{"position":[[207,7],[1460,7]]},"31":{"position":[[84,6]]},"35":{"position":[[2500,6]]}}}],["csv",{"_index":637,"t":{"39":{"position":[[881,3]]}}}],["current",{"_index":148,"t":{"7":{"position":[[1544,7],[1718,7]]},"17":{"position":[[843,7]]},"25":{"position":[[664,10],[1141,10]]},"35":{"position":[[3230,7]]},"39":{"position":[[2155,7]]}}}],["current_plan_step",{"_index":495,"t":{"27":{"position":[[520,20],[666,20]]}}}],["custom",{"_index":387,"t":{"21":{"position":[[130,10]]}}}],["cyber",{"_index":630,"t":{"39":{"position":[[347,5]]}}}],["data",{"_index":13,"t":{"3":{"position":[[165,4],[180,5]]},"5":{"position":[[149,4],[164,5]]},"39":{"position":[[927,5],[1016,4],[1293,5],[2347,4],[3822,4],[3970,4]]}}}],["data_fil",{"_index":221,"t":{"7":{"position":[[4147,11]]}}}],["databas",{"_index":348,"t":{"15":{"position":[[1643,8]]},"39":{"position":[[4005,8]]}}}],["date",{"_index":47,"t":{"3":{"position":[[812,4]]},"5":{"position":[[796,4]]}}}],["db",{"_index":342,"t":{"15":{"position":[[1454,2]]}}}],["de",{"_index":627,"t":{"39":{"position":[[308,2]]}}}],["decid",{"_index":648,"t":{"39":{"position":[[1855,7]]}}}],["decod",{"_index":452,"t":{"25":{"position":[[976,8],[1027,8]]}}}],["def",{"_index":248,"t":{"9":{"position":[[403,3],[671,3],[921,3]]},"13":{"position":[[418,3]]},"15":{"position":[[1464,3]]},"35":{"position":[[2344,3]]},"39":{"position":[[2858,3]]}}}],["default",{"_index":323,"t":{"15":{"position":[[472,8]]},"33":{"position":[[359,7],[453,7]]}}}],["defin",{"_index":306,"t":{"13":{"position":[[717,7]]},"35":{"position":[[2711,6]]}}}],["depend",{"_index":218,"t":{"7":{"position":[[4094,13]]}}}],["deploy",{"_index":400,"t":{"23":{"position":[[94,8]]},"25":{"position":[[473,10],[2037,8]]},"29":{"position":[[209,8]]}}}],["deprec",{"_index":518,"t":{"27":{"position":[[2026,11]]}}}],["describ",{"_index":231,"t":{"7":{"position":[[4444,9]]}}}],["descript",{"_index":107,"t":{"7":{"position":[[241,11],[490,11],[944,11],[2364,12],[2381,11],[2814,11]]},"13":{"position":[[879,12],[1044,12],[1137,12],[1215,12]]},"15":{"position":[[423,12]]}}}],["design",{"_index":237,"t":{"9":{"position":[[38,8]]},"15":{"position":[[1693,6]]},"39":{"position":[[99,8],[257,6],[604,7],[3357,6]]}}}],["desir",{"_index":633,"t":{"39":{"position":[[578,7]]}}}],["destroy",{"_index":378,"t":{"17":{"position":[[1645,9]]}}}],["detail",{"_index":234,"t":{"7":{"position":[[4536,7]]},"15":{"position":[[895,8]]},"21":{"position":[[358,8]]}}}],["detect",{"_index":639,"t":{"39":{"position":[[910,9]]}}}],["determin",{"_index":413,"t":{"23":{"position":[[424,9]]}}}],["develop",{"_index":281,"t":{"11":{"position":[[64,11],[139,11]]},"39":{"position":[[621,9],[2605,9]]}}}],["diagram",{"_index":641,"t":{"39":{"position":[[969,7],[1444,7],[1464,7],[3607,7]]}}}],["differ",{"_index":50,"t":{"3":{"position":[[882,9],[1054,9],[1123,12],[1706,9]]},"5":{"position":[[866,9],[1038,9],[1107,12],[1690,9]]},"15":{"position":[[845,9],[1090,9],[1128,9],[1169,9],[1196,9],[1298,9],[1670,9]]},"17":{"position":[[1027,9],[1108,9],[1317,9],[1516,9],[1546,9]]},"33":{"position":[[637,9],[674,9],[704,9],[730,9]]},"35":{"position":[[589,9],[615,9],[798,9],[812,9],[890,9]]}}}],["differenti",{"_index":577,"t":{"35":{"position":[[1105,13]]}}}],["difficult",{"_index":398,"t":{"23":{"position":[[53,9]]},"35":{"position":[[185,9]]}}}],["directori",{"_index":217,"t":{"7":{"position":[[4071,9],[4195,9],[4389,10]]},"9":{"position":[[293,9]]},"17":{"position":[[193,9]]},"33":{"position":[[58,10],[250,9],[378,9],[417,10],[658,11]]},"35":{"position":[[1075,10],[1488,10],[1549,9]]},"37":{"position":[[144,9]]}}}],["disabl",{"_index":367,"t":{"17":{"position":[[934,7]]}}}],["discov",{"_index":426,"t":{"25":{"position":[[13,10]]}}}],["discrep",{"_index":317,"t":{"13":{"position":[[1417,11]]}}}],["discuss",{"_index":372,"t":{"17":{"position":[[1349,9]]},"19":{"position":[[17,9]]},"25":{"position":[[2438,9]]},"31":{"position":[[165,7]]},"35":{"position":[[2001,9]]},"37":{"position":[[27,9]]}}}],["divid",{"_index":173,"t":{"7":{"position":[[2620,8]]}}}],["document",{"_index":444,"t":{"25":{"position":[[830,14]]},"39":{"position":[[2630,13]]}}}],["done",{"_index":32,"t":{"3":{"position":[[509,4]]},"5":{"position":[[493,4]]},"7":{"position":[[3088,4],[3218,4]]},"39":{"position":[[3677,4]]}}}],["due",{"_index":37,"t":{"3":{"position":[[624,3]]},"5":{"position":[[608,3]]}}}],["dure",{"_index":102,"t":{"7":{"position":[[153,6],[1126,6]]}}}],["dynam",{"_index":362,"t":{"17":{"position":[[734,11]]},"35":{"position":[[53,11],[1863,7]]},"37":{"position":[[179,7]]},"39":{"position":[[1972,7]]}}}],["e.g",{"_index":92,"t":{"3":{"position":[[1830,5]]},"5":{"position":[[1814,5]]},"7":{"position":[[2777,5]]},"25":{"position":[[293,5]]}}}],["each",{"_index":104,"t":{"7":{"position":[[216,4],[2282,4],[4400,4]]},"15":{"position":[[1801,4]]},"17":{"position":[[1387,4]]},"35":{"position":[[912,4]]},"37":{"position":[[158,4]]},"39":{"position":[[3265,4],[3736,4]]}}}],["easi",{"_index":390,"t":{"21":{"position":[[205,4]]},"25":{"position":[[420,4]]}}}],["easier",{"_index":501,"t":{"27":{"position":[[922,6]]}}}],["easili",{"_index":512,"t":{"27":{"position":[[1695,6]]},"29":{"position":[[441,7]]}}}],["echo",{"_index":678,"t":{"39":{"position":[[4663,4],[4678,6]]}}}],["effect",{"_index":606,"t":{"35":{"position":[[2722,9]]}}}],["elabor",{"_index":335,"t":{"15":{"position":[[947,9]]}}}],["element",{"_index":499,"t":{"27":{"position":[[880,9],[1006,8],[1617,8]]}}}],["empti",{"_index":461,"t":{"25":{"position":[[1415,7]]}}}],["enabl",{"_index":309,"t":{"13":{"position":[[850,8]]},"17":{"position":[[924,6]]},"25":{"position":[[1074,6]]},"33":{"position":[[856,6]]},"37":{"position":[[172,6]]}}}],["encount",{"_index":563,"t":{"35":{"position":[[331,11]]}}}],["end",{"_index":138,"t":{"7":{"position":[[1285,5]]}}}],["endpoint",{"_index":529,"t":{"27":{"position":[[3011,9]]}}}],["enforc",{"_index":427,"t":{"25":{"position":[[80,7],[199,9],[1003,8],[1054,8],[1181,8],[1851,9]]},"29":{"position":[[93,7]]}}}],["enough",{"_index":442,"t":{"25":{"position":[[722,7]]}}}],["ensur",{"_index":659,"t":{"39":{"position":[[3370,6]]}}}],["entri",{"_index":356,"t":{"17":{"position":[[226,7]]},"35":{"position":[[2759,5]]}}}],["entry_type=\"experience_sub_path",{"_index":613,"t":{"35":{"position":[[3016,33]]}}}],["enum",{"_index":507,"t":{"27":{"position":[[1395,7]]}}}],["environ",{"_index":212,"t":{"7":{"position":[[3928,12],[4482,12]]}}}],["error",{"_index":423,"t":{"23":{"position":[[749,5],[802,5]]}}}],["especi",{"_index":42,"t":{"3":{"position":[[732,10]]},"5":{"position":[[716,10]]},"15":{"position":[[1226,10]]},"23":{"position":[[585,10]]},"39":{"position":[[4186,10]]}}}],["essenti",{"_index":285,"t":{"13":{"position":[[35,9]]}}}],["establish",{"_index":351,"t":{"15":{"position":[[1770,9]]}}}],["etc",{"_index":432,"t":{"25":{"position":[[209,4]]}}}],["eval_cod",{"_index":196,"t":{"7":{"position":[[3331,10],[3624,9]]}}}],["evalu",{"_index":2,"t":{"3":{"position":[[36,8],[86,10],[202,9],[243,10],[485,10],[586,10],[698,8],[834,10],[915,10],[1624,10]]},"5":{"position":[[20,8],[70,10],[186,9],[227,10],[469,10],[570,10],[682,8],[818,10],[899,10],[1608,10]]},"7":{"position":[[28,10],[164,10],[368,10],[580,10],[695,8],[772,10],[885,10],[1137,10],[1354,8],[2436,8],[2474,8],[2754,8],[3543,8],[3661,10],[3917,10],[3969,10],[4034,10],[4295,10],[4349,10],[4471,10],[4506,11]]},"9":{"position":[[17,10]]}}}],["even",{"_index":572,"t":{"35":{"position":[[844,4],[1012,4]]},"39":{"position":[[1940,4]]}}}],["event_handler=non",{"_index":265,"t":{"9":{"position":[[777,19]]}}}],["examin",{"_index":103,"t":{"7":{"position":[[188,8],[275,9],[289,8],[421,8],[455,8],[603,8],[1161,8],[1295,8]]},"23":{"position":[[169,7]]}}}],["exampl",{"_index":45,"t":{"3":{"position":[[784,8],[1040,8],[1181,7]]},"5":{"position":[[768,8],[1024,8],[1165,7]]},"7":{"position":[[862,7],[2832,7]]},"13":{"position":[[263,7],[518,8],[758,8],[953,9],[1557,8],[1591,8]]},"15":{"position":[[165,8],[752,8],[1328,7],[1593,7]]},"17":{"position":[[1051,8]]},"21":{"position":[[145,8],[233,8]]},"23":{"position":[[528,8]]},"25":{"position":[[854,7]]},"27":{"position":[[1860,8],[1938,8],[2189,8],[2206,8],[2673,9],[2825,9],[2847,9]]},"33":{"position":[[790,8]]},"35":{"position":[[320,7],[686,8],[1503,8]]},"39":{"position":[[843,8],[1205,8],[1730,8],[4741,8]]}}}],["except",{"_index":209,"t":{"7":{"position":[[3845,10]]}}}],["execut",{"_index":360,"t":{"17":{"position":[[564,8],[1251,8]]},"39":{"position":[[191,7],[540,8]]}}}],["executor",{"_index":359,"t":{"17":{"position":[[555,8]]}}}],["exist",{"_index":6,"t":{"3":{"position":[[77,8]]},"5":{"position":[[61,8]]}}}],["exp_1.yaml",{"_index":585,"t":{"35":{"position":[[1611,10]]}}}],["exp_2.yaml",{"_index":586,"t":{"35":{"position":[[1628,10]]}}}],["exp_sub_path",{"_index":611,"t":{"35":{"position":[[2966,13],[3055,14],[3070,12],[3116,12]]}}}],["exp_sub_paths[0].cont",{"_index":614,"t":{"35":{"position":[[3085,24]]}}}],["experi",{"_index":540,"t":{"31":{"position":[[41,10],[62,10],[105,10],[131,11],[204,10],[225,10]]},"33":{"position":[[47,10],[239,10],[367,10],[391,10],[647,10],[714,11],[867,10]]},"35":{"position":[[42,10],[130,10],[215,10],[291,10],[375,10],[939,11],[977,10],[1043,11],[1064,10],[1123,11],[1321,10],[1395,10],[1477,10],[1538,10],[1721,10],[1797,10],[1903,10],[2150,10],[2605,10],[2878,10],[2918,10]]},"37":{"position":[[51,11],[93,10],[133,10],[187,10],[268,10]]}}}],["experiment",{"_index":443,"t":{"25":{"position":[[756,16]]},"35":{"position":[[3238,12]]}}}],["explain",{"_index":533,"t":{"29":{"position":[[306,9]]}}}],["express",{"_index":502,"t":{"27":{"position":[[932,7]]}}}],["extend",{"_index":287,"t":{"13":{"position":[[59,6]]},"19":{"position":[[336,6]]},"39":{"position":[[640,6],[4121,6]]}}}],["extens",{"_index":551,"t":{"33":{"position":[[510,10]]}}}],["extern",{"_index":667,"t":{"39":{"position":[[3981,8]]}}}],["extra",{"_index":673,"t":{"39":{"position":[[4447,5]]}}}],["extra=sharedmemoryentry.cr",{"_index":603,"t":{"35":{"position":[[2627,31]]}}}],["extra_bodi",{"_index":475,"t":{"25":{"position":[[1772,12]]}}}],["extract",{"_index":644,"t":{"39":{"position":[[1362,7],[1543,7],[1808,7],[1895,7]]}}}],["f\"content",{"_index":203,"t":{"7":{"position":[[3468,9]]}}}],["facto",{"_index":628,"t":{"39":{"position":[[311,5]]}}}],["fail",{"_index":267,"t":{"9":{"position":[[830,9],[840,7]]},"23":{"position":[[238,6]]}}}],["fals",{"_index":322,"t":{"15":{"position":[[417,5]]},"25":{"position":[[2295,6]]}}}],["familiar",{"_index":496,"t":{"27":{"position":[[753,8]]}}}],["featur",{"_index":330,"t":{"15":{"position":[[693,7]]},"17":{"position":[[723,7],[1171,7]]},"21":{"position":[[9,7]]},"25":{"position":[[447,7],[694,7],[1108,7]]},"27":{"position":[[167,8]]},"29":{"position":[[44,7],[390,7]]},"35":{"position":[[3251,7]]}}}],["feel",{"_index":536,"t":{"29":{"position":[[498,4]]}}}],["few",{"_index":489,"t":{"27":{"position":[[127,3]]},"39":{"position":[[4588,3]]}}}],["field",{"_index":169,"t":{"7":{"position":[[2258,5],[3634,5],[3878,6]]},"13":{"position":[[1566,5]]},"23":{"position":[[396,6]]},"27":{"position":[[213,5],[844,5],[1075,5],[1581,5],[1726,5],[2125,5],[2161,5],[2732,6]]},"33":{"position":[[133,5],[334,6]]}}}],["figur",{"_index":98,"t":{"7":{"position":[[112,6]]},"35":{"position":[[1254,6]]}}}],["file",{"_index":126,"t":{"7":{"position":[[929,4],[2276,5],[3040,4],[3170,4],[3263,5],[3593,5],[3897,4],[3980,4],[4167,5],[4434,4],[4571,5]]},"13":{"position":[[748,5],[776,4],[1190,4],[1355,4],[1502,5]]},"15":{"position":[[312,4],[361,4],[787,5],[966,5]]},"17":{"position":[[172,5],[420,5],[498,5],[696,5],[965,5]]},"19":{"position":[[113,5]]},"27":{"position":[[2298,5],[2550,5]]},"33":{"position":[[168,5],[492,4],[616,5],[848,4]]},"39":{"position":[[885,4]]}}}],["file.read",{"_index":524,"t":{"27":{"position":[[2320,11],[2572,11]]}}}],["file_cont",{"_index":523,"t":{"27":{"position":[[2304,13],[2556,13]]}}}],["file_path",{"_index":519,"t":{"27":{"position":[[2242,9],[2494,9]]}}}],["fill",{"_index":358,"t":{"17":{"position":[[430,4]]}}}],["final",{"_index":172,"t":{"7":{"position":[[2344,5],[2548,5]]}}}],["find",{"_index":233,"t":{"7":{"position":[[4526,4]]},"23":{"position":[[192,4]]},"27":{"position":[[277,4],[1114,4],[3035,4]]},"39":{"position":[[1097,4]]}}}],["first",{"_index":90,"t":{"3":{"position":[[1782,5]]},"5":{"position":[[1766,5]]},"7":{"position":[[256,5]]},"17":{"position":[[599,5]]},"27":{"position":[[176,6]]},"35":{"position":[[1248,5]]},"39":{"position":[[30,5],[68,6],[1302,5],[1487,5],[1744,6]]}}}],["fix",{"_index":391,"t":{"21":{"position":[[213,3]]}}}],["flexibl",{"_index":331,"t":{"15":{"position":[[725,8]]}}}],["flow",{"_index":650,"t":{"39":{"position":[[2163,4],[3431,4]]}}}],["folder",{"_index":676,"t":{"39":{"position":[[4511,7],[4643,7]]}}}],["follow",{"_index":124,"t":{"7":{"position":[[914,9],[2799,9]]},"13":{"position":[[241,9],[818,8]]},"15":{"position":[[320,8],[1386,9]]},"23":{"position":[[267,9],[708,6]]},"25":{"position":[[120,9],[264,9],[794,6],[1958,9],[2068,9]]},"29":{"position":[[133,9]]},"33":{"position":[[816,9]]},"35":{"position":[[528,9],[1528,9]]},"39":{"position":[[1254,6],[1629,6],[2403,7],[2619,6],[2837,9]]}}}],["format",{"_index":51,"t":{"3":{"position":[[892,8]]},"5":{"position":[[876,8]]},"23":{"position":[[281,10],[719,7],[742,6]]},"25":{"position":[[134,7],[192,6],[285,7],[359,6],[996,6],[1047,6],[1174,6],[1844,6],[1972,6]]},"27":{"position":[[959,6]]},"29":{"position":[[147,7]]}}}],["found",{"_index":325,"t":{"15":{"position":[[581,5]]},"25":{"position":[[678,5]]}}}],["frame",{"_index":620,"t":{"39":{"position":[[3,5]]}}}],["framework",{"_index":206,"t":{"7":{"position":[[3732,9]]},"25":{"position":[[150,10],[224,10],[593,10]]},"39":{"position":[[42,10]]}}}],["francisco",{"_index":474,"t":{"25":{"position":[[1753,9]]}}}],["free",{"_index":537,"t":{"29":{"position":[[503,4]]}}}],["function",{"_index":10,"t":{"3":{"position":[[140,8],[305,8],[1663,9]]},"5":{"position":[[124,8],[289,8],[1647,9]]},"13":{"position":[[70,13],[183,8],[649,9],[677,8],[1376,8],[1441,8]]},"15":{"position":[[33,8],[96,9],[1743,9]]},"17":{"position":[[442,8]]},"19":{"position":[[347,13]]},"35":{"position":[[2297,8]]},"39":{"position":[[771,8],[2028,8],[2766,8]]}}}],["gener",{"_index":185,"t":{"7":{"position":[[2990,8],[3141,9]]},"13":{"position":[[212,9],[288,9],[907,9],[1092,9],[1286,9],[1363,8]]},"17":{"position":[[333,9]]},"21":{"position":[[316,10]]},"23":{"position":[[248,8],[671,8]]},"25":{"position":[[59,11],[101,8],[243,10],[515,10],[629,11],[1097,10]]},"27":{"position":[[36,10],[2913,10]]},"29":{"position":[[72,11],[114,8],[281,11],[351,10]]},"39":{"position":[[207,8],[800,9],[1771,8],[2106,9],[2219,8],[2653,8]]}}}],["get_reply_from_ag",{"_index":274,"t":{"9":{"position":[[1028,21]]}}}],["get_reply_from_agent(self",{"_index":261,"t":{"9":{"position":[[675,26]]}}}],["get_task_type(last_post.messag",{"_index":597,"t":{"35":{"position":[[2465,32]]}}}],["given",{"_index":108,"t":{"7":{"position":[[262,5]]}}}],["go",{"_index":658,"t":{"39":{"position":[[3328,2]]}}}],["goe",{"_index":354,"t":{"17":{"position":[[130,4]]}}}],["ground",{"_index":27,"t":{"3":{"position":[[394,6],[567,6],[1816,6]]},"5":{"position":[[378,6],[551,6],[1800,6]]},"7":{"position":[[730,6],[1384,6],[2208,6]]}}}],["guid",{"_index":451,"t":{"25":{"position":[[969,6],[1020,6]]},"39":{"position":[[2380,5]]}}}],["guidanc",{"_index":430,"t":{"25":{"position":[[179,9]]}}}],["guided_decoding_backend",{"_index":477,"t":{"25":{"position":[[1813,26]]}}}],["guided_json",{"_index":476,"t":{"25":{"position":[[1785,14]]}}}],["handcraft",{"_index":542,"t":{"31":{"position":[[93,11],[119,11]]}}}],["handl",{"_index":49,"t":{"3":{"position":[[871,6],[1695,6]]},"5":{"position":[[855,6],[1679,6]]},"39":{"position":[[2062,7]]}}}],["hard",{"_index":40,"t":{"3":{"position":[[665,4]]},"5":{"position":[[649,4]]},"35":{"position":[[1097,4]]}}}],["have",{"_index":583,"t":{"35":{"position":[[1448,6]]}}}],["help",{"_index":339,"t":{"15":{"position":[[1237,7]]},"23":{"position":[[772,4]]},"25":{"position":[[1681,7]]},"29":{"position":[[402,4]]}}}],["here",{"_index":454,"t":{"25":{"position":[[1204,4]]},"39":{"position":[[2644,5]]}}}],["hint",{"_index":113,"t":{"7":{"position":[[525,5]]}}}],["histori",{"_index":139,"t":{"7":{"position":[[1323,7],[2535,8]]},"39":{"position":[[3113,7]]}}}],["hope",{"_index":534,"t":{"29":{"position":[[380,4]]}}}],["http://localhost:8000/v1",{"_index":463,"t":{"25":{"position":[[1441,26],[2178,27]]}}}],["human",{"_index":55,"t":{"3":{"position":[[967,6],[1213,6],[1287,6],[1381,6]]},"5":{"position":[[951,6],[1197,6],[1271,6],[1365,6]]},"39":{"position":[[406,5]]}}}],["id",{"_index":579,"t":{"35":{"position":[[1229,3],[1297,3],[1702,3],[2267,3]]}}}],["idea",{"_index":421,"t":{"23":{"position":[[639,4]]}}}],["identifi",{"_index":587,"t":{"35":{"position":[[1661,8],[2226,8]]}}}],["illustr",{"_index":66,"t":{"3":{"position":[[1189,11]]},"5":{"position":[[1173,11]]}}}],["implement",{"_index":225,"t":{"7":{"position":[[4275,11]]},"9":{"position":[[988,9]]},"13":{"position":[[583,10],[1474,14]]},"15":{"position":[[550,15],[821,14],[1071,14]]},"17":{"position":[[260,14]]},"19":{"position":[[88,15]]},"21":{"position":[[288,11]]},"29":{"position":[[323,11]]},"33":{"position":[[477,14],[601,14]]},"39":{"position":[[2713,10],[2911,14],[3887,9],[4154,12],[4336,12],[4412,12]]}}}],["import",{"_index":293,"t":{"13":{"position":[[339,6],[446,6],[1518,9]]},"25":{"position":[[1263,6]]}}}],["includ",{"_index":380,"t":{"19":{"position":[[67,9]]},"23":{"position":[[730,7]]},"25":{"position":[[161,7]]}}}],["incompat",{"_index":385,"t":{"21":{"position":[[56,15]]}}}],["incorrect",{"_index":89,"t":{"3":{"position":[[1764,9]]},"5":{"position":[[1748,9]]}}}],["incur",{"_index":651,"t":{"39":{"position":[[2177,8]]}}}],["ineffici",{"_index":352,"t":{"15":{"position":[[1821,11]]}}}],["info",{"_index":381,"t":{"21":{"position":[[0,4]]},"33":{"position":[[428,4]]}}}],["inform",{"_index":316,"t":{"13":{"position":[[1331,11]]},"17":{"position":[[474,11]]},"35":{"position":[[2066,11]]},"39":{"position":[[4285,11]]}}}],["inherit",{"_index":303,"t":{"13":{"position":[[553,8]]},"39":{"position":[[2685,8],[4382,10]]}}}],["init_plan",{"_index":493,"t":{"27":{"position":[[455,12],[645,12]]}}}],["initi",{"_index":143,"t":{"7":{"position":[[1449,7]]},"17":{"position":[[65,12],[529,11],[638,11]]},"19":{"position":[[246,12]]}}}],["input",{"_index":12,"t":{"3":{"position":[[159,5]]},"5":{"position":[[143,5]]},"35":{"position":[[78,5],[1153,5],[1206,5]]}}}],["instanc",{"_index":410,"t":{"23":{"position":[[324,9]]},"25":{"position":[[557,9]]}}}],["instanti",{"_index":241,"t":{"9":{"position":[[218,11]]}}}],["instead",{"_index":664,"t":{"39":{"position":[[3910,7]]}}}],["instruct",{"_index":408,"t":{"23":{"position":[[292,12]]},"25":{"position":[[805,12],[958,8],[1616,10],[2151,10]]},"35":{"position":[[547,12],[625,13],[643,12]]},"39":{"position":[[1265,12],[1374,13],[1555,13],[1597,13],[1820,13],[1907,12],[2295,12],[2326,12]]}}}],["int",{"_index":297,"t":{"13":{"position":[[440,5],[1025,3]]}}}],["integ",{"_index":187,"t":{"7":{"position":[[3008,7]]}}}],["integr",{"_index":435,"t":{"25":{"position":[[432,9]]}}}],["interact",{"_index":82,"t":{"3":{"position":[[1521,11]]},"5":{"position":[[1505,11]]},"39":{"position":[[2799,8]]}}}],["internet",{"_index":672,"t":{"39":{"position":[[4326,9]]}}}],["interpret",{"_index":389,"t":{"21":{"position":[[179,12]]},"27":{"position":[[243,12],[1093,12],[1638,12],[1882,11],[2661,11]]}}}],["introduc",{"_index":99,"t":{"7":{"position":[[129,9]]},"19":{"position":[[163,10]]},"21":{"position":[[17,10]]},"29":{"position":[[27,10]]},"31":{"position":[[8,10]]},"35":{"position":[[1958,10]]},"37":{"position":[[217,10]]},"39":{"position":[[2433,10]]}}}],["introduct",{"_index":279,"t":{"11":{"position":[[36,12]]}}}],["issu",{"_index":386,"t":{"21":{"position":[[72,5],[196,5]]},"23":{"position":[[23,6],[181,7],[507,5]]}}}],["joke",{"_index":192,"t":{"7":{"position":[[3113,4]]}}}],["json",{"_index":433,"t":{"25":{"position":[[301,4]]},"27":{"position":[[954,4],[2961,4]]}}}],["json_schema",{"_index":456,"t":{"25":{"position":[[1277,11],[1800,12],[1996,12]]}}}],["judg",{"_index":25,"t":{"3":{"position":[[333,5]]},"5":{"position":[[317,5]]},"7":{"position":[[205,6],[668,6],[679,5],[1338,6],[2427,5],[2463,5]]}}}],["jupyt",{"_index":374,"t":{"17":{"position":[[1421,7]]}}}],["keep",{"_index":132,"t":{"7":{"position":[[1103,4],[1240,4],[1600,4]]},"13":{"position":[[1531,4]]}}}],["kernel",{"_index":375,"t":{"17":{"position":[[1429,7],[1475,6],[1664,7]]}}}],["key",{"_index":591,"t":{"35":{"position":[[2275,3]]}}}],["keyword",{"_index":34,"t":{"3":{"position":[[526,8],[677,8]]},"5":{"position":[[510,8],[661,8]]}}}],["know",{"_index":76,"t":{"3":{"position":[[1345,4]]},"5":{"position":[[1329,4]]}}}],["knowledg",{"_index":671,"t":{"39":{"position":[[4304,9]]}}}],["kwarg",{"_index":594,"t":{"35":{"position":[[2376,9]]},"39":{"position":[[2890,9]]}}}],["languag",{"_index":31,"t":{"3":{"position":[[471,9]]},"5":{"position":[[455,9]]},"23":{"position":[[118,8]]},"29":{"position":[[233,8]]},"39":{"position":[[291,9],[317,8],[393,8],[490,8],[516,10],[3778,9]]}}}],["larg",{"_index":402,"t":{"23":{"position":[[112,5]]},"29":{"position":[[227,5]]}}}],["last",{"_index":595,"t":{"35":{"position":[[2435,4]]}}}],["layer",{"_index":582,"t":{"35":{"position":[[1382,5]]}}}],["less",{"_index":646,"t":{"39":{"position":[[1692,4]]}}}],["let'",{"_index":121,"t":{"7":{"position":[[849,5]]},"35":{"position":[[450,5]]},"39":{"position":[[825,5],[1182,5]]}}}],["lifecycl",{"_index":353,"t":{"17":{"position":[[11,9]]},"19":{"position":[[185,10]]}}}],["limit",{"_index":36,"t":{"3":{"position":[[612,11]]},"5":{"position":[[596,11]]},"7":{"position":[[836,12],[1037,10]]}}}],["list",{"_index":219,"t":{"7":{"position":[[4108,4],[4159,4]]},"13":{"position":[[1132,4],[1157,4]]},"15":{"position":[[402,4]]}}}],["llama",{"_index":449,"t":{"25":{"position":[[947,5],[1605,5],[2140,5]]}}}],["llama.cpp",{"_index":440,"t":{"25":{"position":[[649,10]]}}}],["llama/meta",{"_index":448,"t":{"25":{"position":[[936,10],[1594,10],[2129,10]]}}}],["llm",{"_index":4,"t":{"3":{"position":[[66,3],[125,3]]},"5":{"position":[[50,3],[109,3]]},"13":{"position":[[1282,3],[1633,4]]},"17":{"position":[[772,4]]},"23":{"position":[[134,7]]},"29":{"position":[[249,6],[431,4]]},"39":{"position":[[2198,3]]}}}],["llm.api_bas",{"_index":481,"t":{"25":{"position":[[2162,15]]}}}],["llm.api_key",{"_index":482,"t":{"25":{"position":[[2206,14]]}}}],["llm.api_typ",{"_index":484,"t":{"25":{"position":[[2229,15]]}}}],["llm.model",{"_index":480,"t":{"25":{"position":[[2110,12]]}}}],["llm.openai.require_alternative_rol",{"_index":485,"t":{"25":{"position":[[2255,39],[2347,36]]}}}],["llm.openai.support_system_rol",{"_index":486,"t":{"25":{"position":[[2302,33],[2388,30]]}}}],["lm",{"_index":431,"t":{"25":{"position":[[189,2],[993,2],[1044,2],[1171,2],[1840,3]]}}}],["load",{"_index":334,"t":{"15":{"position":[[920,5]]},"17":{"position":[[57,7],[296,6],[518,6],[797,6],[910,7],[1101,4]]},"19":{"position":[[238,7]]},"39":{"position":[[874,4],[4547,6]]}}}],["local",{"_index":399,"t":{"23":{"position":[[86,7]]},"25":{"position":[[467,5]]},"29":{"position":[[201,7]]}}}],["long",{"_index":43,"t":{"3":{"position":[[762,4]]},"5":{"position":[[746,4]]},"9":{"position":[[109,4]]}}}],["look",{"_index":492,"t":{"27":{"position":[[329,5],[1202,5]]},"35":{"position":[[1751,5]]}}}],["m",{"_index":445,"t":{"25":{"position":[[886,1]]}}}],["made",{"_index":488,"t":{"27":{"position":[[120,4]]}}}],["main",{"_index":406,"t":{"23":{"position":[[206,4]]}}}],["maintain",{"_index":340,"t":{"15":{"position":[[1270,8],[1631,9]]},"17":{"position":[[1294,8]]}}}],["make",{"_index":136,"t":{"7":{"position":[[1216,4]]},"15":{"position":[[704,4]]},"25":{"position":[[319,5]]},"39":{"position":[[2267,4]]}}}],["mani",{"_index":142,"t":{"7":{"position":[[1432,4]]},"23":{"position":[[11,4]]},"35":{"position":[[418,4]]}}}],["manual",{"_index":526,"t":{"27":{"position":[[2789,6]]},"39":{"position":[[1243,6],[1351,6],[1532,6],[1797,6],[1875,7]]}}}],["map",{"_index":11,"t":{"3":{"position":[[154,4]]},"5":{"position":[[138,4]]}}}],["match",{"_index":33,"t":{"3":{"position":[[517,8],[686,8],[1806,5]]},"5":{"position":[[501,8],[670,8],[1790,5]]}}}],["matter",{"_index":364,"t":{"17":{"position":[[807,6]]}}}],["matur",{"_index":441,"t":{"25":{"position":[[715,6]]}}}],["max_round",{"_index":223,"t":{"7":{"position":[[4205,11]]}}}],["maximum",{"_index":224,"t":{"7":{"position":[[4221,7]]}}}],["mean",{"_index":58,"t":{"3":{"position":[[1013,7]]},"5":{"position":[[997,7]]},"13":{"position":[[621,5]]},"39":{"position":[[75,5]]}}}],["memori",{"_index":338,"t":{"15":{"position":[[1149,7]]},"17":{"position":[[241,7],[1482,6]]},"35":{"position":[[1991,6],[2021,7],[2036,6],[2132,6],[2360,7],[2368,7],[2752,6],[2958,7]]},"37":{"position":[[250,6]]},"39":{"position":[[2874,7],[2882,7],[2939,6],[2967,6],[3074,6]]}}}],["memory.get_shared_memory_entri",{"_index":612,"t":{"35":{"position":[[2982,33]]}}}],["messag",{"_index":262,"t":{"9":{"position":[[702,8],[768,8]]},"23":{"position":[[455,8]]},"25":{"position":[[1627,8],[2534,8]]},"27":{"position":[[596,10],[698,9]]},"35":{"position":[[2445,7]]},"39":{"position":[[3758,8],[4696,7]]}}}],["message=\"add",{"_index":600,"t":{"35":{"position":[[2592,12]]}}}],["meta",{"_index":447,"t":{"25":{"position":[[931,4],[2123,5]]}}}],["method",{"_index":7,"t":{"3":{"position":[[97,7],[597,6],[845,6],[926,6],[1635,6]]},"5":{"position":[[81,7],[581,6],[829,6],[910,6],[1619,6]]},"7":{"position":[[39,6],[783,7],[800,6],[896,6],[4306,6]]},"9":{"position":[[28,6],[1056,8]]},"13":{"position":[[607,7]]},"39":{"position":[[2734,7],[2752,6],[4435,7]]}}}],["mix",{"_index":575,"t":{"35":{"position":[[1031,3]]}}}],["model",{"_index":403,"t":{"23":{"position":[[127,6],[231,6],[623,7],[659,5],[781,5]]},"25":{"position":[[92,5],[925,5]]},"27":{"position":[[99,6],[2980,5]]},"29":{"position":[[105,5],[242,6]]}}}],["model=\"meta",{"_index":469,"t":{"25":{"position":[[1582,11]]}}}],["modifi",{"_index":515,"t":{"27":{"position":[[1849,6],[2814,6]]}}}],["modul",{"_index":541,"t":{"31":{"position":[[52,6],[215,6]]}}}],["more",{"_index":54,"t":{"3":{"position":[[955,4],[1516,4]]},"5":{"position":[[939,4],[1500,4]]},"7":{"position":[[2734,4],[4531,4]]},"9":{"position":[[171,4]]},"15":{"position":[[70,4],[720,4],[890,4]]},"21":{"position":[[353,4]]},"23":{"position":[[523,4]]},"29":{"position":[[436,4]]},"31":{"position":[[173,4]]},"39":{"position":[[4722,4]]}}}],["moreov",{"_index":52,"t":{"3":{"position":[[901,9]]},"5":{"position":[[885,9]]}}}],["motiv",{"_index":539,"t":{"31":{"position":[[23,10]]}}}],["much",{"_index":500,"t":{"27":{"position":[[917,4]]}}}],["multi",{"_index":16,"t":{"3":{"position":[[222,5]]},"5":{"position":[[206,5]]}}}],["multipl",{"_index":23,"t":{"3":{"position":[[314,8]]},"5":{"position":[[298,8]]},"15":{"position":[[773,8]]},"27":{"position":[[2620,8]]},"39":{"position":[[150,8],[3482,8]]}}}],["n",{"_index":291,"t":{"13":{"position":[[298,1],[437,2],[917,1],[1017,1]]}}}],["name",{"_index":189,"t":{"7":{"position":[[3045,5],[3175,5]]},"13":{"position":[[827,5],[1011,5],[1113,5],[1209,5]]},"15":{"position":[[384,5],[617,6]]},"17":{"position":[[393,4]]},"33":{"position":[[442,4],[465,4],[568,4]]}}}],["natur",{"_index":30,"t":{"3":{"position":[[463,7],[641,7]]},"5":{"position":[[447,7],[625,7]]},"39":{"position":[[385,7],[482,7],[995,7],[1142,9],[1697,7],[3770,7],[4225,9]]}}}],["necessari",{"_index":244,"t":{"9":{"position":[[254,9]]},"15":{"position":[[1841,10]]},"39":{"position":[[2123,9]]}}}],["need",{"_index":134,"t":{"7":{"position":[[1170,5],[1685,4],[2951,4],[3535,4]]},"9":{"position":[[980,4]]},"15":{"position":[[1261,5],[1762,4]]},"27":{"position":[[65,4],[1841,4],[2045,4],[2101,4],[2804,6],[2994,4]]},"35":{"position":[[354,4],[1240,4],[1842,4],[2861,5]]},"39":{"position":[[631,5],[1763,4],[3287,5],[3803,5],[3952,4]]}}}],["new",{"_index":72,"t":{"3":{"position":[[1277,3],[1365,3]]},"5":{"position":[[1261,3],[1349,3]]},"7":{"position":[[24,3],[143,3],[796,3],[881,3],[4291,3]]},"9":{"position":[[13,3]]},"15":{"position":[[1782,3]]},"17":{"position":[[1081,3]]},"21":{"position":[[249,3]]},"25":{"position":[[26,3]]},"27":{"position":[[1918,3],[2072,3],[2694,3]]},"29":{"position":[[40,3]]},"35":{"position":[[2188,3]]},"39":{"position":[[688,3],[2503,3],[2591,3],[3899,3],[3923,3],[4167,3],[4351,3]]}}}],["non",{"_index":401,"t":{"23":{"position":[[103,3]]},"29":{"position":[[218,3]]}}}],["none",{"_index":252,"t":{"9":{"position":[[488,6]]},"15":{"position":[[1459,4],[1514,5]]}}}],["nontrivi",{"_index":1,"t":{"3":{"position":[[22,10]]},"5":{"position":[[6,10]]}}}],["normal",{"_index":174,"t":{"7":{"position":[[2665,10],[3700,6]]},"15":{"position":[[82,6],[1729,6]]}}}],["notic",{"_index":497,"t":{"27":{"position":[[803,6]]},"39":{"position":[[3191,7]]}}}],["now",{"_index":511,"t":{"27":{"position":[[1691,3],[2041,3],[2885,3]]}}}],["null",{"_index":483,"t":{"25":{"position":[[2221,7]]}}}],["number",{"_index":48,"t":{"3":{"position":[[822,7]]},"5":{"position":[[806,7]]},"7":{"position":[[1558,6],[1732,6],[3016,6],[3158,6],[3313,7],[4229,6]]},"13":{"position":[[307,8],[926,7],[1064,6],[1081,7],[1172,8]]},"15":{"position":[[261,8],[463,8]]}}}],["object",{"_index":243,"t":{"9":{"position":[[242,6]]},"15":{"position":[[994,7],[1138,7]]},"17":{"position":[[1448,7],[1628,7]]},"25":{"position":[[1301,9]]},"27":{"position":[[381,9],[429,9],[856,6],[994,7],[1254,9],[1302,9],[1593,6]]},"39":{"position":[[2946,7],[3007,7],[3081,7],[3699,7]]}}}],["obtain",{"_index":558,"t":{"35":{"position":[[198,6]]},"39":{"position":[[1586,6]]}}}],["old",{"_index":516,"t":{"27":{"position":[[1934,3],[2202,3],[2429,3]]}}}],["on",{"_index":182,"t":{"7":{"position":[[2908,3],[2915,3]]},"15":{"position":[[590,3]]},"27":{"position":[[1799,3],[2720,3]]},"35":{"position":[[311,3],[1060,3]]},"39":{"position":[[143,3]]}}}],["onc",{"_index":647,"t":{"39":{"position":[[1834,4]]}}}],["open('a.txt",{"_index":198,"t":{"7":{"position":[[3357,13]]}}}],["open('b.txt",{"_index":201,"t":{"7":{"position":[[3403,13]]}}}],["open(file_path",{"_index":521,"t":{"27":{"position":[[2274,15],[2526,15]]}}}],["openai",{"_index":436,"t":{"25":{"position":[[530,6],[1256,6],[1270,6],[1477,7],[2245,9],[2455,6]]}}}],["openai_api_bas",{"_index":462,"t":{"25":{"position":[[1423,15]]}}}],["openai_api_key",{"_index":460,"t":{"25":{"position":[[1398,14]]}}}],["optional[dict",{"_index":251,"t":{"9":{"position":[[471,14]]}}}],["orchestr",{"_index":661,"t":{"39":{"position":[[3531,11]]}}}],["order",{"_index":487,"t":{"27":{"position":[[3,5],[1897,5]]}}}],["otherwis",{"_index":665,"t":{"39":{"position":[[3933,10]]}}}],["out",{"_index":580,"t":{"35":{"position":[[1261,3]]}}}],["outlin",{"_index":429,"t":{"25":{"position":[[169,9],[1194,9]]}}}],["output",{"_index":14,"t":{"3":{"position":[[173,6],[343,6],[422,7],[437,6],[553,6],[711,6],[752,6],[1028,7],[1162,8]]},"5":{"position":[[157,6],[327,6],[406,7],[421,6],[537,6],[695,6],[736,6],[1012,7],[1146,8]]},"25":{"position":[[352,6]]},"27":{"position":[[780,6]]}}}],["overhead",{"_index":653,"t":{"39":{"position":[[2207,8]]}}}],["packag",{"_index":220,"t":{"7":{"position":[[4116,8]]}}}],["page",{"_index":282,"t":{"11":{"position":[[76,5]]},"15":{"position":[[881,4]]},"19":{"position":[[8,5]]},"25":{"position":[[2476,5]]}}}],["paramet",{"_index":313,"t":{"13":{"position":[[997,11],[1228,11]]}}}],["part",{"_index":321,"t":{"15":{"position":[[344,4]]},"35":{"position":[[2279,4]]},"39":{"position":[[1980,5]]}}}],["partner",{"_index":96,"t":{"7":{"position":[[88,7]]},"9":{"position":[[162,8]]}}}],["pass",{"_index":116,"t":{"7":{"position":[[643,4],[1309,4]]}}}],["past",{"_index":415,"t":{"23":{"position":[[471,5]]}}}],["path",{"_index":602,"t":{"35":{"position":[[2620,6]]}}}],["perform",{"_index":3,"t":{"3":{"position":[[49,11],[1084,7]]},"5":{"position":[[33,11],[1068,7]]},"39":{"position":[[566,7],[894,7]]}}}],["philosophi",{"_index":624,"t":{"39":{"position":[[234,10]]}}}],["phrase",{"_index":35,"t":{"3":{"position":[[538,7]]},"5":{"position":[[522,7]]}}}],["physic",{"_index":631,"t":{"39":{"position":[[353,8]]}}}],["piec",{"_index":288,"t":{"13":{"position":[[126,5]]},"39":{"position":[[714,5]]}}}],["plan",{"_index":494,"t":{"27":{"position":[[490,7],[658,7]]}}}],["planner",{"_index":388,"t":{"21":{"position":[[162,7]]},"27":{"position":[[226,7],[260,8]]},"33":{"position":[[182,7],[771,7],[896,7]]},"39":{"position":[[1843,7],[2077,8],[2553,7],[3056,8],[3249,8],[3343,8],[3386,7],[3519,7],[3652,7],[4758,7]]}}}],["planner'",{"_index":411,"t":{"23":{"position":[[350,9]]}}}],["planner.experience_dir",{"_index":548,"t":{"33":{"position":[[275,22],[944,25]]}}}],["planner.pi",{"_index":530,"t":{"27":{"position":[[3043,10]]}}}],["planner.use_experi",{"_index":555,"t":{"33":{"position":[[912,25]]}}}],["planner_exp_dir",{"_index":556,"t":{"33":{"position":[[970,17]]}}}],["planner_experi",{"_index":584,"t":{"35":{"position":[[1570,18]]}}}],["pleas",{"_index":278,"t":{"11":{"position":[[16,6]]},"21":{"position":[[261,6]]},"29":{"position":[[491,6]]}}}],["plugin",{"_index":280,"t":{"11":{"position":[[57,6],[116,6]]},"13":{"position":[[19,7],[114,6],[276,6],[346,7],[566,6],[703,7],[805,6],[900,6],[1265,7],[1618,6]]},"15":{"position":[[13,6],[110,6],[194,6],[543,6],[608,8],[672,6],[713,6],[930,8],[987,6],[1042,7],[1179,7],[1254,6],[1364,7],[1624,6],[1704,6]]},"17":{"position":[[4,6],[47,6],[151,6],[185,7],[219,6],[282,6],[379,6],[508,6],[628,6],[757,7],[785,7],[903,6],[946,6],[986,7],[1125,7],[1219,6],[1283,6],[1441,6],[1621,6]]},"19":{"position":[[45,6],[81,6],[178,6],[228,6],[288,6]]},"39":{"position":[[692,7],[702,6],[1326,6],[3903,6]]}}}],["point",{"_index":67,"t":{"3":{"position":[[1206,6]]},"5":{"position":[[1190,6]]},"7":{"position":[[2293,5],[2406,5],[2515,6],[2609,6],[3797,5]]},"15":{"position":[[793,8]]}}}],["popular",{"_index":428,"t":{"25":{"position":[[142,7]]}}}],["possibl",{"_index":434,"t":{"25":{"position":[[328,8]]},"27":{"position":[[1782,8]]}}}],["post",{"_index":383,"t":{"21":{"position":[[41,4]]},"29":{"position":[[13,5]]},"31":{"position":[[156,5]]},"35":{"position":[[2394,5],[2440,4]]},"37":{"position":[[13,5]]},"39":{"position":[[2903,5],[3002,4],[3694,4]]}}}],["post_proxy.end",{"_index":610,"t":{"35":{"position":[[2829,16]]}}}],["post_proxy.update_attach",{"_index":598,"t":{"35":{"position":[[2521,29]]}}}],["power",{"_index":329,"t":{"15":{"position":[[684,8]]},"19":{"position":[[300,8]]}}}],["pre",{"_index":276,"t":{"11":{"position":[[0,3]]}}}],["precis",{"_index":176,"t":{"7":{"position":[[2739,7]]}}}],["prepar",{"_index":227,"t":{"7":{"position":[[4331,8]]}}}],["previou",{"_index":320,"t":{"15":{"position":[[335,8]]},"17":{"position":[[1366,8]]},"21":{"position":[[87,8]]},"27":{"position":[[771,8]]},"39":{"position":[[1721,8]]}}}],["previous",{"_index":193,"t":{"7":{"position":[[3130,10]]}}}],["print(\"complet",{"_index":478,"t":{"25":{"position":[[1865,17]]}}}],["print(file_cont",{"_index":525,"t":{"27":{"position":[[2332,20],[2584,20]]}}}],["problem",{"_index":407,"t":{"23":{"position":[[211,7]]}}}],["process",{"_index":19,"t":{"3":{"position":[[254,7]]},"5":{"position":[[238,7]]},"7":{"position":[[175,8],[1148,8]]},"11":{"position":[[151,8]]},"17":{"position":[[28,7]]},"19":{"position":[[209,7]]},"35":{"position":[[1416,8]]},"39":{"position":[[1027,9],[1281,7],[2358,10]]}}}],["produc",{"_index":63,"t":{"3":{"position":[[1146,7]]},"5":{"position":[[1130,7]]}}}],["profil",{"_index":371,"t":{"17":{"position":[[1153,8]]}}}],["program",{"_index":626,"t":{"39":{"position":[[279,11],[504,11]]}}}],["project",{"_index":546,"t":{"33":{"position":[[146,7],[409,7],[826,7]]},"35":{"position":[[441,8],[1188,8]]}}}],["prompt",{"_index":409,"t":{"23":{"position":[[312,7],[544,7],[762,6]]}}}],["properti",{"_index":457,"t":{"25":{"position":[[1311,13]]},"27":{"position":[[391,13],[439,13],[973,10],[1264,13],[1312,13]]}}}],["propos",{"_index":94,"t":{"7":{"position":[[14,7]]}}}],["provid",{"_index":80,"t":{"3":{"position":[[1479,9],[1569,7]]},"5":{"position":[[1463,9],[1553,7]]},"7":{"position":[[473,7],[513,7],[564,8],[3859,7]]},"13":{"position":[[1583,7]]},"25":{"position":[[369,9]]},"27":{"position":[[73,7]]},"39":{"position":[[4104,7],[4577,8]]}}}],["put",{"_index":674,"t":{"39":{"position":[[4469,3]]}}}],["python",{"_index":242,"t":{"9":{"position":[[235,6]]},"13":{"position":[[1467,6]]},"15":{"position":[[89,6],[814,6],[1064,6],[1736,6]]},"17":{"position":[[253,6]]},"25":{"position":[[878,6]]},"27":{"position":[[1403,10],[1752,6],[1990,7],[2223,6],[2403,6]]}}}],["queri",{"_index":343,"t":{"15":{"position":[[1483,6]]},"35":{"position":[[154,5],[269,5]]}}}],["question",{"_index":85,"t":{"3":{"position":[[1603,9]]},"5":{"position":[[1587,9]]},"7":{"position":[[308,9],[404,9]]},"29":{"position":[[465,9]]}}}],["r",{"_index":522,"t":{"27":{"position":[[2290,4],[2542,4]]}}}],["r').read().strip",{"_index":199,"t":{"7":{"position":[[3371,19],[3417,19]]}}}],["rais",{"_index":208,"t":{"7":{"position":[[3836,5]]},"23":{"position":[[16,6]]}}}],["random",{"_index":186,"t":{"7":{"position":[[3001,6],[3106,6],[3151,6]]},"13":{"position":[[300,6],[453,6],[919,6],[1074,6],[1165,6]]},"15":{"position":[[254,6],[456,6]]}}}],["random.randint(1",{"_index":298,"t":{"13":{"position":[[467,18]]}}}],["random_gener",{"_index":308,"t":{"13":{"position":[[833,16]]}}}],["random_generator(n=5",{"_index":312,"t":{"13":{"position":[[975,21]]}}}],["randomgener",{"_index":302,"t":{"13":{"position":[[531,15],[789,15]]},"15":{"position":[[178,15]]}}}],["randomgenerator(plugin",{"_index":295,"t":{"13":{"position":[[393,24]]}}}],["rang",{"_index":319,"t":{"15":{"position":[[241,5],[390,5],[443,5]]}}}],["range(n",{"_index":301,"t":{"13":{"position":[[500,9]]}}}],["re",{"_index":422,"t":{"23":{"position":[[668,2]]}}}],["read",{"_index":333,"t":{"15":{"position":[[871,4]]},"39":{"position":[[1236,4],[1342,4],[1523,4],[1788,4],[1866,4]]}}}],["read_manu",{"_index":645,"t":{"39":{"position":[[1395,12],[2037,12]]}}}],["real",{"_index":562,"t":{"35":{"position":[[315,4]]}}}],["reason",{"_index":655,"t":{"39":{"position":[[2421,8]]}}}],["recent",{"_index":425,"t":{"25":{"position":[[0,9]]},"35":{"position":[[1949,8]]}}}],["recipi",{"_index":414,"t":{"23":{"position":[[438,9]]}}}],["recommend",{"_index":663,"t":{"39":{"position":[[3874,9]]}}}],["refer",{"_index":29,"t":{"3":{"position":[[412,9]]},"5":{"position":[[396,9]]},"11":{"position":[[23,5]]},"21":{"position":[[268,5]]}}}],["register_plugin",{"_index":294,"t":{"13":{"position":[[354,15],[370,16]]},"15":{"position":[[1410,16]]}}}],["rel",{"_index":419,"t":{"23":{"position":[[606,10]]},"25":{"position":[[409,10]]}}}],["repli",{"_index":592,"t":{"35":{"position":[[2291,5]]},"39":{"position":[[2728,5],[2746,5],[4429,5]]}}}],["reply(self",{"_index":593,"t":{"35":{"position":[[2348,11]]},"39":{"position":[[2862,11]]}}}],["reply_cont",{"_index":509,"t":{"27":{"position":[[1425,16],[1504,16],[2170,14],[2468,13]]}}}],["reply_typ",{"_index":506,"t":{"27":{"position":[[1361,13],[1490,13],[1715,10],[2134,10],[2383,10]]}}}],["report",{"_index":151,"t":{"7":{"position":[[1760,6]]}}}],["repres",{"_index":168,"t":{"7":{"position":[[2224,11]]},"39":{"position":[[1006,9],[1152,11],[2281,9],[4235,11]]}}}],["request",{"_index":181,"t":{"7":{"position":[[2899,8]]},"39":{"position":[[130,7],[471,7]]}}}],["requir",{"_index":81,"t":{"3":{"position":[[1507,8]]},"5":{"position":[[1491,8]]},"7":{"position":[[2724,7],[4125,8]]},"13":{"position":[[864,9],[1029,9]]},"15":{"position":[[407,9]]},"23":{"position":[[412,8]]},"25":{"position":[[1367,11]]},"27":{"position":[[631,11],[715,11],[1466,11],[1526,11]]},"39":{"position":[[3473,8]]}}}],["requisit",{"_index":277,"t":{"11":{"position":[[4,11]]}}}],["respect",{"_index":532,"t":{"27":{"position":[[3077,13]]},"33":{"position":[[341,13]]}}}],["respons",{"_index":91,"t":{"3":{"position":[[1788,8]]},"5":{"position":[[1772,8]]},"7":{"position":[[2937,10],[2969,8]]},"9":{"position":[[855,8]]},"23":{"position":[[257,9],[360,8],[684,8]]},"25":{"position":[[110,9],[254,9],[1949,8],[2574,10]]},"27":{"position":[[407,11],[727,12],[835,8],[1280,11],[1538,12],[1572,8]]},"29":{"position":[[123,9]]},"39":{"position":[[220,9],[3028,8]]}}}],["response_json_schema",{"_index":490,"t":{"27":{"position":[[192,20],[346,21],[1054,20],[1219,21]]}}}],["response_round",{"_index":263,"t":{"9":{"position":[[724,14]]}}}],["response_round.post_list",{"_index":268,"t":{"9":{"position":[[884,25]]}}}],["response_round.st",{"_index":266,"t":{"9":{"position":[[806,20]]}}}],["restrict",{"_index":513,"t":{"27":{"position":[[1702,8]]}}}],["result",{"_index":311,"t":{"13":{"position":[[966,6],[1119,6]]},"25":{"position":[[1883,9]]}}}],["retriev",{"_index":557,"t":{"35":{"position":[[117,8],[362,8]]}}}],["return",{"_index":149,"t":{"7":{"position":[[1626,6]]},"9":{"position":[[877,6]]},"13":{"position":[[460,6],[1102,8],[1244,6]]},"35":{"position":[[2822,6]]},"39":{"position":[[2992,7]]}}}],["reusabl",{"_index":332,"t":{"15":{"position":[[738,9]]}}}],["right",{"_index":559,"t":{"35":{"position":[[209,5]]}}}],["rigid",{"_index":38,"t":{"3":{"position":[[635,5]]},"5":{"position":[[619,5]]}}}],["role",{"_index":101,"t":{"7":{"position":[[147,5]]},"25":{"position":[[1640,8],[1703,8]]},"33":{"position":[[6,4],[210,6],[437,4],[528,4],[563,4],[684,6],[740,5],[779,4],[904,5]]},"35":{"position":[[1932,5],[2052,4],[2089,6],[2192,4],[2851,4]]},"37":{"position":[[163,5]]},"39":{"position":[[2459,5],[2480,5],[2542,5],[2595,5],[2664,4],[2698,4],[2817,5],[3044,4],[3093,4],[3208,5],[3282,4],[3312,5],[3491,5],[3547,5],[3668,5],[3798,4],[3838,5],[3927,5],[4032,4],[4078,5],[4171,6],[4355,4],[4397,4],[4453,5],[4599,5],[4668,4],[4736,4],[4790,6],[4816,5]]}}}],["role_name.experience_dir",{"_index":545,"t":{"33":{"position":[[108,24]]}}}],["round",{"_index":130,"t":{"7":{"position":[[1064,6],[1206,6],[1437,7],[1487,5],[1498,5],[1552,5],[1656,6],[1669,6],[1726,5],[1839,7],[1919,7],[2000,7],[2081,7],[2162,7],[4239,6]]},"17":{"position":[[864,6]]}}}],["run",{"_index":232,"t":{"7":{"position":[[4498,3]]},"23":{"position":[[66,3]]},"25":{"position":[[776,3],[1912,3]]},"29":{"position":[[181,3],[411,3]]}}}],["runnabl",{"_index":623,"t":{"39":{"position":[[159,8]]}}}],["same",{"_index":60,"t":{"3":{"position":[[1096,4]]},"5":{"position":[[1080,4]]},"7":{"position":[[3308,4]]},"15":{"position":[[809,4],[1059,4]]},"17":{"position":[[1575,4]]},"35":{"position":[[881,4]]}}}],["sampl",{"_index":326,"t":{"15":{"position":[[601,6],[1357,6]]},"25":{"position":[[1214,6]]},"27":{"position":[[2008,7],[2451,8]]},"39":{"position":[[4592,6]]}}}],["san",{"_index":473,"t":{"25":{"position":[[1749,3]]}}}],["save",{"_index":188,"t":{"7":{"position":[[3027,4],[3121,4]]}}}],["schema",{"_index":393,"t":{"21":{"position":[[253,7]]},"25":{"position":[[306,7],[384,7]]},"27":{"position":[[85,6],[787,7],[944,6],[1922,7],[2076,7],[2698,7],[2966,6]]}}}],["scope",{"_index":607,"t":{"35":{"position":[[2732,5]]}}}],["scope=\"convers",{"_index":605,"t":{"35":{"position":[[2687,21]]}}}],["score",{"_index":170,"t":{"7":{"position":[[2287,5],[2350,5],[2400,5],[2509,5],[2554,5],[2589,6],[2603,5],[2676,5],[3791,5]]}}}],["score_point",{"_index":153,"t":{"7":{"position":[[1801,12],[1881,12],[1962,12],[2043,12],[2124,12],[3241,12]]}}}],["scoring_point",{"_index":152,"t":{"7":{"position":[[1783,15],[2243,14],[3223,15]]}}}],["second",{"_index":527,"t":{"27":{"position":[[2939,7]]},"39":{"position":[[2247,7]]}}}],["section",{"_index":373,"t":{"17":{"position":[[1375,8]]},"21":{"position":[[341,7]]}}}],["see",{"_index":122,"t":{"7":{"position":[[855,3]]},"23":{"position":[[337,3]]}}}],["seen",{"_index":396,"t":{"23":{"position":[[6,4]]}}}],["select",{"_index":363,"t":{"17":{"position":[[746,6]]},"31":{"position":[[236,10]]},"33":{"position":[[878,9]]},"35":{"position":[[31,6],[966,6],[1310,6],[1406,9]]},"37":{"position":[[44,6],[104,9],[198,10]]}}}],["selected_experi",{"_index":615,"t":{"35":{"position":[[3134,20]]}}}],["self.app",{"_index":254,"t":{"9":{"position":[[530,8]]}}}],["self.app.get_sess",{"_index":258,"t":{"9":{"position":[[606,22]]}}}],["self.app.stop",{"_index":271,"t":{"9":{"position":[[938,15]]}}}],["self.db",{"_index":344,"t":{"15":{"position":[[1503,7],[1520,7]]}}}],["self.load_experience(query=queri",{"_index":616,"t":{"35":{"position":[[3157,33]]}}}],["self.sess",{"_index":257,"t":{"9":{"position":[[591,12]]}}}],["self.session.send_messag",{"_index":264,"t":{"9":{"position":[[741,26]]}}}],["self.session.session_id",{"_index":260,"t":{"9":{"position":[[647,23]]}}}],["self.session_id",{"_index":259,"t":{"9":{"position":[[629,15]]}}}],["send",{"_index":180,"t":{"7":{"position":[[2892,4]]},"25":{"position":[[2525,4]]},"39":{"position":[[3750,7],[3812,4]]}}}],["send_to",{"_index":412,"t":{"23":{"position":[[388,7]]},"27":{"position":[[563,10],[687,10]]}}}],["sens",{"_index":654,"t":{"39":{"position":[[2272,5]]}}}],["separ",{"_index":369,"t":{"17":{"position":[[1012,10]]}}}],["server",{"_index":455,"t":{"25":{"position":[[1243,7],[2555,6]]}}}],["session",{"_index":361,"t":{"17":{"position":[[615,8],[1037,9],[1085,8],[1392,7],[1580,8],[1598,7]]}}}],["set",{"_index":228,"t":{"7":{"position":[[4342,3]]},"15":{"position":[[296,3]]},"17":{"position":[[1118,3]]},"25":{"position":[[2060,3]]},"33":{"position":[[96,7],[263,7]]},"35":{"position":[[540,3],[1713,3],[1789,3],[1895,3],[2142,3],[2870,3]]},"37":{"position":[[260,3]]}}}],["share",{"_index":589,"t":{"35":{"position":[[1984,6],[2014,6],[2029,6],[2060,5],[2125,6],[2745,6],[2951,6]]},"37":{"position":[[243,6]]}}}],["show",{"_index":324,"t":{"15":{"position":[[501,4]]},"39":{"position":[[1477,5]]}}}],["shown",{"_index":97,"t":{"7":{"position":[[99,5]]},"25":{"position":[[865,5]]},"29":{"position":[[168,5]]},"35":{"position":[[2331,5]]},"39":{"position":[[3594,5]]}}}],["signatur",{"_index":305,"t":{"13":{"position":[[686,9],[1385,10],[1450,9]]},"17":{"position":[[451,9]]},"39":{"position":[[2847,10]]}}}],["similar",{"_index":561,"t":{"35":{"position":[[246,10],[660,7],[709,7]]}}}],["simpl",{"_index":129,"t":{"7":{"position":[[1006,7]]},"13":{"position":[[256,6]]},"25":{"position":[[847,6]]}}}],["simpli",{"_index":578,"t":{"35":{"position":[[1215,6]]}}}],["slightli",{"_index":571,"t":{"35":{"position":[[789,8]]}}}],["small",{"_index":420,"t":{"23":{"position":[[617,5]]}}}],["snippet",{"_index":290,"t":{"13":{"position":[[227,9],[1305,9]]},"15":{"position":[[54,9],[1401,8]]},"17":{"position":[[352,9],[582,8],[1269,9],[1531,9]]},"39":{"position":[[173,8],[815,9],[1072,9],[1172,9],[2237,9],[4255,8]]}}}],["sole",{"_index":560,"t":{"35":{"position":[[232,6]]}}}],["solut",{"_index":114,"t":{"7":{"position":[[534,10],[552,8],[652,8],[708,8],[2449,9],[2487,8],[2767,9],[3556,8],[3774,8]]}}}],["sometim",{"_index":39,"t":{"3":{"position":[[655,9]]},"5":{"position":[[639,9]]},"35":{"position":[[175,9]]}}}],["specif",{"_index":240,"t":{"9":{"position":[[176,13]]},"13":{"position":[[98,13]]},"25":{"position":[[276,8]]},"27":{"position":[[2084,13]]},"35":{"position":[[1425,13]]}}}],["specifi",{"_index":211,"t":{"7":{"position":[[3905,7]]},"13":{"position":[[1195,9]]},"15":{"position":[[229,7]]},"17":{"position":[[398,9],[674,9]]},"25":{"position":[[1120,7],[1979,9]]},"33":{"position":[[549,9]]}}}],["sql_pull_data",{"_index":327,"t":{"15":{"position":[[624,14],[1343,13]]}}}],["sqldatabase.from_uri(self.config.get(\"sqlite_db_path",{"_index":345,"t":{"15":{"position":[[1530,55]]}}}],["sqlpulldata",{"_index":347,"t":{"15":{"position":[[1612,11]]}}}],["sqlpulldata(plugin",{"_index":341,"t":{"15":{"position":[[1433,20]]}}}],["stage",{"_index":357,"t":{"17":{"position":[[311,6]]}}}],["start",{"_index":146,"t":{"7":{"position":[[1473,8]]},"17":{"position":[[119,7],[1072,6]]},"25":{"position":[[736,5]]}}}],["state",{"_index":22,"t":{"3":{"position":[[296,8]]},"5":{"position":[[280,8]]},"15":{"position":[[153,7],[1206,7],[1284,6]]},"17":{"position":[[1303,6]]},"19":{"position":[[147,7]]}}}],["stateless",{"_index":350,"t":{"15":{"position":[[1719,9]]}}}],["statement",{"_index":207,"t":{"7":{"position":[[3759,10],[3817,9]]}}}],["static",{"_index":554,"t":{"33":{"position":[[751,6]]},"37":{"position":[[86,6]]}}}],["step",{"_index":17,"t":{"3":{"position":[[228,4]]},"5":{"position":[[212,4]]},"35":{"position":[[717,5],[780,5],[861,4],[1166,4]]},"39":{"position":[[1493,4]]}}}],["step_1",{"_index":568,"t":{"35":{"position":[[728,7]]}}}],["step_2",{"_index":569,"t":{"35":{"position":[[736,7]]}}}],["step_3",{"_index":570,"t":{"35":{"position":[[748,7]]}}}],["still",{"_index":62,"t":{"3":{"position":[[1140,5]]},"5":{"position":[[1124,5]]},"25":{"position":[[705,5]]}}}],["stop",{"_index":115,"t":{"7":{"position":[[617,4]]}}}],["storag",{"_index":668,"t":{"39":{"position":[[3990,7]]}}}],["store",{"_index":666,"t":{"39":{"position":[[3960,5]]}}}],["str",{"_index":250,"t":{"9":{"position":[[440,4],[454,4],[711,4],[719,4]]},"15":{"position":[[1490,5]]}}}],["straightforward",{"_index":588,"t":{"35":{"position":[[1757,16]]},"39":{"position":[[1923,16],[4363,15]]}}}],["string",{"_index":459,"t":{"25":{"position":[[1353,8]]},"27":{"position":[[478,8],[508,8],[551,8],[584,8],[617,8],[1349,8],[1385,9],[1452,8]]}}}],["structur",{"_index":567,"t":{"35":{"position":[[671,10],[1559,10]]}}}],["sub",{"_index":601,"t":{"35":{"position":[[2616,3]]}}}],["sub_path=exp_sub_path",{"_index":617,"t":{"35":{"position":[[3191,22]]}}}],["subdirectori",{"_index":230,"t":{"7":{"position":[[4405,12]]},"35":{"position":[[1455,14],[1732,13],[1808,12],[1914,12],[2161,13],[2889,13],[2929,12]]},"37":{"position":[[279,13]]}}}],["subject",{"_index":619,"t":{"35":{"position":[[3282,7]]}}}],["submit",{"_index":528,"t":{"27":{"position":[[2950,6]]}}}],["succe",{"_index":154,"t":{"7":{"position":[[1824,8],[1904,8],[1985,8],[2066,8],[2147,8]]}}}],["successfulli",{"_index":479,"t":{"25":{"position":[[2024,12]]}}}],["such",{"_index":179,"t":{"7":{"position":[[2843,4]]},"23":{"position":[[142,4]]},"25":{"position":[[641,4]]},"39":{"position":[[1998,4],[4264,4],[4651,4]]}}}],["suggest",{"_index":535,"t":{"29":{"position":[[478,12]]}}}],["sum",{"_index":127,"t":{"7":{"position":[[969,4],[1121,4],[1258,4],[1367,3],[1463,3],[1578,4],[1618,3],[1637,3],[1752,3],[1771,3],[1851,3],[1931,3],[2012,3],[2093,3],[2174,3],[2577,7]]}}}],["summari",{"_index":669,"t":{"39":{"position":[[4054,8]]}}}],["sunni",{"_index":71,"t":{"3":{"position":[[1262,5],[1408,5],[1836,9]]},"5":{"position":[[1246,5],[1392,5],[1820,9]]}}}],["super().__init__(task_descript",{"_index":253,"t":{"9":{"position":[[495,34]]}}}],["supervis",{"_index":109,"t":{"7":{"position":[[335,10]]}}}],["support",{"_index":328,"t":{"15":{"position":[[639,10]]},"17":{"position":[[1186,9]]},"25":{"position":[[235,7],[489,8],[609,7],[1162,8]]},"27":{"position":[[12,7],[154,7],[1906,7],[2889,7]]},"29":{"position":[[261,7]]}}}],["sure",{"_index":137,"t":{"7":{"position":[[1221,4]]}}}],["system",{"_index":470,"t":{"25":{"position":[[1649,9]]},"39":{"position":[[362,8],[556,6]]}}}],["take",{"_index":86,"t":{"3":{"position":[[1642,5]]},"5":{"position":[[1626,5]]},"39":{"position":[[2929,5]]}}}],["talk",{"_index":657,"t":{"39":{"position":[[3237,4],[3296,4],[3728,4]]}}}],["target",{"_index":110,"t":{"7":{"position":[[379,6],[591,7]]}}}],["task",{"_index":18,"t":{"3":{"position":[[233,5],[1101,5]]},"5":{"position":[[217,5],[1085,5]]},"7":{"position":[[236,4],[445,5],[485,4],[939,4],[964,4],[998,4],[1423,4],[2809,4],[2881,4],[3080,4],[3210,4],[4458,4]]},"35":{"position":[[84,5],[399,4],[423,4],[509,4],[574,5],[599,4],[822,4],[900,4],[917,4],[1001,4],[1224,4],[1269,4],[1292,4],[1345,4],[1674,4],[1697,4],[2239,4],[2262,4],[2416,4]]},"39":{"position":[[586,6],[1059,4],[1123,5],[1505,5],[1657,5],[3463,4],[3586,4],[4213,4]]}}}],["task_descript",{"_index":140,"t":{"7":{"position":[[1398,17],[2856,17]]},"9":{"position":[[422,17]]}}}],["task_typ",{"_index":596,"t":{"35":{"position":[[2453,9]]}}}],["task_type_1",{"_index":564,"t":{"35":{"position":[[460,12],[1593,11]]}}}],["task_type_2",{"_index":565,"t":{"35":{"position":[[473,12]]}}}],["task_type_3",{"_index":566,"t":{"35":{"position":[[490,12]]}}}],["tasktypeidentifi",{"_index":590,"t":{"35":{"position":[[2204,18],[2309,18]]}}}],["taskweav",{"_index":226,"t":{"7":{"position":[[4316,10]]},"9":{"position":[[51,11],[317,10]]},"13":{"position":[[3,11]]},"15":{"position":[[909,10]]},"17":{"position":[[108,10],[1199,10]]},"19":{"position":[[55,11],[322,10]]},"21":{"position":[[107,10],[330,10]]},"23":{"position":[[70,10]]},"25":{"position":[[395,11],[2096,11],[2509,10]]},"27":{"position":[[50,11],[2927,11]]},"29":{"position":[[185,10],[365,11],[415,10]]},"33":{"position":[[14,10]]},"35":{"position":[[93,11],[1824,11],[1938,10],[3262,10]]},"37":{"position":[[66,11]]},"39":{"position":[[9,10],[438,10],[2468,11],[2510,10],[3217,10],[4087,10],[4557,11],[4825,11]]}}}],["taskweaver.plugin",{"_index":292,"t":{"13":{"position":[[321,17]]}}}],["taskweaver/code_interpreter/code_interpreter/code_generator_prompt.pi",{"_index":504,"t":{"27":{"position":[[1125,70]]}}}],["taskweaver/planner/planner_prompt.pi",{"_index":491,"t":{"27":{"position":[[288,37]]}}}],["taskweaver/taskweaver/ext_rol",{"_index":675,"t":{"39":{"position":[[4480,30],[4612,30]]}}}],["taskweaverapp(app_dir=app_dir",{"_index":255,"t":{"9":{"position":[[541,30]]}}}],["taskweavervirtualuser(virtualus",{"_index":247,"t":{"9":{"position":[[367,35]]}}}],["tell",{"_index":191,"t":{"7":{"position":[[3065,4],[3096,4],[3195,4]]}}}],["term",{"_index":621,"t":{"39":{"position":[[57,4]]}}}],["test",{"_index":105,"t":{"7":{"position":[[221,4],[1028,4],[3707,4],[3727,4]]},"25":{"position":[[1229,4]]}}}],["text",{"_index":508,"t":{"27":{"position":[[1414,7],[1763,5],[1998,5],[2415,6],[2441,6]]},"39":{"position":[[2375,4],[4280,4]]}}}],["theori",{"_index":368,"t":{"17":{"position":[[974,7]]}}}],["therefor",{"_index":93,"t":{"7":{"position":[[0,10],[2650,10]]},"15":{"position":[[1027,10]]},"27":{"position":[[106,10]]},"39":{"position":[[427,10],[2086,10]]}}}],["though",{"_index":574,"t":{"35":{"position":[[1017,6]]},"39":{"position":[[1945,6]]}}}],["thought",{"_index":505,"t":{"27":{"position":[[1328,10],[1478,11],[2629,7],[2724,7]]}}}],["through",{"_index":355,"t":{"17":{"position":[[135,7]]},"39":{"position":[[3331,7],[3682,7]]}}}],["time",{"_index":24,"t":{"3":{"position":[[323,6]]},"5":{"position":[[307,6]]},"17":{"position":[[605,4]]}}}],["tip",{"_index":618,"t":{"35":{"position":[[3214,3]]}}}],["titl",{"_index":573,"t":{"35":{"position":[[866,6]]}}}],["today",{"_index":69,"t":{"3":{"position":[[1240,6],[1268,5],[1314,6],[1374,6],[1414,6]]},"5":{"position":[[1224,6],[1252,5],[1298,6],[1358,6],[1398,6]]}}}],["togeth",{"_index":660,"t":{"39":{"position":[[3505,9],[3561,8]]}}}],["topic",{"_index":544,"t":{"31":{"position":[[187,6]]}}}],["total",{"_index":144,"t":{"7":{"position":[[1457,5],[1572,5],[1746,5],[2636,5]]}}}],["track",{"_index":133,"t":{"7":{"position":[[1108,5],[1245,5],[1605,5]]}}}],["tradit",{"_index":118,"t":{"7":{"position":[[760,11]]}}}],["translat",{"_index":632,"t":{"39":{"position":[[449,10]]}}}],["treat",{"_index":9,"t":{"3":{"position":[[115,5]]},"5":{"position":[[99,5]]},"7":{"position":[[51,6],[3686,5]]},"9":{"position":[[134,7]]}}}],["tri",{"_index":416,"t":{"23":{"position":[[485,5]]}}}],["true",{"_index":310,"t":{"13":{"position":[[859,4],[874,4],[1039,4]]},"25":{"position":[[2336,4]]},"33":{"position":[[938,5]]}}}],["truth",{"_index":28,"t":{"3":{"position":[[401,5],[574,6],[1823,6]]},"5":{"position":[[385,5],[558,6],[1807,6]]},"7":{"position":[[737,6],[1391,6],[2215,5]]}}}],["two",{"_index":100,"t":{"7":{"position":[[139,3],[3259,3]]},"15":{"position":[[1038,3]]},"27":{"position":[[1740,3]]}}}],["type",{"_index":314,"t":{"13":{"position":[[1019,5],[1126,5]]},"15":{"position":[[396,5]]},"25":{"position":[[1293,7],[1345,7]]},"27":{"position":[[373,7],[421,7],[470,7],[500,7],[543,7],[576,7],[609,7],[1246,7],[1294,7],[1341,7],[1377,7],[1444,7],[1981,5],[2120,4],[2217,5],[2377,5],[2433,4],[2462,5]]},"35":{"position":[[404,5],[428,5],[514,4],[604,5],[827,6],[905,6],[922,4],[1006,5],[1274,4],[1350,5],[1679,4],[2244,4],[2421,4]]}}}],["type=\"experience_sub_path",{"_index":604,"t":{"35":{"position":[[2659,27]]}}}],["type=attachmenttype.shared_memory_entri",{"_index":599,"t":{"35":{"position":[[2551,40]]}}}],["typic",{"_index":8,"t":{"3":{"position":[[105,9],[370,9],[499,9]]},"5":{"position":[[89,9],[354,9],[483,9]]}}}],["under",{"_index":634,"t":{"39":{"position":[[593,5]]}}}],["understand",{"_index":56,"t":{"3":{"position":[[982,10]]},"5":{"position":[[966,10]]},"11":{"position":[[95,13]]},"23":{"position":[[787,10]]}}}],["unit",{"_index":205,"t":{"7":{"position":[[3722,4]]}}}],["unless",{"_index":552,"t":{"33":{"position":[[533,6]]}}}],["unnecessari",{"_index":652,"t":{"39":{"position":[[2186,11]]}}}],["us",{"_index":41,"t":{"3":{"position":[[673,3]]},"5":{"position":[[657,3]]},"7":{"position":[[1020,4],[2322,4],[2415,4],[3643,4],[3742,5]]},"13":{"position":[[1323,3],[1575,4],[1610,3]]},"15":{"position":[[23,4],[513,3]]},"17":{"position":[[831,4]]},"25":{"position":[[461,3],[1066,4]]},"33":{"position":[[763,3]]},"35":{"position":[[2121,3]]},"39":{"position":[[4197,6]]}}}],["user",{"_index":83,"t":{"3":{"position":[[1542,5]]},"5":{"position":[[1526,5]]},"17":{"position":[[1067,4]]},"25":{"position":[[1712,7]]},"35":{"position":[[1148,4],[1201,4]]},"39":{"position":[[4716,5]]}}}],["user'",{"_index":370,"t":{"17":{"position":[[1146,6]]},"39":{"position":[[123,6],[464,6],[4689,6]]}}}],["valu",{"_index":315,"t":{"13":{"position":[[1251,6]]},"27":{"position":[[1744,7]]}}}],["variabl",{"_index":642,"t":{"39":{"position":[[1040,9],[2311,10]]}}}],["veri",{"_index":576,"t":{"35":{"position":[[1092,4]]},"39":{"position":[[990,4]]}}}],["version",{"_index":213,"t":{"7":{"position":[[3941,8],[3954,7]]},"21":{"position":[[96,7]]}}}],["virtualus",{"_index":273,"t":{"9":{"position":[[1002,11]]}}}],["vllm",{"_index":439,"t":{"25":{"position":[[571,5],[747,4],[780,5],[825,4],[1152,4],[1238,4],[2046,5],[2550,4]]}}}],["vllm.entrypoints.openai.api_serv",{"_index":446,"t":{"25":{"position":[[888,34]]}}}],["want",{"_index":75,"t":{"3":{"position":[[1337,4]]},"5":{"position":[[1321,4]]},"35":{"position":[[23,4],[958,4]]}}}],["way",{"_index":177,"t":{"7":{"position":[[2747,3]]},"17":{"position":[[880,3]]},"25":{"position":[[425,3]]},"33":{"position":[[758,4]]},"35":{"position":[[1871,4],[1885,3]]},"39":{"position":[[4114,3]]}}}],["we'v",{"_index":395,"t":{"23":{"position":[[0,5]]}}}],["weather",{"_index":68,"t":{"3":{"position":[[1232,7],[1306,7],[1354,7]]},"5":{"position":[[1216,7],[1290,7],[1338,7]]}}}],["weight",{"_index":157,"t":{"7":{"position":[[1869,7],[1950,7],[2031,7],[2112,7],[2194,7],[2305,7],[2642,7],[3321,7]]}}}],["well",{"_index":239,"t":{"9":{"position":[[100,5]]},"23":{"position":[[579,5],[865,5]]}}}],["whether",{"_index":365,"t":{"17":{"position":[[814,7]]}}}],["whole",{"_index":608,"t":{"35":{"position":[[2775,5]]}}}],["without",{"_index":550,"t":{"33":{"position":[[497,8]]}}}],["word",{"_index":662,"t":{"39":{"position":[[3716,6]]}}}],["work",{"_index":123,"t":{"7":{"position":[[903,6],[4063,7],[4187,7]]},"9":{"position":[[285,7]]},"23":{"position":[[574,4],[860,4]]},"27":{"position":[[2796,4]]},"39":{"position":[[3500,4],[3556,4]]}}}],["workflow",{"_index":640,"t":{"39":{"position":[[937,8],[1412,8]]}}}],["wrap",{"_index":289,"t":{"13":{"position":[[140,7]]},"39":{"position":[[728,7]]}}}],["write",{"_index":204,"t":{"7":{"position":[[3651,5]]},"39":{"position":[[680,5]]}}}],["yaml",{"_index":125,"t":{"7":{"position":[[924,4],[2271,4],[3892,4],[4429,4]]},"13":{"position":[[743,4],[771,4],[1185,4],[1350,4],[1497,4]]},"15":{"position":[[307,4],[356,4],[782,4],[961,4]]},"17":{"position":[[415,4],[493,4],[691,4],[960,4]]},"19":{"position":[[108,4]]}}}],["ye",{"_index":77,"t":{"3":{"position":[[1388,4]]},"5":{"position":[[1372,4]]}}}],["york",{"_index":73,"t":{"3":{"position":[[1281,5],[1369,4]]},"5":{"position":[[1265,5],[1353,4]]}}}]],"pipeline":["stemmer"]}}] \ No newline at end of file diff --git a/search-index-docs.json b/search-index-docs.json index cf44b33c..978d8af0 100644 --- a/search-index-docs.json +++ b/search-index-docs.json @@ -1 +1 @@ -[{"documents":[{"i":40,"t":"CLI Only Mode","u":"/TaskWeaver/docs/advanced/cli_only","b":["Docs","Advanced Features"]},{"i":45,"t":"Code Verification","u":"/TaskWeaver/docs/advanced/code_verification","b":["Docs","Advanced Features"]},{"i":52,"t":"Prompt Compression","u":"/TaskWeaver/docs/advanced/compression","b":["Docs","Advanced Features"]},{"i":56,"t":"Auto Plugin Selection","u":"/TaskWeaver/docs/advanced/plugin_selection","b":["Docs","Advanced Features"]},{"i":64,"t":"Telemetry","u":"/TaskWeaver/docs/advanced/telemetry","b":["Docs","Advanced Features"]},{"i":74,"t":"Code Execution","u":"/TaskWeaver/docs/code_execution","b":["Docs"]},{"i":86,"t":"Application","u":"/TaskWeaver/docs/concepts/app","b":["Docs","Concepts"]},{"i":88,"t":"Plugin","u":"/TaskWeaver/docs/concepts/plugin","b":["Docs","Concepts"]},{"i":90,"t":"Attachment","u":"/TaskWeaver/docs/concepts/attachment","b":["Docs","Concepts"]},{"i":92,"t":"Conversation","u":"/TaskWeaver/docs/concepts/conversation","b":["Docs","Concepts"]},{"i":94,"t":"Project","u":"/TaskWeaver/docs/concepts/project","b":["Docs","Concepts"]},{"i":96,"t":"Post","u":"/TaskWeaver/docs/concepts/post","b":["Docs","Concepts"]},{"i":98,"t":"Role","u":"/TaskWeaver/docs/concepts/role","b":["Docs","Concepts"]},{"i":100,"t":"Round","u":"/TaskWeaver/docs/concepts/round","b":["Docs","Concepts"]},{"i":102,"t":"Session","u":"/TaskWeaver/docs/concepts/session","b":["Docs","Concepts"]},{"i":104,"t":"More about Configurations","u":"/TaskWeaver/docs/configurations/configurations_in_detail","b":["Docs","Configurations"]},{"i":114,"t":"Configuration File","u":"/TaskWeaver/docs/configurations/overview","b":["Docs","Configurations"]},{"i":116,"t":"","u":"/TaskWeaver/docs/customization/","b":["Customization"]},{"i":123,"t":"Customizing Examples","u":"/TaskWeaver/docs/customization/example/","b":["Docs","Customization","Example"]},{"i":129,"t":"Experience","u":"/TaskWeaver/docs/customization/experience/","b":["Docs","Customization","Experience"]},{"i":136,"t":"Handcrafted Experience","u":"/TaskWeaver/docs/customization/experience/handcrafted_experience","b":["Docs","Customization","Experience"]},{"i":142,"t":"","u":"/TaskWeaver/docs/llms/","b":["Supported LLMs"]},{"i":163,"t":"FAQ","u":"/TaskWeaver/docs/FAQ","b":["Docs"]},{"i":182,"t":"Azure OpenAI","u":"/TaskWeaver/docs/llms/aoai","b":["Docs","Supported LLMs"]},{"i":187,"t":"Gemini","u":"/TaskWeaver/docs/llms/gemini","b":["Docs","Supported LLMs"]},{"i":189,"t":"Anthropic (Claude)","u":"/TaskWeaver/docs/llms/anthropic","b":[]},{"i":191,"t":"GLM","u":"/TaskWeaver/docs/llms/glm","b":["Docs","Supported LLMs"]},{"i":193,"t":"Customized LLM API","u":"/TaskWeaver/docs/llms/customized_llm_api","b":["Docs","Supported LLMs"]},{"i":195,"t":"GroqChat","u":"/TaskWeaver/docs/llms/groq","b":[]},{"i":197,"t":"Keywords AI","u":"/TaskWeaver/docs/llms/Keywords-AI","b":["Docs","Supported LLMs"]},{"i":199,"t":"LiteLLM","u":"/TaskWeaver/docs/llms/liteLLM","b":["Docs","Supported LLMs"]},{"i":201,"t":"Multi LLM APIs","u":"/TaskWeaver/docs/llms/multi-llm","b":["Docs","Supported LLMs"]},{"i":203,"t":"Ollama","u":"/TaskWeaver/docs/llms/ollama","b":["Docs","Supported LLMs"]},{"i":205,"t":"QWen","u":"/TaskWeaver/docs/llms/qwen","b":["Docs","Supported LLMs"]},{"i":207,"t":"OpenAI","u":"/TaskWeaver/docs/llms/openai","b":["Docs","Supported LLMs"]},{"i":209,"t":"Memory","u":"/TaskWeaver/docs/memory","b":["Docs"]},{"i":215,"t":"Overview","u":"/TaskWeaver/docs/overview","b":["Docs"]},{"i":217,"t":"Multiple YAML files to one Python implementation","u":"/TaskWeaver/docs/plugin/multi_yaml_single_impl","b":["Docs","Customization","Plugin"]},{"i":221,"t":"An Example of Developing a New Plugin","u":"/TaskWeaver/docs/plugin/how_to_develop_a_new_plugin","b":["Docs","Customization","Plugin"]},{"i":229,"t":"The Plugin-Only Mode","u":"/TaskWeaver/docs/plugin/plugin_only","b":["Docs","Advanced Features"]},{"i":236,"t":"Terminal","u":"/TaskWeaver/docs/usage/cmd","b":["Docs","Usage Options"]},{"i":238,"t":"Plugin Introduction","u":"/TaskWeaver/docs/plugin/plugin_intro","b":["Docs","Customization","Plugin"]},{"i":248,"t":"Quick Start","u":"/TaskWeaver/docs/quickstart","b":["Docs"]},{"i":261,"t":"Web UI","u":"/TaskWeaver/docs/usage/webui","b":["Docs","Usage Options"]},{"i":263,"t":"Library","u":"/TaskWeaver/docs/usage/library","b":["Docs","Usage Options"]},{"i":265,"t":"All-in-One Docker Image","u":"/TaskWeaver/docs/usage/docker","b":["Docs","Usage Options"]}],"index":{"version":"2.3.9","fields":["t"],"fieldVectors":[["t/40",[0,3.152,1,2.685]],["t/45",[2,2.685,3,3.152]],["t/52",[4,3.152,5,3.152]],["t/56",[6,2.564,7,1.597,8,2.564]],["t/64",[9,4.092]],["t/74",[2,2.685,10,3.152]],["t/86",[11,4.092]],["t/88",[7,2.549]],["t/90",[12,4.092]],["t/92",[13,4.092]],["t/94",[14,4.092]],["t/96",[15,4.092]],["t/98",[16,4.092]],["t/100",[17,4.092]],["t/102",[18,4.092]],["t/104",[19,3.152,20,2.685]],["t/114",[20,2.685,21,2.685]],["t/116",[]],["t/123",[22,2.685,23,2.685]],["t/129",[24,3.485]],["t/136",[24,2.685,25,3.152]],["t/142",[]],["t/163",[26,4.092]],["t/182",[27,3.152,28,2.685]],["t/187",[29,4.092]],["t/189",[30,3.152,31,3.152]],["t/191",[32,4.092]],["t/193",[22,2.184,33,2.184,34,2.184]],["t/195",[35,4.092]],["t/197",[36,3.152,37,3.152]],["t/199",[38,4.092]],["t/201",[33,2.184,34,2.184,39,2.564]],["t/203",[40,4.092]],["t/205",[41,4.092]],["t/207",[28,3.485]],["t/209",[42,4.092]],["t/215",[43,4.092]],["t/217",[21,1.399,44,1.643,45,1.643,46,1.399,47,1.643,48,1.643]],["t/221",[7,1.345,23,1.84,49,2.16,50,2.16]],["t/229",[1,2.685,7,1.963]],["t/236",[51,4.092]],["t/238",[7,1.963,52,3.152]],["t/248",[53,3.152,54,3.152]],["t/261",[55,3.152,56,3.152]],["t/263",[57,4.092]],["t/265",[46,2.184,58,2.564,59,2.564]]],"invertedIndex":[["ai",{"_index":37,"t":{"197":{"position":[[9,2]]}}}],["anthrop",{"_index":30,"t":{"189":{"position":[[0,9]]}}}],["api",{"_index":34,"t":{"193":{"position":[[15,3]]},"201":{"position":[[10,4]]}}}],["applic",{"_index":11,"t":{"86":{"position":[[0,11]]}}}],["attach",{"_index":12,"t":{"90":{"position":[[0,10]]}}}],["auto",{"_index":6,"t":{"56":{"position":[[0,4]]}}}],["azur",{"_index":27,"t":{"182":{"position":[[0,5]]}}}],["claud",{"_index":31,"t":{"189":{"position":[[10,8]]}}}],["cli",{"_index":0,"t":{"40":{"position":[[0,3]]}}}],["code",{"_index":2,"t":{"45":{"position":[[0,4]]},"74":{"position":[[0,4]]}}}],["compress",{"_index":5,"t":{"52":{"position":[[7,11]]}}}],["configur",{"_index":20,"t":{"104":{"position":[[11,14]]},"114":{"position":[[0,13]]}}}],["convers",{"_index":13,"t":{"92":{"position":[[0,12]]}}}],["custom",{"_index":22,"t":{"123":{"position":[[0,11]]},"193":{"position":[[0,10]]}}}],["develop",{"_index":49,"t":{"221":{"position":[[14,10]]}}}],["docker",{"_index":58,"t":{"265":{"position":[[11,6]]}}}],["exampl",{"_index":23,"t":{"123":{"position":[[12,8]]},"221":{"position":[[3,7]]}}}],["execut",{"_index":10,"t":{"74":{"position":[[5,9]]}}}],["experi",{"_index":24,"t":{"129":{"position":[[0,10]]},"136":{"position":[[12,10]]}}}],["faq",{"_index":26,"t":{"163":{"position":[[0,3]]}}}],["file",{"_index":21,"t":{"114":{"position":[[14,4]]},"217":{"position":[[14,5]]}}}],["gemini",{"_index":29,"t":{"187":{"position":[[0,6]]}}}],["glm",{"_index":32,"t":{"191":{"position":[[0,3]]}}}],["groqchat",{"_index":35,"t":{"195":{"position":[[0,8]]}}}],["handcraft",{"_index":25,"t":{"136":{"position":[[0,11]]}}}],["imag",{"_index":59,"t":{"265":{"position":[[18,5]]}}}],["implement",{"_index":48,"t":{"217":{"position":[[34,14]]}}}],["introduct",{"_index":52,"t":{"238":{"position":[[7,12]]}}}],["keyword",{"_index":36,"t":{"197":{"position":[[0,8]]}}}],["librari",{"_index":57,"t":{"263":{"position":[[0,7]]}}}],["litellm",{"_index":38,"t":{"199":{"position":[[0,7]]}}}],["llm",{"_index":33,"t":{"193":{"position":[[11,3]]},"201":{"position":[[6,3]]}}}],["memori",{"_index":42,"t":{"209":{"position":[[0,6]]}}}],["mode",{"_index":1,"t":{"40":{"position":[[9,4]]},"229":{"position":[[16,4]]}}}],["more",{"_index":19,"t":{"104":{"position":[[0,4]]}}}],["multi",{"_index":39,"t":{"201":{"position":[[0,5]]}}}],["multipl",{"_index":44,"t":{"217":{"position":[[0,8]]}}}],["new",{"_index":50,"t":{"221":{"position":[[27,3]]}}}],["ollama",{"_index":40,"t":{"203":{"position":[[0,6]]}}}],["on",{"_index":46,"t":{"217":{"position":[[23,3]]},"265":{"position":[[7,3]]}}}],["openai",{"_index":28,"t":{"182":{"position":[[6,6]]},"207":{"position":[[0,6]]}}}],["overview",{"_index":43,"t":{"215":{"position":[[0,8]]}}}],["plugin",{"_index":7,"t":{"56":{"position":[[5,6]]},"88":{"position":[[0,6]]},"221":{"position":[[31,6]]},"229":{"position":[[4,6]]},"238":{"position":[[0,6]]}}}],["post",{"_index":15,"t":{"96":{"position":[[0,4]]}}}],["project",{"_index":14,"t":{"94":{"position":[[0,7]]}}}],["prompt",{"_index":4,"t":{"52":{"position":[[0,6]]}}}],["python",{"_index":47,"t":{"217":{"position":[[27,6]]}}}],["quick",{"_index":53,"t":{"248":{"position":[[0,5]]}}}],["qwen",{"_index":41,"t":{"205":{"position":[[0,4]]}}}],["role",{"_index":16,"t":{"98":{"position":[[0,4]]}}}],["round",{"_index":17,"t":{"100":{"position":[[0,5]]}}}],["select",{"_index":8,"t":{"56":{"position":[[12,9]]}}}],["session",{"_index":18,"t":{"102":{"position":[[0,7]]}}}],["start",{"_index":54,"t":{"248":{"position":[[6,5]]}}}],["telemetri",{"_index":9,"t":{"64":{"position":[[0,9]]}}}],["termin",{"_index":51,"t":{"236":{"position":[[0,8]]}}}],["ui",{"_index":56,"t":{"261":{"position":[[4,2]]}}}],["verif",{"_index":3,"t":{"45":{"position":[[5,12]]}}}],["web",{"_index":55,"t":{"261":{"position":[[0,3]]}}}],["yaml",{"_index":45,"t":{"217":{"position":[[9,4]]}}}]],"pipeline":["stemmer"]}},{"documents":[{"i":42,"t":"Demo","u":"/TaskWeaver/docs/advanced/cli_only","h":"#demo","p":40},{"i":43,"t":"How to enable","u":"/TaskWeaver/docs/advanced/cli_only","h":"#how-to-enable","p":40},{"i":46,"t":"Why do we need code verification?","u":"/TaskWeaver/docs/advanced/code_verification","h":"#why-do-we-need-code-verification","p":45},{"i":48,"t":"How to use code verification?","u":"/TaskWeaver/docs/advanced/code_verification","h":"#how-to-use-code-verification","p":45},{"i":50,"t":"How is code verification implemented?","u":"/TaskWeaver/docs/advanced/code_verification","h":"#how-is-code-verification-implemented","p":45},{"i":54,"t":"Configurations","u":"/TaskWeaver/docs/advanced/compression","h":"#configurations","p":52},{"i":58,"t":"Auto Plugin Selection Overview","u":"/TaskWeaver/docs/advanced/plugin_selection","h":"#auto-plugin-selection-overview","p":56},{"i":60,"t":"Auto Plugin Selection Configuration","u":"/TaskWeaver/docs/advanced/plugin_selection","h":"#auto-plugin-selection-configuration","p":56},{"i":62,"t":"Auto Plugin Selection Preparation","u":"/TaskWeaver/docs/advanced/plugin_selection","h":"#auto-plugin-selection-preparation","p":56},{"i":66,"t":"How to enable tracing","u":"/TaskWeaver/docs/advanced/telemetry","h":"#how-to-enable-tracing","p":64},{"i":68,"t":"Tracing Infrastructure Configuration","u":"/TaskWeaver/docs/advanced/telemetry","h":"#tracing-infrastructure-configuration","p":64},{"i":70,"t":"How to view the metrics","u":"/TaskWeaver/docs/advanced/telemetry","h":"#how-to-view-the-metrics","p":64},{"i":72,"t":"How to customize tracing","u":"/TaskWeaver/docs/advanced/telemetry","h":"#how-to-customize-tracing","p":64},{"i":76,"t":"Two Modes of Code Execution","u":"/TaskWeaver/docs/code_execution","h":"#two-modes-of-code-execution","p":74},{"i":78,"t":"How to Configure the Code Execution Mode","u":"/TaskWeaver/docs/code_execution","h":"#how-to-configure-the-code-execution-mode","p":74},{"i":80,"t":"How to customize the Docker image for code execution","u":"/TaskWeaver/docs/code_execution","h":"#how-to-customize-the-docker-image-for-code-execution","p":74},{"i":82,"t":"Limitations of the container Mode","u":"/TaskWeaver/docs/code_execution","h":"#limitations-of-the-container-mode","p":74},{"i":84,"t":"Restricting External Network Access for Docker Containers","u":"/TaskWeaver/docs/code_execution","h":"#restricting-external-network-access-for-docker-containers","p":74},{"i":106,"t":"Planner Configuration","u":"/TaskWeaver/docs/configurations/configurations_in_detail","h":"#planner-configuration","p":104},{"i":108,"t":"Session Configuration","u":"/TaskWeaver/docs/configurations/configurations_in_detail","h":"#session-configuration","p":104},{"i":110,"t":"Embedding Configuration","u":"/TaskWeaver/docs/configurations/configurations_in_detail","h":"#embedding-configuration","p":104},{"i":112,"t":"OpenAI Configuration","u":"/TaskWeaver/docs/configurations/configurations_in_detail","h":"#openai-configuration","p":104},{"i":117,"t":"🗃️ Plugin","u":"/TaskWeaver/docs/customization/","h":"","p":116},{"i":119,"t":"🗃️ Example","u":"/TaskWeaver/docs/customization/","h":"","p":116},{"i":121,"t":"🗃️ Experience","u":"/TaskWeaver/docs/customization/","h":"","p":116},{"i":125,"t":"Planner Examples","u":"/TaskWeaver/docs/customization/example/","h":"#planner-examples","p":123},{"i":127,"t":"CodeInterpreter Examples","u":"/TaskWeaver/docs/customization/example/","h":"#codeinterpreter-examples","p":123},{"i":130,"t":"Motivation","u":"/TaskWeaver/docs/customization/experience/","h":"#motivation","p":129},{"i":132,"t":"Quick start","u":"/TaskWeaver/docs/customization/experience/","h":"#quick-start","p":129},{"i":134,"t":"A walk-through example","u":"/TaskWeaver/docs/customization/experience/","h":"#a-walk-through-example","p":129},{"i":138,"t":"Create a handcrafted experience","u":"/TaskWeaver/docs/customization/experience/handcrafted_experience","h":"#create-a-handcrafted-experience","p":136},{"i":140,"t":"Load the handcrafted experience","u":"/TaskWeaver/docs/customization/experience/handcrafted_experience","h":"#load-the-handcrafted-experience","p":136},{"i":143,"t":"📄️ OpenAI","u":"/TaskWeaver/docs/llms/","h":"","p":142},{"i":145,"t":"📄️ Azure OpenAI","u":"/TaskWeaver/docs/llms/","h":"","p":142},{"i":147,"t":"📄️ LiteLLM","u":"/TaskWeaver/docs/llms/","h":"","p":142},{"i":149,"t":"📄️ Ollama","u":"/TaskWeaver/docs/llms/","h":"","p":142},{"i":151,"t":"📄️ Gemini","u":"/TaskWeaver/docs/llms/","h":"","p":142},{"i":153,"t":"📄️ QWen","u":"/TaskWeaver/docs/llms/","h":"","p":142},{"i":155,"t":"📄️ GLM","u":"/TaskWeaver/docs/llms/","h":"","p":142},{"i":157,"t":"📄️ Keywords AI","u":"/TaskWeaver/docs/llms/","h":"","p":142},{"i":159,"t":"📄️ Customized LLM API","u":"/TaskWeaver/docs/llms/","h":"","p":142},{"i":161,"t":"📄️ Multi LLM APIs","u":"/TaskWeaver/docs/llms/","h":"","p":142},{"i":164,"t":"Q: Why it takes so long to generate the output?","u":"/TaskWeaver/docs/FAQ","h":"#q-why-it-takes-so-long-to-generate-the-output","p":163},{"i":166,"t":"Q: Why TaskWeaver fails and the logs say \"Failed to connect to docker.daemon\"?","u":"/TaskWeaver/docs/FAQ","h":"#q-why-taskweaver-fails-and-the-logs-say-failed-to-connect-to-dockerdaemon","p":163},{"i":168,"t":"Q: Why I see errors saying the Planner failed to generate the send_to, message or other fields?","u":"/TaskWeaver/docs/FAQ","h":"#q-why-i-see-errors-saying-the-planner-failed-to-generate-the-send_to-message-or-other-fields","p":163},{"i":170,"t":"Q: How do I know if TaskWeaver can see my plugin?","u":"/TaskWeaver/docs/FAQ","h":"#q-how-do-i-know-if-taskweaver-can-see-my-plugin","p":163},{"i":172,"t":"Q: Why TaskWeaver cannot see my plugin?","u":"/TaskWeaver/docs/FAQ","h":"#q-why-taskweaver-cannot-see-my-plugin","p":163},{"i":174,"t":"Q: Why TaskWeaver can see my plugin but cannot call it?","u":"/TaskWeaver/docs/FAQ","h":"#q-why-taskweaver-can-see-my-plugin-but-cannot-call-it","p":163},{"i":176,"t":"Q: How to debug my plugin?","u":"/TaskWeaver/docs/FAQ","h":"#q-how-to-debug-my-plugin","p":163},{"i":178,"t":"Q: Why I see the error message \"RuntimeError: This event loop is already running\"?","u":"/TaskWeaver/docs/FAQ","h":"#q-why-i-see-the-error-message-runtimeerror-this-event-loop-is-already-running","p":163},{"i":180,"t":"Q: Why I see the error message \"Permissions assignment failed for secure file: Got '0o677' instead of '0o0600'.\" when running TaskWeaver?","u":"/TaskWeaver/docs/FAQ","h":"#q-why-i-see-the-error-message-permissions-assignment-failed-for-secure-file-got-0o677-instead-of-0o0600-when-running-taskweaver","p":163},{"i":183,"t":"Using API Key","u":"/TaskWeaver/docs/llms/aoai","h":"#using-api-key","p":182},{"i":185,"t":"Using Entra Authentication","u":"/TaskWeaver/docs/llms/aoai","h":"#using-entra-authentication","p":182},{"i":211,"t":"Role-wise Conversation History","u":"/TaskWeaver/docs/memory","h":"#role-wise-conversation-history","p":209},{"i":213,"t":"Shared Memory","u":"/TaskWeaver/docs/memory","h":"#shared-memory","p":209},{"i":219,"t":"Conclusion","u":"/TaskWeaver/docs/plugin/multi_yaml_single_impl","h":"#conclusion","p":217},{"i":223,"t":"Implement the python code","u":"/TaskWeaver/docs/plugin/how_to_develop_a_new_plugin","h":"#implement-the-python-code","p":221},{"i":225,"t":"Configure the schema","u":"/TaskWeaver/docs/plugin/how_to_develop_a_new_plugin","h":"#configure-the-schema","p":221},{"i":227,"t":"Call the plugin","u":"/TaskWeaver/docs/plugin/how_to_develop_a_new_plugin","h":"#call-the-plugin","p":221},{"i":230,"t":"What is the plugin-only mode?","u":"/TaskWeaver/docs/plugin/plugin_only","h":"#what-is-the-plugin-only-mode","p":229},{"i":232,"t":"How is the plugin-only mode implemented?","u":"/TaskWeaver/docs/plugin/plugin_only","h":"#how-is-the-plugin-only-mode-implemented","p":229},{"i":234,"t":"Which models support the plugin-only mode?","u":"/TaskWeaver/docs/plugin/plugin_only","h":"#which-models-support-the-plugin-only-mode","p":229},{"i":240,"t":"Plugin Structure","u":"/TaskWeaver/docs/plugin/plugin_intro","h":"#plugin-structure","p":238},{"i":242,"t":"Plugin Implementation","u":"/TaskWeaver/docs/plugin/plugin_intro","h":"#plugin-implementation","p":238},{"i":244,"t":"Important Notes","u":"/TaskWeaver/docs/plugin/plugin_intro","h":"#important-notes","p":238},{"i":246,"t":"Plugin Schema","u":"/TaskWeaver/docs/plugin/plugin_intro","h":"#plugin-schema","p":238},{"i":249,"t":"Installation","u":"/TaskWeaver/docs/quickstart","h":"#installation","p":248},{"i":251,"t":"Project Directory","u":"/TaskWeaver/docs/quickstart","h":"#project-directory","p":248},{"i":253,"t":"OpenAI Configuration","u":"/TaskWeaver/docs/quickstart","h":"#openai-configuration","p":248},{"i":255,"t":"Azure OpenAI","u":"/TaskWeaver/docs/quickstart","h":"#azure-openai","p":248},{"i":257,"t":"OpenAI","u":"/TaskWeaver/docs/quickstart","h":"#openai","p":248},{"i":259,"t":"Start TaskWeaver","u":"/TaskWeaver/docs/quickstart","h":"#start-taskweaver","p":248},{"i":267,"t":"Prerequisites","u":"/TaskWeaver/docs/usage/docker","h":"#prerequisites","p":265},{"i":269,"t":"Run TaskWeaver using the All-in-One Docker Image","u":"/TaskWeaver/docs/usage/docker","h":"#run-taskweaver-using-the-all-in-one-docker-image","p":265},{"i":271,"t":"How to run TaskWeaver on your own project directory","u":"/TaskWeaver/docs/usage/docker","h":"#how-to-run-taskweaver-on-your-own-project-directory","p":265},{"i":273,"t":"How to access your local files in the container","u":"/TaskWeaver/docs/usage/docker","h":"#how-to-access-your-local-files-in-the-container","p":265}],"index":{"version":"2.3.9","fields":["t"],"fieldVectors":[["t/42",[0,5.446]],["t/43",[1,4.739]],["t/46",[2,3.987,3,2.358,4,3.129]],["t/48",[3,2.358,4,3.129,5,2.875]],["t/50",[3,2.358,4,3.129,6,2.875]],["t/54",[7,2.755]],["t/58",[8,2.76,9,1.431,10,2.76,11,3.516]],["t/60",[7,1.779,8,2.76,9,1.431,10,2.76]],["t/62",[8,2.76,9,1.431,10,2.76,12,3.516]],["t/66",[1,4.006,13,3.613]],["t/68",[7,2.017,13,3.129,14,3.987]],["t/70",[15,4.603,16,4.603]],["t/72",[13,3.613,17,3.613]],["t/76",[3,2.079,18,3.516,19,2.207,20,2.76]],["t/78",[3,2.079,7,1.779,19,2.207,20,2.76]],["t/80",[3,1.86,17,2.468,20,2.468,21,2.468,22,2.737]],["t/82",[19,2.502,23,3.987,24,3.129]],["t/84",[21,2.232,24,2.232,25,2.844,26,2.844,27,2.844,28,2.475]],["t/106",[7,2.329,29,3.613]],["t/108",[7,2.329,30,4.603]],["t/110",[7,2.329,31,4.603]],["t/112",[7,2.329,32,2.889]],["t/117",[9,1.874,33,2.035]],["t/119",[33,2.035,34,3.319]],["t/121",[33,2.035,35,3.613]],["t/125",[29,3.613,34,3.319]],["t/127",[34,3.319,36,4.603]],["t/130",[37,5.446]],["t/132",[38,4.603,39,4.006]],["t/134",[34,2.875,40,3.987,41,3.987]],["t/138",[35,3.129,42,3.987,43,3.47]],["t/140",[35,3.129,43,3.47,44,3.987]],["t/143",[32,2.889,33,2.035]],["t/145",[32,2.502,33,1.763,45,3.47]],["t/147",[33,2.035,46,4.603]],["t/149",[33,2.035,47,4.603]],["t/151",[33,2.035,48,4.603]],["t/153",[33,2.035,49,4.603]],["t/155",[33,2.035,50,4.603]],["t/157",[33,1.763,51,3.987,52,3.987]],["t/159",[17,2.76,33,1.554,53,3.06,54,2.76]],["t/161",[33,1.554,53,3.06,54,2.76,55,3.516]],["t/164",[56,1.671,57,3.145,58,3.145,59,2.737,60,3.145]],["t/166",[56,1.379,61,1.453,62,3.136,63,2.596,64,2.596,65,2.596]],["t/168",[29,1.615,56,1.093,59,1.791,62,1.615,66,1.292,67,1.615,68,2.058,69,2.058,70,1.615,71,2.058]],["t/170",[9,1.28,56,1.671,61,1.76,66,1.974,72,3.145]],["t/172",[9,1.431,56,1.868,61,1.967,66,2.207]],["t/174",[9,1.28,56,1.671,61,1.76,66,1.974,73,2.737]],["t/176",[9,1.623,56,2.118,74,3.987]],["t/178",[56,1.174,66,1.387,67,1.735,70,1.735,75,2.211,76,2.211,77,2.211,78,2.211,79,1.594]],["t/180",[56,0.856,61,0.902,62,1.265,66,1.012,67,1.265,70,1.265,79,1.162,80,1.612,81,1.612,82,1.612,83,1.403,84,1.612,85,1.612,86,1.612]],["t/183",[5,2.875,54,3.129,87,3.987]],["t/185",[5,2.875,88,3.987,89,3.987]],["t/211",[90,3.516,91,3.516,92,3.516,93,3.516]],["t/213",[94,4.603,95,4.603]],["t/219",[96,5.446]],["t/223",[3,2.358,6,2.875,97,3.987]],["t/225",[7,2.329,98,4.006]],["t/227",[9,1.874,73,4.006]],["t/230",[9,1.874,19,2.889]],["t/232",[6,2.875,9,1.623,19,2.502]],["t/234",[9,1.431,19,2.207,99,3.516,100,3.516]],["t/240",[9,1.874,101,4.603]],["t/242",[6,3.319,9,1.874]],["t/244",[102,4.603,103,4.603]],["t/246",[9,1.874,98,4.006]],["t/249",[104,5.446]],["t/251",[105,4.006,106,4.006]],["t/253",[7,2.329,32,2.889]],["t/255",[32,2.889,45,4.006]],["t/257",[32,3.418]],["t/259",[39,4.006,61,2.576]],["t/267",[107,5.446]],["t/269",[5,2.051,21,2.232,22,2.475,61,1.591,79,2.051,108,2.844]],["t/271",[61,1.967,79,2.535,105,3.06,106,3.06]],["t/273",[24,2.76,28,3.06,83,3.06,109,3.516]]],"invertedIndex":[["",{"_index":33,"t":{"117":{"position":[[0,3]]},"119":{"position":[[0,3]]},"121":{"position":[[0,3]]},"143":{"position":[[0,3]]},"145":{"position":[[0,3]]},"147":{"position":[[0,3]]},"149":{"position":[[0,3]]},"151":{"position":[[0,3]]},"153":{"position":[[0,3]]},"155":{"position":[[0,3]]},"157":{"position":[[0,3]]},"159":{"position":[[0,3]]},"161":{"position":[[0,3]]}}}],["0o0600",{"_index":86,"t":{"180":{"position":[[102,10]]}}}],["0o677",{"_index":84,"t":{"180":{"position":[[83,7]]}}}],["access",{"_index":28,"t":{"84":{"position":[[29,6]]},"273":{"position":[[7,6]]}}}],["ai",{"_index":52,"t":{"157":{"position":[[13,2]]}}}],["alreadi",{"_index":78,"t":{"178":{"position":[[65,7]]}}}],["api",{"_index":54,"t":{"159":{"position":[[19,3]]},"161":{"position":[[14,4]]},"183":{"position":[[6,3]]}}}],["assign",{"_index":81,"t":{"180":{"position":[[44,10]]}}}],["authent",{"_index":89,"t":{"185":{"position":[[12,14]]}}}],["auto",{"_index":8,"t":{"58":{"position":[[0,4]]},"60":{"position":[[0,4]]},"62":{"position":[[0,4]]}}}],["azur",{"_index":45,"t":{"145":{"position":[[4,5]]},"255":{"position":[[0,5]]}}}],["call",{"_index":73,"t":{"174":{"position":[[47,4]]},"227":{"position":[[0,4]]}}}],["code",{"_index":3,"t":{"46":{"position":[[15,4]]},"48":{"position":[[11,4]]},"50":{"position":[[7,4]]},"76":{"position":[[13,4]]},"78":{"position":[[21,4]]},"80":{"position":[[38,4]]},"223":{"position":[[21,4]]}}}],["codeinterpret",{"_index":36,"t":{"127":{"position":[[0,15]]}}}],["conclus",{"_index":96,"t":{"219":{"position":[[0,10]]}}}],["configur",{"_index":7,"t":{"54":{"position":[[0,14]]},"60":{"position":[[22,13]]},"68":{"position":[[23,13]]},"78":{"position":[[7,9]]},"106":{"position":[[8,13]]},"108":{"position":[[8,13]]},"110":{"position":[[10,13]]},"112":{"position":[[7,13]]},"225":{"position":[[0,9]]},"253":{"position":[[7,13]]}}}],["connect",{"_index":64,"t":{"166":{"position":[[52,7]]}}}],["contain",{"_index":24,"t":{"82":{"position":[[19,9]]},"84":{"position":[[47,10]]},"273":{"position":[[38,9]]}}}],["convers",{"_index":92,"t":{"211":{"position":[[10,12]]}}}],["creat",{"_index":42,"t":{"138":{"position":[[0,6]]}}}],["custom",{"_index":17,"t":{"72":{"position":[[7,9]]},"80":{"position":[[7,9]]},"159":{"position":[[4,10]]}}}],["debug",{"_index":74,"t":{"176":{"position":[[10,5]]}}}],["demo",{"_index":0,"t":{"42":{"position":[[0,4]]}}}],["directori",{"_index":106,"t":{"251":{"position":[[8,9]]},"271":{"position":[[42,9]]}}}],["docker",{"_index":21,"t":{"80":{"position":[[21,6]]},"84":{"position":[[40,6]]},"269":{"position":[[36,6]]}}}],["docker.daemon",{"_index":65,"t":{"166":{"position":[[63,15]]}}}],["embed",{"_index":31,"t":{"110":{"position":[[0,9]]}}}],["enabl",{"_index":1,"t":{"43":{"position":[[7,6]]},"66":{"position":[[7,6]]}}}],["entra",{"_index":88,"t":{"185":{"position":[[6,5]]}}}],["error",{"_index":67,"t":{"168":{"position":[[13,6]]},"178":{"position":[[17,5]]},"180":{"position":[[17,5]]}}}],["event",{"_index":76,"t":{"178":{"position":[[51,5]]}}}],["exampl",{"_index":34,"t":{"119":{"position":[[4,7]]},"125":{"position":[[8,8]]},"127":{"position":[[16,8]]},"134":{"position":[[15,7]]}}}],["execut",{"_index":20,"t":{"76":{"position":[[18,9]]},"78":{"position":[[26,9]]},"80":{"position":[[43,9]]}}}],["experi",{"_index":35,"t":{"121":{"position":[[4,10]]},"138":{"position":[[21,10]]},"140":{"position":[[21,10]]}}}],["extern",{"_index":26,"t":{"84":{"position":[[12,8]]}}}],["fail",{"_index":62,"t":{"166":{"position":[[18,5],[41,7]]},"168":{"position":[[39,6]]},"180":{"position":[[55,6]]}}}],["field",{"_index":71,"t":{"168":{"position":[[88,7]]}}}],["file",{"_index":83,"t":{"180":{"position":[[73,5]]},"273":{"position":[[25,5]]}}}],["gemini",{"_index":48,"t":{"151":{"position":[[4,6]]}}}],["gener",{"_index":59,"t":{"164":{"position":[[27,8]]},"168":{"position":[[49,8]]}}}],["glm",{"_index":50,"t":{"155":{"position":[[4,3]]}}}],["handcraft",{"_index":43,"t":{"138":{"position":[[9,11]]},"140":{"position":[[9,11]]}}}],["histori",{"_index":93,"t":{"211":{"position":[[23,7]]}}}],["imag",{"_index":22,"t":{"80":{"position":[[28,5]]},"269":{"position":[[43,5]]}}}],["implement",{"_index":6,"t":{"50":{"position":[[25,12]]},"223":{"position":[[0,9]]},"232":{"position":[[28,12]]},"242":{"position":[[7,14]]}}}],["import",{"_index":102,"t":{"244":{"position":[[0,9]]}}}],["infrastructur",{"_index":14,"t":{"68":{"position":[[8,14]]}}}],["instal",{"_index":104,"t":{"249":{"position":[[0,12]]}}}],["instead",{"_index":85,"t":{"180":{"position":[[91,7]]}}}],["key",{"_index":87,"t":{"183":{"position":[[10,3]]}}}],["keyword",{"_index":51,"t":{"157":{"position":[[4,8]]}}}],["know",{"_index":72,"t":{"170":{"position":[[12,4]]}}}],["limit",{"_index":23,"t":{"82":{"position":[[0,11]]}}}],["litellm",{"_index":46,"t":{"147":{"position":[[4,7]]}}}],["llm",{"_index":53,"t":{"159":{"position":[[15,3]]},"161":{"position":[[10,3]]}}}],["load",{"_index":44,"t":{"140":{"position":[[0,4]]}}}],["local",{"_index":109,"t":{"273":{"position":[[19,5]]}}}],["log",{"_index":63,"t":{"166":{"position":[[32,4]]}}}],["long",{"_index":58,"t":{"164":{"position":[[19,4]]}}}],["loop",{"_index":77,"t":{"178":{"position":[[57,4]]}}}],["memori",{"_index":95,"t":{"213":{"position":[[7,6]]}}}],["messag",{"_index":70,"t":{"168":{"position":[[71,7]]},"178":{"position":[[23,7]]},"180":{"position":[[23,7]]}}}],["metric",{"_index":16,"t":{"70":{"position":[[16,7]]}}}],["mode",{"_index":19,"t":{"76":{"position":[[4,5]]},"78":{"position":[[36,4]]},"82":{"position":[[29,4]]},"230":{"position":[[24,5]]},"232":{"position":[[23,4]]},"234":{"position":[[37,5]]}}}],["model",{"_index":99,"t":{"234":{"position":[[6,6]]}}}],["motiv",{"_index":37,"t":{"130":{"position":[[0,10]]}}}],["multi",{"_index":55,"t":{"161":{"position":[[4,5]]}}}],["need",{"_index":2,"t":{"46":{"position":[[10,4]]}}}],["network",{"_index":27,"t":{"84":{"position":[[21,7]]}}}],["note",{"_index":103,"t":{"244":{"position":[[10,5]]}}}],["ollama",{"_index":47,"t":{"149":{"position":[[4,6]]}}}],["on",{"_index":108,"t":{"269":{"position":[[32,3]]}}}],["openai",{"_index":32,"t":{"112":{"position":[[0,6]]},"143":{"position":[[4,6]]},"145":{"position":[[10,6]]},"253":{"position":[[0,6]]},"255":{"position":[[6,6]]},"257":{"position":[[0,6]]}}}],["output",{"_index":60,"t":{"164":{"position":[[40,7]]}}}],["overview",{"_index":11,"t":{"58":{"position":[[22,8]]}}}],["permiss",{"_index":80,"t":{"180":{"position":[[31,12]]}}}],["planner",{"_index":29,"t":{"106":{"position":[[0,7]]},"125":{"position":[[0,7]]},"168":{"position":[[31,7]]}}}],["plugin",{"_index":9,"t":{"58":{"position":[[5,6]]},"60":{"position":[[5,6]]},"62":{"position":[[5,6]]},"117":{"position":[[4,6]]},"170":{"position":[[42,7]]},"172":{"position":[[32,7]]},"174":{"position":[[29,6]]},"176":{"position":[[19,7]]},"227":{"position":[[9,6]]},"230":{"position":[[12,6]]},"232":{"position":[[11,6]]},"234":{"position":[[25,6]]},"240":{"position":[[0,6]]},"242":{"position":[[0,6]]},"246":{"position":[[0,6]]}}}],["prepar",{"_index":12,"t":{"62":{"position":[[22,11]]}}}],["prerequisit",{"_index":107,"t":{"267":{"position":[[0,13]]}}}],["project",{"_index":105,"t":{"251":{"position":[[0,7]]},"271":{"position":[[34,7]]}}}],["python",{"_index":97,"t":{"223":{"position":[[14,6]]}}}],["q",{"_index":56,"t":{"164":{"position":[[0,2]]},"166":{"position":[[0,2]]},"168":{"position":[[0,2]]},"170":{"position":[[0,2]]},"172":{"position":[[0,2]]},"174":{"position":[[0,2]]},"176":{"position":[[0,2]]},"178":{"position":[[0,2]]},"180":{"position":[[0,2]]}}}],["quick",{"_index":38,"t":{"132":{"position":[[0,5]]}}}],["qwen",{"_index":49,"t":{"153":{"position":[[4,4]]}}}],["restrict",{"_index":25,"t":{"84":{"position":[[0,11]]}}}],["role",{"_index":90,"t":{"211":{"position":[[0,4]]}}}],["run",{"_index":79,"t":{"178":{"position":[[73,9]]},"180":{"position":[[118,7]]},"269":{"position":[[0,3]]},"271":{"position":[[7,3]]}}}],["runtimeerror",{"_index":75,"t":{"178":{"position":[[31,14]]}}}],["say",{"_index":68,"t":{"168":{"position":[[20,6]]}}}],["schema",{"_index":98,"t":{"225":{"position":[[14,6]]},"246":{"position":[[7,6]]}}}],["secur",{"_index":82,"t":{"180":{"position":[[66,6]]}}}],["see",{"_index":66,"t":{"168":{"position":[[9,3]]},"170":{"position":[[35,3]]},"172":{"position":[[25,3]]},"174":{"position":[[22,3]]},"178":{"position":[[9,3]]},"180":{"position":[[9,3]]}}}],["select",{"_index":10,"t":{"58":{"position":[[12,9]]},"60":{"position":[[12,9]]},"62":{"position":[[12,9]]}}}],["send_to",{"_index":69,"t":{"168":{"position":[[62,8]]}}}],["session",{"_index":30,"t":{"108":{"position":[[0,7]]}}}],["share",{"_index":94,"t":{"213":{"position":[[0,6]]}}}],["start",{"_index":39,"t":{"132":{"position":[[6,5]]},"259":{"position":[[0,5]]}}}],["structur",{"_index":101,"t":{"240":{"position":[[7,9]]}}}],["support",{"_index":100,"t":{"234":{"position":[[13,7]]}}}],["take",{"_index":57,"t":{"164":{"position":[[10,5]]}}}],["taskweav",{"_index":61,"t":{"166":{"position":[[7,10]]},"170":{"position":[[20,10]]},"172":{"position":[[7,10]]},"174":{"position":[[7,10]]},"180":{"position":[[126,11]]},"259":{"position":[[6,10]]},"269":{"position":[[4,10]]},"271":{"position":[[11,10]]}}}],["through",{"_index":41,"t":{"134":{"position":[[7,7]]}}}],["trace",{"_index":13,"t":{"66":{"position":[[14,7]]},"68":{"position":[[0,7]]},"72":{"position":[[17,7]]}}}],["two",{"_index":18,"t":{"76":{"position":[[0,3]]}}}],["us",{"_index":5,"t":{"48":{"position":[[7,3]]},"183":{"position":[[0,5]]},"185":{"position":[[0,5]]},"269":{"position":[[15,5]]}}}],["verif",{"_index":4,"t":{"46":{"position":[[20,13]]},"48":{"position":[[16,13]]},"50":{"position":[[12,12]]}}}],["view",{"_index":15,"t":{"70":{"position":[[7,4]]}}}],["walk",{"_index":40,"t":{"134":{"position":[[2,4]]}}}],["wise",{"_index":91,"t":{"211":{"position":[[5,4]]}}}]],"pipeline":["stemmer"]}},{"documents":[{"i":40,"t":"TaskWeaver's CLI-only mode enables users to effortlessly communicate with the Command Line Interface (CLI) using natural language.","s":"CLI Only Mode","u":"/TaskWeaver/docs/advanced/cli_only","p":40},{"i":45,"t":"Code Verification","s":"Code Verification","u":"/TaskWeaver/docs/advanced/code_verification","p":45},{"i":52,"t":"After chatting for a few rounds, the chat history can become quite long, especially when we have code and execution results in it.","s":"Prompt Compression","u":"/TaskWeaver/docs/advanced/compression","p":52},{"i":56,"t":"In TaskWeaver, we provide an auto plugin selection mechanism to dynamically select the best plugin for each user request.","s":"Auto Plugin Selection","u":"/TaskWeaver/docs/advanced/plugin_selection","p":56},{"i":64,"t":"TaskWeaver now supports tracing with OpenTelemetry,","s":"Telemetry","u":"/TaskWeaver/docs/advanced/telemetry","p":64},{"i":74,"t":"💡We have set the container mode as default for code execution, especially when the usage of the agent","s":"Code Execution","u":"/TaskWeaver/docs/code_execution","p":74},{"i":86,"t":"The TaskWeaverApp is the main class of the TaskWeaver library. It is the entry point for the library and is used to create and run tasks.","s":"Application","u":"/TaskWeaver/docs/concepts/app","p":86},{"i":88,"t":"Plugins are the user-defined functions that extend TaskWeaver CodeInterpreter's capabilities.","s":"Plugin","u":"/TaskWeaver/docs/concepts/plugin","p":88},{"i":90,"t":"An attachment is a data concept in TaskWeaver which contains additional data other than the text message in the post.","s":"Attachment","u":"/TaskWeaver/docs/concepts/attachment","p":90},{"i":92,"t":"A conversation is a data concept in TaskWeaver which contains a dialog between the user and the TaskWeaver app.","s":"Conversation","u":"/TaskWeaver/docs/concepts/conversation","p":92},{"i":94,"t":"A project folder is a directory that stores the configuration files, plugins, examples, logs, and workspace data.","s":"Project","u":"/TaskWeaver/docs/concepts/project","p":94},{"i":96,"t":"The post is a data concept in TaskWeaver which contains a single message in the conversation.","s":"Post","u":"/TaskWeaver/docs/concepts/post","p":96},{"i":98,"t":"The role is a concept in TaskWeaver which represents the different roles in the conversation system.","s":"Role","u":"/TaskWeaver/docs/concepts/role","p":98},{"i":100,"t":"A round is a data concept in TaskWeaver which contains a single round of chat between the user and the TaskWeaver app.","s":"Round","u":"/TaskWeaver/docs/concepts/round","p":100},{"i":102,"t":"A session is a conversation instance that the user has with the TaskWeaver app.","s":"Session","u":"/TaskWeaver/docs/concepts/session","p":102},{"i":104,"t":"More details about important configurations.","s":"More about Configurations","u":"/TaskWeaver/docs/configurations/configurations_in_detail","p":104},{"i":114,"t":"An overview of all configurations available in the config file, which is located at project/taskweaver_config.json.","s":"Configuration File","u":"/TaskWeaver/docs/configurations/overview","p":114},{"i":116,"t":"Learn how to customize TaskWeaver","s":"","u":"/TaskWeaver/docs/customization/","p":116},{"i":123,"t":"There are currently two types of examples: (1) Planner examples and (2) CodeInterpreter examples.","s":"Customizing Examples","u":"/TaskWeaver/docs/customization/example/","p":123},{"i":129,"t":"Motivation","s":"Experience","u":"/TaskWeaver/docs/customization/experience/","p":129},{"i":136,"t":"We have introduced the motivation of the experience module in Experience.","s":"Handcrafted Experience","u":"/TaskWeaver/docs/customization/experience/handcrafted_experience","p":136},{"i":142,"t":"Learn how to call models from different LLMs","s":"","u":"/TaskWeaver/docs/llms/","p":142},{"i":163,"t":"Q: Why it takes so long to generate the output?","s":"FAQ","u":"/TaskWeaver/docs/FAQ","p":163},{"i":182,"t":"Using LLMs from OpenAI/AOAI","s":"Azure OpenAI","u":"/TaskWeaver/docs/llms/aoai","p":182},{"i":187,"t":"1. Create an account on Google AI and get your API key.","s":"Gemini","u":"/TaskWeaver/docs/llms/gemini","p":187},{"i":189,"t":"Using LLMs from Anthropic (Claude)","s":"Anthropic (Claude)","u":"/TaskWeaver/docs/llms/anthropic","p":189},{"i":191,"t":"1. GLM (ChatGLM) is a LLM developed by Zhipu AI and Tsinghua KEG. Go to ZhipuAI and register an account and get the API key. More details can be found here.","s":"GLM","u":"/TaskWeaver/docs/llms/glm","p":191},{"i":193,"t":"We welcome developers to use your customized LLM API in TaskWeaver.","s":"Customized LLM API","u":"/TaskWeaver/docs/llms/customized_llm_api","p":193},{"i":195,"t":"1. Groq was founded in 2016 by Chief Executive Officer Jonathan Ross, a former Google LLC engineer who invented the search giant's TPU machine learning processors. Go to Groq and register an account and get the API key from here. More details can be found here.","s":"GroqChat","u":"/TaskWeaver/docs/llms/groq","p":195},{"i":197,"t":"Using LLMs from Keywords AI and have better observability.","s":"Keywords AI","u":"/TaskWeaver/docs/llms/Keywords-AI","p":197},{"i":199,"t":"Using LLMs from LiteLLM","s":"LiteLLM","u":"/TaskWeaver/docs/llms/liteLLM","p":199},{"i":201,"t":"In some cases, you may want to use different LLMs for different components.","s":"Multi LLM APIs","u":"/TaskWeaver/docs/llms/multi-llm","p":201},{"i":203,"t":"1. Go to Ollama and follow the instructions to serve a LLM model on your local environment.","s":"Ollama","u":"/TaskWeaver/docs/llms/ollama","p":203},{"i":205,"t":"1. QWen (Tongyi Qianwen) is a LLM developed by Alibaba. Go to QWen and register an account and get the API key. More details can be found here (in Chinese).","s":"QWen","u":"/TaskWeaver/docs/llms/qwen","p":205},{"i":207,"t":"Using LLMs from OpenAI","s":"OpenAI","u":"/TaskWeaver/docs/llms/openai","p":207},{"i":209,"t":"The primary purpose of the memory module is to store the information that is required to maintain the context of the conversation.","s":"Memory","u":"/TaskWeaver/docs/memory","p":209},{"i":215,"t":">> [INIT_PLAN] 1. search xbox price 2. report the result to the user >>> [PLAN] 1. instruct CodeInterpreter to search xbox price 2. report the result to the user >>> [CURRENT_PLAN_STEP] 1. instruct CodeInterpreter to search xbox price >>> [SEND_TO] CodeInterpreter >>> [MESSAGE] Please search xbox price >>> [PLANNER->CODEINTERPRETER] Please search xbox price Back to the Code Interpreter, the auto plugin selection mechanism is triggered. We can check the log file task_weaver.log again to see the auto plugin selector selected the top-3 plugins with the highest cosine similarity scores. 023-12-18 14:24:34,513 - INFO - Planner talk to CodeInterpreter: Please search xbox price using klarna_search plugin 2023-12-18 14:24:34,669 - INFO - Selected plugins: ['klarna_search', 'sql_pull_data', 'paper_summary'] 2023-12-18 14:24:34,669 - INFO - Selected plugin pool: ['klarna_search', 'sql_pull_data', 'paper_summary'] Then the Code Interpreter will generate the code using the selected plugins. >>> [THOUGHT] ProgramApe will call the klarna_search plugin function to search for Xbox prices. >>> [PYTHON] search_results, description = klarna_search(query=\"xbox\") search_results, description >>> [VERIFICATION] NONE >>> [STATUS] SUCCESS >>> [RESULT] The execution of the generated python code above has succeeded The result of above Python code after execution is: ( name price url attributes 0 Microsoft Xbox Series X - Black Edition $399.00 https://www.klarna.com/us/shopping/pl/cl52/495... [Release Year:2020, Included Accessories:1 gam... 1 Microsoft Xbox Series S 1TB - Black $349.00 https://www.klarna.com/us/shopping/pl/cl52/320... [Included Accessories:1 gamepad, Media Type:DV... .. ... ... ... ... 3 Xbox Series S – Starter Bundle $239.00 https://www.klarna.com/us/shopping/pl/cl52/320... [Platform:Xbox One] 4 Microsoft Xbox Series X 1TB Console - Diablo I... $385.58 https://www.klarna.com/us/shopping/pl/cl52/320... [Release Year:2023, Included Accessories:1 gam... [5 rows x 4 columns], 'The response is a dataframe with the following columns: name, price, url, attributes. The attributes column is a list of tags. The price is in the format of $xx.xx.') >>> [CODEINTERPRETER->PLANNER] The following python code has been executed: ```python search_results, description = klarna_search(query=\"xbox\") search_results, description ``` The execution of the generated python code above has succeeded The result of above Python code after execution is: ( name price url attributes 0 Microsoft Xbox Series X - Black Edition $399.00 https://www.klarna.com/us/shopping/pl/cl52/495... [Release Year:2020, Included Accessories:1 gam... 1 Microsoft Xbox Series S 1TB - Black $349.00 https://www.klarna.com/us/shopping/pl/cl52/320... [Included Accessories:1 gamepad, Media Type:DV... .. ... ... ... ... 3 Xbox Series S – Starter Bundle $239.00 https://www.klarna.com/us/shopping/pl/cl52/320... [Platform:Xbox One] 4 Microsoft Xbox Series X 1TB Console - Diablo I... $385.58 https://www.klarna.com/us/shopping/pl/cl52/320... [Release Year:2023, Included Accessories:1 gam... [5 rows x 4 columns], 'The response is a dataframe with the following columns: name, price, url, attributes. The attributes column is a list of tags. The price is in the format of $xx.xx.') Finally, the Planner will report the result to the user. >>> [INIT_PLAN] 1. search xbox price using klarna_search plugin 2. report the result to the user >>> [PLAN] 1. instruct CodeInterpreter to search xbox price using klarna_search plugin 2. report the result to the user >>> [CURRENT_PLAN_STEP] 2. report the result to the user >>> [SEND_TO] User >>> [MESSAGE] Here are some Xbox prices I found: 1. Microsoft Xbox Series X - Black Edition: $399.00 2. Microsoft Xbox Series S 1TB - Black: $349.00 3. Xbox Series S – Starter Bundle: $239.00 4. Microsoft Xbox Series X 1TB Console - Diablo Immortal Edition: $385.58 Please note that these prices are subject to change and availability. >>> [PLANNER->USER] Here are some Xbox prices I found: 1. Microsoft Xbox Series X - Black Edition: $399.00 2. Microsoft Xbox Series S 1TB - Black: $349.00 3. Xbox Series S – Starter Bundle: $239.00 4. Microsoft Xbox Series X 1TB Console - Diablo Immortal Edition: $385.58 Please note that these prices are subject to change and availability. TaskWeaver: Here are some Xbox prices I found: 1. Microsoft Xbox Series X - Black Edition: $399.00 2. Microsoft Xbox Series S 1TB - Black: $349.00 3. Xbox Series S – Starter Bundle: $239.00 4. Microsoft Xbox Series X 1TB Console - Diablo Immortal Edition: $385.58 Please note that these prices are subject to change and availability.","s":"Auto Plugin Selection Preparation","u":"/TaskWeaver/docs/advanced/plugin_selection","h":"#auto-plugin-selection-preparation","p":56},{"i":65,"t":"TaskWeaver now supports tracing with OpenTelemetry, which is one of the most popular open-source observability frameworks. This allows you to trace the following: Interactions between roles, i.e., the Planner, the CodeInterpreter, and the Executor. The time consumed by each role and major components of TaskWeaver. The prompts sent to the LLM and the responses received from the LLM. The status of the tasks and the errors encountered. The number of tokens consumed by each role. The following screenshot shows a trace of a simple task: analyzing an uploaded file. From this view, you can see the timeline of the task execution, which breaks majorly into three parts: The planning phase, where the Planner decides the sub-tasks to be executed. The code generation and execution phase, where the CodeGenerator generates the code and the CodeExecutor executes it. The reply phase, where the Planner sends the reply to the user. The bars with a black line represent the critical path of the task execution, which is the longest path through the task execution. This is useful for identifying the bottleneck of the task execution. We can clearly see that, currently, the task execution is dominated by the calls to the LLM. We can click the span (a unit of work in the trace) to see the details of the span, including the logs and the attributes. The screenshot below shows the details of the span of Planner's reply function: From this view, we can see the user query, the prompt sent to the LLM, and the tokens consumed (prompt_size and output_size) by the LLM. We also recorded the generated code, the posts between different roles, etc. in the trace. There are also views of the trace, for example the call graph view, which shows the call hierarchy of the spans. Here is the call graph of the trace:","s":"Telemetry","u":"/TaskWeaver/docs/advanced/telemetry","h":"","p":64},{"i":67,"t":"Tracing is by default disabled. To enable tracing, you need to install packages required by OpenTelemetry. Please check the OpenTelemetry website for the installation guide. It basically requires you to install the opentelemetry-api, opentelemetry-sdk, opentelemetry-exporter-otlp, opentelemetry-instrumentation and tiktoken packages. To count the number of tokens consumed during task execution, you also need to install the tiktoken package. We now only support the tokenizers of the OpenAI models. After installing the packages, you can enable tracing by setting the tracing.enabled=true in the project configuration file. The default tokenizer target model is gpt-4, if you want to use another model, you can set the tracing.tokenizer_target_model in the project configuration file. You can find the available models in the tiktoken code. A typical configuration for tracing in the project configuration file is as follows: { \"tracing.enabled\": true, \"tracing.exporter\": \"otlp\", \"tracing.endpoint\": \"http://127.0.0.1:4317\", \"tracing.tokenizer_target_model\": \"gpt-4\" } Next, we need to set up the infrastructure for tracing. The following diagram shows the architecture of a toy tracing system. It is a toy system and the data is not persisted. In a real-world scenario, you need to set up a more robust system. The instrumentation in the TaskWeaver code will send the traces and metrics to the OpenTelemetry collector. An OpenTelemetry collector is a component that receives traces and metrics from the instrumentation, does some processing, and exports them to another collector or a backend. In our case, we configure the collector to export the traces to a Jaeger backend and the metrics to a Prometheus backend. You can run the following command to set up the infrastructure: cd /TaskWeaver/tracing docker-compose up You shall see a bunch of logs from the containers. Take a look at the logs to see if there are any errors. If no errors are found, you can access the Prometheus frontend at http://localhost:9090 and the Jaeger frontend at http://localhost:16686. In this setup, we assume you are running the containers on the same machine of TaskWeaver. If you are running the containers on different machines, you need to configure the endpoint of the OpenTelemetry collector in the TaskWeaver configuration file. The default endpoint is http://127.0.0.1:4317, you can set the tracing.endpoint in the project configuration file to change the endpoint address.","s":"How to enable tracing","u":"/TaskWeaver/docs/advanced/telemetry","h":"#how-to-enable-tracing","p":64},{"i":69,"t":"Both Jaeger and Prometheus are popular open-source monitoring systems. We have prepared a docker-compose file to set up the infrastructure in /TaskWeaver/tracing_configure/docker-compose.yaml. The content of the file is as follows: version: '3' services: optl-collector: image: otel/opentelemetry-collector:0.96.0 command: [\"--config=/etc/collector-config.yaml\"] volumes: - ./collector-config.yaml:/etc/collector-config.yaml ports: - \"4317:4317\" # Expose the gRPC receiver port for the collector depends_on: - jaeger jaeger: image: jaegertracing/all-in-one:1.54 ports: - \"16686:16686\" # Jaeger UI prometheus: image: prom/prometheus:latest ports: - \"9090:9090\" # Prometheus UI volumes: - ./prometheus-config.yml:/etc/prometheus/prometheus.yml command: [\"--config.file=/etc/prometheus/prometheus.yml\"] depends_on: - optl-collector If you read the file, you can see that we use the otl/opentelemetry-collector image to set up the OpenTelemetry collector, We only expose the gRPC receiver port for the collector, which is 4317. The collector configuration file is collector-config.yaml, which is mounted to the container. The configuration file is as follows: receivers: otlp: protocols: grpc: endpoint: 0.0.0.0:4317 http: endpoint: 0.0.0.0:4318 exporters: debug: verbosity: detailed otlp: endpoint: \"jaeger:4317\" tls: insecure: true prometheus: endpoint: \"0.0.0.0:9464\" service: pipelines: traces: receivers: [otlp] exporters: [otlp] metrics: receivers: [otlp] exporters: [prometheus] logs: receivers: [otlp] exporters: [debug] Because Jaeger is compatible with the OpenTelemetry collector, we can export the traces to Jaeger by setting the otlp exporter. We also export the metrics to Prometheus by setting the prometheus exporter. The prometheus-config.yml file is the configuration file for Prometheus, which is as follows: scrape_configs: - job_name: optl-collector scrape_interval: 5s static_configs: - targets: [\"optl-collector:9464\"] We only scrape the metrics from the OpenTelemetry collector.","s":"Tracing Infrastructure Configuration","u":"/TaskWeaver/docs/advanced/telemetry","h":"#tracing-infrastructure-configuration","p":64},{"i":71,"t":"In the first section, we have explained how to view the traces in the Jaeger frontend. Viewing the metrics in the Prometheus frontend is more complicated as each metric is a time series. A time series is a sequence of data points, which are usually timestamped. OpenTelemetry allows to add attributes to the metrics, so that you can filter the metrics by the attributes. In our current implementation, we only have one metric called prompt_size which records the size of the prompt sent to the LLM. In Prometheus, you should be able to see a time series for the prompt_size metric, namely prompt_size_total. prompt_size_total is the accumulated prompt size of all the traces which increases monotonically. We annotate the traces with the only one attribute called direction, which can be either input or output. They are indicating the input prompt size and the LLM response output size, respectively. You can query the metrics in the Prometheus frontend. The query language is called PromQL which is quite powerful. You can refer to the Prometheus documentation for the details of the query language. The query for the above chart is increase(prompt_size_total[10m]), which means to show the increase of the token consumption in the last 10 minutes sliding window. If you want to use Grafana to visualize the metrics, you can set up a Grafana instance and add Prometheus as the data source. This can be done by appending the following content to the docker-compose.yaml file: grafana: image: grafana/grafana-enterprise:latest ports: - \"3000:3000\" # Grafana UI environment: - GF_SECURITY_ADMIN_PASSWORD=secret # You should change 'secret' to a password of your choosing - GF_USERS_ALLOW_SIGN_UP=false volumes: - grafana_data:/var/lib/grafana depends_on: - prometheus volumes: grafana_data:","s":"How to view the metrics","u":"/TaskWeaver/docs/advanced/telemetry","h":"#how-to-view-the-metrics","p":64},{"i":73,"t":"The instrumentation of TaskWeaver is done by the OpenTelemetry Python SDK. So, if you want to customize the tracing, you need to modify the TaskWeaver code. In TaskWeaver, we add a layer of abstraction to the OpenTelemetry SDK, so that it is easier to hide the details of the OpenTelemetry SDK from the TaskWeaver code. You can find the abstraction layer in the taskweaver.module.tracing module. In the taskweaver.module.tracing module, we define the Tracing class, which is a wrapper of the OpenTelemetry SDK. The Tracing class provides the following methods: set_span_status: Set the status of the span. set_span_attribute: Set the attribute of the span. set_span_exception: Set the exception of the span. add_prompt_size: Add the prompt size to the span. In addition, we define the decorator tracing_decorator (or the non-class version tracing_decorator_non_class) to trace the function calls. When you need to create a context for tracing, you can use with get_tracer().start_as_current_span(\"span_name\") as span: # your code When you need to trace a function, you can use @tracing_decorator def your_function(self, *args, **kwargs): # your code","s":"How to customize tracing","u":"/TaskWeaver/docs/advanced/telemetry","h":"#how-to-customize-tracing","p":64},{"i":75,"t":"💡We have set the container mode as default for code execution, especially when the usage of the agent is open to untrusted users. Refer to Docker Security for better understanding of the security features of Docker. To opt for the local mode, you need to explicitly set the execution_service.kernel_mode parameter in the taskweaver_config.json file to local. TaskWeaver is a code-first agent framework, which means that it always converts the user request into code and executes the code to generate the response. In our current implementation, we use a Jupyter Kernel to execute the code. We choose Jupyter Kernel because it is a well-established tool for interactive computing, and it supports many programming languages.","s":"Code Execution","u":"/TaskWeaver/docs/code_execution","h":"","p":74},{"i":77,"t":"TaskWeaver supports two modes of code execution: local and container. The container mode is the default mode. The key difference between the two modes is that the container mode executes the code inside a Docker container, which provides a more secure environment for code execution, while the local mode executes the code as a subprocess of the TaskWeaver process. As a result, in the local mode, if the user has malicious intent, the user could potentially instruct TaskWeaver to execute harmful code on the host machine. In addition, the LLM could also generate harmful code, leading to potential security risks. danger Please be cautious when using the local mode, especially when the usage of the agent is open to untrusted users.","s":"Two Modes of Code Execution","u":"/TaskWeaver/docs/code_execution","h":"#two-modes-of-code-execution","p":74},{"i":79,"t":"To configure the code execution mode, you need to set the execution_service.kernel_mode parameter in the taskweaver_config.json file. The value of the parameter could be local or container. The default value is container. TaskWeaver supports the local mode without any additional setup. However, to use the container mode, there are a few prerequisites: Docker is installed on the host machine. A Docker image is built and available on the host machine for code execution. The execution_service.kernel_mode parameter is set to container in the taskweaver_config.json file. Once the code repository is cloned to your local machine, you can build the Docker image by running the following command in the root directory of the code repository: cd scripts # based on your OS ./build_executor.ps1 # for Windows ./build_executor.sh # for Linux or macOS After the Docker image is built, you can run docker images to check if a Docker image named taskweavercontainers/taskweaver-executor is available. If the prerequisite is met, you can now run TaskWeaver in the container mode. After running TaskWeaver in the container mode, you can check if the container is running by running docker ps. You should see a container of image taskweavercontainers/taskweaver-executor running after executing some code.","s":"How to Configure the Code Execution Mode","u":"/TaskWeaver/docs/code_execution","h":"#how-to-configure-the-code-execution-mode","p":74},{"i":81,"t":"You may want to customize the Docker image for code execution to include additional packages or libraries, especially for your developed plugins. The current Docker image for code execution only includes the dependencies specified in the TaskWeaver/requirements.txt file. To customize the Docker image, you need to modify the Dockerfile at TaskWeaver/docker/ces_container/Dockerfile and rebuild the Docker image. When you open the Dockerfile, you will see the following content, and you can add additional packages or libraries by adding the corresponding RUN command. In this example, we add the sentence-transformers package to the Docker image. FROM python:3.10-slim ... # TODO: Install additional packages for plugins RUN pip install --no-cache-dir --no-warn-script-location --user sentence-transformers ... Then, you need to rebuild the Docker image by running the build_executor.sh script at TaskWeaver/scripts/build_executor.sh or TaskWeaver/scripts/build.ps1 depending on your operating system. cd TaskWeaver/scripts ./build_executor.sh # or ./build_executor.ps1 if you are using Windows If you have successfully rebuilt the Docker image, you can check the new image by running docker images. After building the Docker image, you need to restart the TaskWeaver agent to use the new Docker image.","s":"How to customize the Docker image for code execution","u":"/TaskWeaver/docs/code_execution","h":"#how-to-customize-the-docker-image-for-code-execution","p":74},{"i":83,"t":"The container mode is more secure than the local mode, but it also has some limitations: The startup time of the container mode is longer than the local mode, because it needs to start a Docker container. As the Jupyter Kernel is running inside a Docker container, it has limited access to the host machine. We are mapping the project/workspace/sessions/ directory to the container, so the code executed in the container can access the files in it. One implication of this is that the user cannot ask the agent to load a file from the host machine, because the file is not available in the container. Instead, the user needs to upload the file either using the /upload command in the console or the upload button in the web interface. We have installed required packages in the Docker image to run the Jupyter Kernel. If the user needs to use a package that is not available in the Docker image, the user needs to add the package to the Dockerfile (at TaskWeaver/ces_container/Dockerfile) and rebuild the Docker image.","s":"Limitations of the container Mode","u":"/TaskWeaver/docs/code_execution","h":"#limitations-of-the-container-mode","p":74},{"i":85,"t":"In some cases, the agent developer may want to restrict the Docker container's access to the external network, e.g., the internet. In other words, the agent developer only wants to run the code in the container but does not allow either the plugins or the generated code to access the internet. The following approach is a common way to restrict a Docker container's access to the internet while still allowing inbound connections on specific ports: Creating a Docker network with enable_ip_masquerade set to false: By default, Docker uses IP masquerading (a form of network address translation or NAT) to allow containers to communicate with external networks with the source IP address being the host IP address. When you set enable_ip_masquerade to false for a custom Docker network, you prevent containers on that network from having their IP addresses masqueraded, effectively blocking them from accessing the internet. To create such a network in Docker, you would use the following command: docker network create --opt com.docker.network.bridge.enable_ip_masquerade=false my_non_internet_network Any container connected to my_non_internet_network will not have internet access due to the disabled IP masquerade. Now, you can run docker network inspect my_non_internet_network and you will see an output similar to the following: \"Config\": [ { \"Subnet\": \"172.19.0.0/16\", \"Gateway\": \"172.19.0.1\" } ] This shows the subnet of the docker network, all containers connected to this network will have an IP address in this subnet. Establishing a rule on the host's firewall or using iptables: This step is about setting up rules to block outgoing traffic from the Docker network's subnet to any external addresses. This adds an additional layer of security to ensure that even if IP masquerade is somehow enabled or if the container finds another route, the traffic will still be blocked. On a Linux host using iptables, you might add a rule like this: iptables -I FORWARD -s -j DROP Replace with the actual subnet used by your Docker network. In the previous example, the subnet is 172.19.0.0/16. This rule drops all forwarding traffic from that subnet. On a Windows host, you would create a similar rule within the Windows Firewall to block outgoing traffic from the Docker network's subnet. Keep in mind that this approach can be considered good practice if you understand the implications and have a specific need to isolate your container from the internet. However, it could also complicate network troubleshooting and container communication if not managed properly. Always ensure you are testing these configurations in a safe environment before applying them to production systems.","s":"Restricting External Network Access for Docker Containers","u":"/TaskWeaver/docs/code_execution","h":"#restricting-external-network-access-for-docker-containers","p":74},{"i":87,"t":"The TaskWeaverApp is the main class of the TaskWeaver library. It is the entry point for the library and is used to create and run tasks. A TaskWeaverApp instance is created by calling the TaskWeaverApp.__init__ constructor. class TaskWeaverApp(object): def __init__( self, app_dir: Optional[str] = None, use_local_uri: Optional[bool] = None, config: Optional[Dict[str, Any]] = None, **kwargs: Any, ) -> None: \"\"\" Initialize the TaskWeaver app. :param app_dir: The project directory. :param use_local_uri: Whether to use local URI for artifacts. :param config: The configuration. :param kwargs: The additional arguments. \"\"\" The app_dir parameter is the path to the project directory. The use_local_uri parameter is a boolean that specifies whether to use local URIs for artifacts. If the artifacts are stored locally, the use_local_uri parameter should be set to True. This is useful if TaskWeaver is being used as a remote service and the artifacts are then remote URIs. The config parameter is a dictionary that contains the configuration settings for the app. Any settings in the config parameter will override existing settings in the configuration file or environment variables. The TaskWeaverApp class has the following methods: def get_session( self, session_id: Optional[str] = None, ) -> Session: \"\"\" Get the session. Return a new session if the session ID is not provided. :param session_id: The session ID. :return: The session. \"\"\" The get_session method is used to get a session. If the session_id parameter is not provided, a new session is created. A session is a conversation instance that the user has with the TaskWeaver app. We shall discuss the Session class later. def stop(self) -> None: \"\"\" Stop the TaskWeaver app. This function must be called before the app exits. \"\"\" The stop method is used to stop the TaskWeaver app. This method must be called before the app exits. An example of creating a TaskWeaverApp instance is shown below: from taskweaver.app.app import TaskWeaverApp app = TaskWeaverApp(app_dir=\"path/to/project/\") session = app.get_session() round = session.send_message(\"Hello, how can I help you?\") print(round) app.stop() In this example, a TaskWeaverApp instance is created with the project directory set to \"path/to/project/\". A session is then created using the get_session method, and a message is sent to the session. The response will be the entire conversation round that was generated by the TaskWeaver app. Finally, the stop method is called to stop the TaskWeaver app.","s":"Application","u":"/TaskWeaver/docs/concepts/app","h":"","p":86},{"i":89,"t":"Plugins are the user-defined functions that extend TaskWeaver CodeInterpreter's capabilities. More details about plugins can be found in the Plugin Introduction. In TaskWeaver, the collection of available plugins are attached to the Conversation object.","s":"Plugin","u":"/TaskWeaver/docs/concepts/plugin","h":"","p":88},{"i":91,"t":"An attachment is a data concept in TaskWeaver which contains additional data other than the text message in the post. @dataclass class Attachment: \"\"\"Attachment is the unified interface for responses attached to the text massage. Args: type: the type of the attachment, which can be \"thought\", \"code\", \"markdown\", or \"execution_result\". content: the content of the response element. id: the unique id of the response element. \"\"\" id: str type: AttachmentType content: str extra: Optional[Any] = None AttachmentType is an Enum class that contains the types of the attachment, which can be \"thought\", \"code\", \"markdown\", or \"execution_result\". content is the content of the response element, which can be the code snippet, the markdown text, or the execution result.","s":"Attachment","u":"/TaskWeaver/docs/concepts/attachment","h":"","p":90},{"i":93,"t":"A conversation is a data concept in TaskWeaver which contains a dialog between the user and the TaskWeaver app. Each session has a corresponding conversation. @dataclass class Conversation: \"\"\"A conversation denotes the interaction with the user, which is a collection of rounds. The conversation is also used to construct the Examples. Args: id: the unique id of the conversation. rounds: a list of rounds. plugins: a list of plugins that are used in the conversation. enabled: whether the conversation is enabled, used for Example only. \"\"\" id: str = \"\" rounds: List[Round] = field(default_factory=list) plugins: List[PluginEntry] = field(default_factory=list) roles: List[str] = field(default_factory=list) enabled: bool = True A conversation is a collection of rounds, where each round starts with the user's input and ends with the TaskWeaver app's response to the user. The plugins are the plugins available in the conversation, and the roles are the roles that the conversation is associated with. In TaskWeaver, the conversation is also used to store the Examples. The examples in the project folder are parsed into Conversations in the memory, and then composed into the prompt of the Planner or the CodeInterpreter. The enabled flag is used to control if this conversation is presented in the prompt.","s":"Conversation","u":"/TaskWeaver/docs/concepts/conversation","h":"","p":92},{"i":95,"t":"A project folder is a directory that stores the configuration files, plugins, examples, logs, and workspace data. A TaskWeaverApp instance is associated with a project folder. The project folder is created by the user and contains all the necessary files and folders for the TaskWeaverApp to run. The following is a typical project directory structure: 📦project ┣ 📜taskweaver_config.json # the project configuration file for TaskWeaver ┣ 📂plugins # the folder to store plugins ┣ 📂planner_examples # the folder to store planner examples ┣ 📂codeinterpreter_examples # the folder to store code interpreter examples ┣ 📂logs # the folder to store logs, will be generated after program starts ┗ 📂workspace # the directory stores session data, will be generated after program starts ┗ 📂 session_id ┣ 📂ces # the folder used by the code execution service ┣ 📂cwd # the current working directory to run the generated code ┗ other session data The workspace folder stores the session data, which includes the code execution service (CES) folder and the current working directory (CWD) folder. Therefore, if the code execution results in any files, they will be stored in the CWD folder. If you are running in local mode and want to load files from your local file system, the CWD is the base directory to load the files from.","s":"Project","u":"/TaskWeaver/docs/concepts/project","h":"","p":94},{"i":97,"t":"The post is a data concept in TaskWeaver which contains a single message in the conversation. @dataclass class Post: \"\"\" A post is the message used to communicate between two roles. It should always have a text_message to denote the string message, while other data formats should be put in the attachment. The role can be either a User, a Planner, or others. Args: id: the unique id of the post. send_from: the role who sends the post. send_to: the role who receives the post. message: the text message in the post. attachment_list: a list of attachments in the post. \"\"\" id: str send_from: RoleName send_to: RoleName message: str attachment_list: List[Attachment] A post is the message used to communicate between two roles. It should always have a text message to denote the string message. In addition, a post has send_from and send_to roles, which are the roles who send and receive the post, respectively. In some cases, the send_from and send_to roles are the same, to denote the self-communication of the role. The attachment_list is a list of attachments in the post. The attachment is used to store various data other than the text message, such as the code snippet or an artifact file path. An attachment may be used only by the role who sends the post, or it may be used by the role who receives the post. In usual cases, the message will present in the prompt as the past chat rounds. However, the message can sometimes be too long and should only be kept in the current round. In the next round, the message will be deleted from the prompt to keep the prompt short. As an example, the CodeInterpreter may generate a long execution result, which only needs to be kept in the current round. In this case, we provide a way of annotating the message (or part of the message) to be kept in the current round only. message = PromptUtil.wrap_text_with_delimiter(message, delimiter=PromptUtil.DELIMITER_TEMPORAL) In this way, the message will be kept in the current round only, and will not be presented in the prompt since the next round.","s":"Post","u":"/TaskWeaver/docs/concepts/post","h":"","p":96},{"i":99,"t":"The role is a concept in TaskWeaver which represents the different roles in the conversation system. The Planner and CodeInterpreter are two examples of roles in TaskWeaver. class Role: @inject def __init__( self, config: ModuleConfig, logger: TelemetryLogger, tracing: Tracing, event_emitter: SessionEventEmitter, role_entry: Optional[RoleEntry] = None, ): \"\"\" The base class for all roles. \"\"\" info We use the inject decorator from the injector package to inject the dependencies into the role class. We allow adding extra roles into the system by inheriting the Role class and implementing the role in the taskweaver.ext_role module. We have provided examples on how to implement a new role. A very simple example is the Echo role which echoes the user's message back to the user. A role should have at least two files: role_name.py and role_name.role.yaml. The files of the role should be put in the taskweaver/ext_role/role_name folder. We need to follow the convention of the role name, which is exactly the same as the folder name, otherwise an exception will be raised. We typically use the style of snake_case for the role name. In the role_name.role.yaml file, we define the role's configuration. This following is echo.role.yaml of the Echo role configuration. alias: Echo module: taskweaver.ext_role.echo.echo.Echo intro : |- - Echo is responsible for echoing the user input. The configuration file contains the following fields: alias: the alias of the role, which is the name of role shown in the prompt and the conversation. module: the module path of the role class. TaskWeaver will import the module and instantiate the role class. intro: the introduction of the role, which will be shown in Planner's prompt for choosing the role for certain tasks. In the role_name.py file, we define the role class. The following is echo.py of the Echo role class. class EchoConfig(RoleConfig): def _configure(self): # configuration for the Echo role # can be configured in the project configuration file with `echo.decorator` self.decorator = self._get_str(\"decorator\", \"\") class Echo(Role): @inject def __init__( self, config: EchoConfig, logger: TelemetryLogger, tracing: Tracing, event_emitter: SessionEventEmitter, role_entry: RoleEntry, ): # configuration for the parent class; this is required super().__init__(config, logger, tracing, event_emitter, role_entry) def reply(self, memory: Memory, **kwargs) -> Post: rounds = memory.get_role_rounds( role=self.alias, include_failure_rounds=False, ) # obtain the query from the last round last_post = rounds[-1].post_list[-1] post_proxy = self.event_emitter.create_post_proxy(self.alias) post_proxy.update_send_to(last_post.send_from) post_proxy.update_message( self.config.decorator + last_post.message + self.config.decorator ) return post_proxy.end() The role implementation should inherit the Role class and implement the reply method. The above example demonstrates how to get the query from the last round. The reply function of the Echo role is simply echoing the user's message back to the user with optional decoration. The reply function should return a Post object, which is the response of the role to the user. We provide facilities to help the role to interact with the memory, the event emitter, and the logger. For example, the event_emitter.create_post_proxy function is used to create a PostProxy object, which is a helper class to create a Post object. The PostProxy object is used to update the Post object with the new message, send_to, and other attributes. Once the PostProxy object is updated, the event emitter will send this event to a handler to display the event to a frontend. To enable the role in TaskWeaver, we need to add the role configuration to the taskweaver_config.json file. The following is an example of the taskweaver_config.json file with the Echo role configuration in addition to the Planner and CodeInterpreter roles. Note that the name of the role should be the same as the folder name of the role, not the alias. { \"session.roles\": [\"planner\", \"echo\", \"code_interpreter\"] } tip How to determine if I should create a new role? or implement a new plugin for the CodeInterpreter? The answer depends on the functionality you want to implement. If the functionality is to reply in text message given a user query, and you don't envision the need to process the reply text in code, you should create a new role. In contrast, if the functionality is to process the user query and return the result in a structured format, or if both input and output are in a structured format, you should implement a new plugin for the CodeInterpreter.","s":"Role","u":"/TaskWeaver/docs/concepts/role","h":"","p":98},{"i":101,"t":"A round is a data concept in TaskWeaver which contains a single round of chat between the user and the TaskWeaver app. @dataclass class Round: \"\"\"A round is the basic unit of conversation in the project, which is a collection of posts. Args: id: the unique id of the round. post_list: a list of posts in the round. user_query: the query of the user. state: the state of the round. \"\"\" id: str user_query: str state: RoundState post_list: List[Post] user_query is the query of the user, and post_list is a list of posts in the round. The state is among \"finished\", \"failed\", \"created\". When the round is created, the state is \"created\". When the round is finished successfully, the state is \"finished\". When the round is failed, the state is \"failed\".","s":"Round","u":"/TaskWeaver/docs/concepts/round","h":"","p":100},{"i":103,"t":"A session is a conversation instance that the user has with the TaskWeaver app. A new session is created when the user interacts with the app. When the user finishes interacting with the app, the session should be closed. TaskWeaver allows multiple sessions to be created and managed by the app. Therefore, multiple users can interact with the app at the same time in different sessions. A new session is created by calling the get_session method of the TaskWeaverApp class. In the background, the get_session method creates a new Session instance. class Session: @inject def __init__( self, session_id: str, workspace: Workspace, app_injector: Injector, logger: TelemetryLogger, tracing: Tracing, config: AppSessionConfig, role_registry: RoleRegistry, ) -> None: \"\"\" Initialize the session. :param session_id: The session ID. :param workspace: The workspace. :param app_injector: The app injector. :param logger: The logger. :param tracing: The tracing. :param config: The configuration. :param role_registry: The role registry. \"\"\" info In TaskWeaver, we use an injector to take care of most dependency injection. The Session class has the following methods: def send_message( self, message: str, event_handler: Optional[SessionEventHandler] = None, files: Optional[List[Dict[Literal[\"name\", \"path\", \"content\"], Any]]] = None, ) -> Round: \"\"\" Send a message. :param message: The message. :param event_handler: The event handler. :param files: The files. :return: The chat round. \"\"\" send_message is used to send a message to the app. The message parameter is the text message that the user sends to the app. The event_handler parameter is a function that handles events during the conversation. We have defined a variety of events that can be handled by the event handler. Each event has a specific type and a message. By implementing the event handler, you can customize the display of events during the conversation. A very simple example of an event handler is shown below: class ConsoleEventHandler(SessionEventHandler): def handle(self, event: TaskWeaverEvent): print(event.t, event.msg) session.send_message(\"Hello, how can I help you?\", ConsoleEventHandler()) The ConsoleEventHandler class is a simple event handler that prints the event type and message to the console. The files parameter is used to upload files to the app for processing. def stop(self) -> None: \"\"\" Stop the session. This function must be called before the session exits. \"\"\" The stop method is used to stop the session. def update_session_var( self, variables: Dict[str, str] ): \"\"\" Update the session variables. :param variables: The variables to update. \"\"\" The update_session_var method is used to update the session variables. A session variable is a key-value pair that is only available in a specific session. Session variables can be used in the plugins to store information that is specific to the session. For example, you can store different user names in the session variables of different sessions. Then, in the plugin, you can access the user name by using the session variable. @register_plugin class PluginClass(Plugin): def __call__(self, argument1: str): ... # this line of code in the plugin implementation self.ctx.get_session_var(\"user_name\", \"anonymous\") ... The update_session_var method can be called multiple times to update multiple session variables.","s":"Session","u":"/TaskWeaver/docs/concepts/session","h":"","p":102},{"i":105,"t":"More details about important configurations.","s":"More about Configurations","u":"/TaskWeaver/docs/configurations/configurations_in_detail","h":"","p":104},{"i":107,"t":"planner.example_base_path: The folder to store planner examples. The default value is ${AppBaseDir}/planner_examples. If you want to create your own planner examples, you can add them to this folder. More details about example can referred to example. planner.prompt_compression: At times, lengthy conversations with the Planner may exceed the input limitations of the LLM model. To address this issue, we can compress the chat history and send it to the LLM model. The default value for this setting is false. More details about prompt_compression can be referred to prompt_compression. planner.use_experience: Whether to use experience summarized from the previous chat history in planner. The default value is false. planner.llm_alias: The alias of the LLM used by the Planner. If you do not specify the LLM for the Planner, the primary LLM will be used by default.","s":"Planner Configuration","u":"/TaskWeaver/docs/configurations/configurations_in_detail","h":"#planner-configuration","p":104},{"i":109,"t":"session.max_internal_chat_round_num: the maximum number of internal chat rounds between Planner and Code Interpreter. If the number of internal chat rounds exceeds this number, the session will be terminated. The default value is 10. session.roles: the roles included for the conversation. The default value is [\"planner\", \"code_interpreter\"]. TaskWeaver has 3 code interpreters: code_interpreter: it will generate Python code to fulfill the user's request. This is the default code interpreter. code_interpreter_plugin_only: please refer to plugin_only_mode for more details. code_interpreter_cli_only: allow users to directly communicate with the Command Line Interface (CLI) in natural language. Please refer to cli_only_mode for more details. If you do not specify planner in the roles, you will enter the \"no-planner\" mode. It allows users to directly communicate with the worker role, such as code_interpreter. In this mode, users can only send messages to the CodeInterpreter and receive messages from the CodeInterpreter. Note that only single worker role is allowed in the \"no-planner\" mode because all user requests will be sent to the worker role directly. Here is an example: ========================================================= _____ _ _ __ |_ _|_ _ ___| | _ | | / /__ ____ __ _____ _____ | |/ _` / __| |/ /| | /| / / _ \\/ __ `/ | / / _ \\/ ___/ | | (_| \\__ \\ < | |/ |/ / __/ /_/ /| |/ / __/ / |_|\\__,_|___/_|\\_\\|__/|__/\\___/\\__,_/ |___/\\___/_/ ========================================================= TaskWeaver: I am TaskWeaver, an AI assistant. To get started, could you please enter your request? Human: generate 10 random numbers >>> [PYTHON]Starting... import numpy as np random_numbers = np.random.rand(10) random_numbers >>> [VERIFICATION] NONE >>> [STATUS]Starting... SUCCESS >>> [RESULT] The execution of the generated python code above has succeeded The result of above Python code after execution is: array([0.09918602, 0.68732778, 0.44413814, 0.4756623 , 0.48302334, 0.8286594 , 0.80994359, 0.35677263, 0.45719317, 0.68240194]) >>> [CODEINTERPRETER->PLANNER] The following python code has been executed: ```python import numpy as np random_numbers = np.random.rand(10) random_numbers ``` The execution of the generated python code above has succeeded The result of above Python code after execution is: array([0.09918602, 0.68732778, 0.44413814, 0.4756623 , 0.48302334, 0.8286594 , 0.80994359, 0.35677263, 0.45719317, 0.68240194]) TaskWeaver: The following python code has been executed: ```python import numpy as np random_numbers = np.random.rand(10) random_numbers ``` The execution of the generated python code above has succeeded The result of above Python code after execution is: array([0.09918602, 0.68732778, 0.44413814, 0.4756623 , 0.48302334, 0.8286594 , 0.80994359, 0.35677263, 0.45719317, 0.68240194])","s":"Session Configuration","u":"/TaskWeaver/docs/configurations/configurations_in_detail","h":"#session-configuration","p":104},{"i":111,"t":"In TaskWeaver, we support various embedding models to generate embeddings for auto plugin selection. llm.embedding_api_type: The type of the embedding API. We support the following types: openai qwen ollama sentence_transformers glm llm.embedding_model: The embedding model name. The model name should be aligned with llm.embedding_api_type. We only list some embedding models we have tested below: openai text-embedding-ada-002 qwen text-embedding-v1 ollama llama2 sentence_transformers all-mpnet-base-v2 multi-qa-mpnet-base-dot-v1 all-distilroberta-v1 all-MiniLM-L12-v2 multi-qa-MiniLM-L6-cos-v1 zhipuai embedding-2 You also can use other embedding models supported by the above embedding APIs.","s":"Embedding Configuration","u":"/TaskWeaver/docs/configurations/configurations_in_detail","h":"#embedding-configuration","p":104},{"i":113,"t":"Today, more and more inference frameworks support OpenAI compatible APIs. However, different models may have different configurations. Here are some supported configurations for other models adapted for OpenAI API. llm.openai.support_system_role: Whether to support system role in the conversation. The default value is True. For the models that do not support system role, you can set this value to False, and the system role will be replaced by the user role. llm.openai.require_alternative_roles: Whether to require alternative roles in the conversation. The default value is False. We notice that some models may require exactly alternative roles in the conversation. If you set this value to True, the system will check consecutive user messages in the conversation history. If there is, the system will add a dummy assistant message in between. llm.openai.support_constrained_generation: Whether to support constrained generation in the conversation. The default value is False. Some inferencing frameworks like vllm and llama.cpp support constrained generation. Currently, we only support vllm. If you want to use this feature, you can set this value to True. llm.openai.json_schema_enforcer: This is configured together with llm.openai.support_constrained_generation. If you want to use constrained generation. There are two valid options: lm-format-enforcer and outlines.","s":"OpenAI Configuration","u":"/TaskWeaver/docs/configurations/configurations_in_detail","h":"#openai-configuration","p":104},{"i":115,"t":"An overview of all configurations available in the config file, which is located at project/taskweaver_config.json. You can edit this file to configure TaskWeaver. tip The configuration file is in JSON format. So for boolean values, use true or false instead of True or False. For null values, use null instead of None or \"null\". All other values should be strings in double quotes. The following table lists the parameters in the configuration file: Parameter Description Default Value llm.model The model name used by the language model. gpt-4 llm.api_base The base URL of the OpenAI API. https://api.openai.com/v1 llm.api_key The API key of the OpenAI API. null llm.api_type The type of the OpenAI API, could be openai or azure. openai llm.api_version The version of the OpenAI API. 2023-07-01-preview llm.response_format The response format of the OpenAI API, could be json_object, text or null. json_object llm.embedding_api_type The type of the embedding API sentence_transformers llm.embedding_model The name of the embedding model all-mpnet-base-v2 code_interpreter.code_verification_on Whether to enable code verification. false code_interpreter.allowed_modules The list of allowed modules to import in code generation. [\"pandas\", \"matplotlib\", \"numpy\", \"sklearn\", \"scipy\", \"seaborn\", \"datetime\", \"typing\"], if the list is empty, no modules would be allowed code_interpreter.blocked_functions The list of functions to block from code generation. [\"__import__\", \"eval\", \"exec\", \"execfile\", \"compile\", \"open\", \"input\", \"raw_input\", \"reload\"] logging.log_file The name of the log file. taskweaver.log logging.log_folder The folder to store the log file. logs plugin.base_path The folder to store plugins. ${AppBaseDir}/plugins planner.example_base_path The folder to store planner examples. ${AppBaseDir}/planner_examples planner.prompt_compression Whether to compress the chat history for planner. false planner.use_experience Whether to use experience summarized from the previous chat history in planner. false code_generator.example_base_path The folder to store code interpreter examples. ${AppBaseDir}/codeinterpreter_examples code_generator.prompt_compression Whether to compress the chat history for code interpreter. false code_generator.enable_auto_plugin_selection Whether to enable auto plugin selection. false code_generator.use_experience Whether to use experience summarized from the previous chat history in code generator. false code_generator.auto_plugin_selection_topk The number of auto selected plugins in each round. 3 session.max_internal_chat_round_num The maximum number of internal chat rounds between Planner and Code Interpreter. 10 session.roles The roles included for the conversation. [\"planner\", \"code_interpreter\"] round_compressor.rounds_to_compress The number of rounds to compress. 2 round_compressor.rounds_to_retain The number of rounds to retain. 3 execution_service.kernel_mode The mode of the code executor, could be local or container. local tip ${AppBaseDir} is the project directory. tip Up to 11/30/2023, the json_object and text options of llm.response_format is only supported by the OpenAI models later than 1106. If you are using an older version of OpenAI model, you need to set the llm.response_format to null. tip Read this for more information for planner.prompt_compression and code_generator.prompt_compression. tip We support to set configurations via environment variables. You need to transform the configuration key to uppercase and replace the dot with underscore. For example, llm.model should be set as LLM_MODEL, llm.api_base should be set as LLM_API_BASE, etc.","s":"Configuration File","u":"/TaskWeaver/docs/configurations/overview","h":"","p":114},{"i":118,"t":"3 items","s":"🗃️ Plugin","u":"/TaskWeaver/docs/customization/","h":"","p":116},{"i":120,"t":"1 item","s":"🗃️ Example","u":"/TaskWeaver/docs/customization/","h":"","p":116},{"i":122,"t":"2 items","s":"🗃️ Experience","u":"/TaskWeaver/docs/customization/","h":"","p":116},{"i":124,"t":"There are currently two types of examples: (1) Planner examples and (2) CodeInterpreter examples. Planning examples are used to demonstrate how the Planner should plan for a specific query from the User. Code generation examples are used to help the CodeInterpreter generate code or orchestrate plugins to perform a specific task. Both types of examples are actually the conversation between a collection of roles, such as the User, the Planner, and the CodeInterpreter. Each conversation consists of one or more rounds, and each round has a User query and contains one or more posts. A post is a message sent from one role to another role, and it may contain some attachments. One example looks like this: enabled: True rounds: - User_query: ping state: created post_list: - message: ping send_from: User send_to: Planner attachment_list: [] - message: pong send_from: Planner send_to: User attachment_list: [] We explicitly break all examples into the two types only to make it easier to understand and maintain. When the roles are initialized, each role will only read the examples of its type. tip All the text field in the examples such as the messages are in Markdown format.","s":"Customizing Examples","u":"/TaskWeaver/docs/customization/example/","h":"","p":123},{"i":126,"t":"A planning example tells LLMs how to plan for a specific query from the User, talk to the CodeInterpreter, receive the execution result from the CodeInterpreter, and summarize the execution result. The following is an example of a conversation between the User, the Planner, and the CodeInterpreter. One of the purposes of this example is to teach the Planner on the annotation of the dependencies between the steps in the plan. Another purpose is to teach the Planner to follow the right output format. enabled: True rounds: - User_query: count the rows of /home/data.csv state: created post_list: - message: count the rows of /home/data.csv send_from: User send_to: Planner attachment_list: - message: Please load the data file /home/data.csv and count the rows of the loaded data send_from: Planner send_to: CodeInterpreter attachment_list: - type: init_plan content: |- 1. load the data file 2. count the rows of the loaded data 3. report the result to the User - type: plan content: |- 1. instruct CodeInterpreter to load the data file and count the rows of the loaded data 2. report the result to the User - type: current_plan_step content: 1. instruct CodeInterpreter to load the data file and count the rows of the loaded data - message: Load the data file /home/data.csv successfully and there are 100 rows in the data file send_from: CodeInterpreter send_to: Planner attachment_list: - message: The data file /home/data.csv is loaded and there are 100 rows in the data file send_from: Planner send_to: User attachment_list: - type: init_plan content: |- 1. load the data file 2. count the rows of the loaded data 3. report the result to the User - type: plan content: |- 1. instruct CodeInterpreter to load the data file and count the rows of the loaded data 2. report the result to the User - type: current_plan_step content: 2. report the result to the User tip To better understand the attachments including init_plan, plan, and current_plan_step, please refer to the Planner's prompt. In this example, there are 4 posts: The first post is sent from the User to the Planner. The message is \"count the rows of /home/data.csv\", which must be the same with the User query. The second post is sent from the Planner to the CodeInterpreter. The message is \"Please load the data file /home/data.csv and count the rows of the loaded data\". The attachment list contains 3 attachments: The first attachment is the initial plan. The second attachment is the final plan. The third attachment is the current plan step. The third post is sent from the CodeInterpreter to the Planner. The message is \"Load the data file /home/data.csv successfully and there are 100 rows in the data file\". The fourth post is sent from the Planner to the User. The message is \"The data file /home/data.csv is loaded and there are 100 rows in the data file\". The attachment list contains 3 attachments, which are the same as the second post.","s":"Planner Examples","u":"/TaskWeaver/docs/customization/example/","h":"#planner-examples","p":123},{"i":128,"t":"A CodeInterpreter example tells CodeInterpreter how to generate code or orchestrate plugins to perform a specific task. The task is always from the Planner. The purpose of this example is to teach CodeInterpreter how to handle errors in execution. enabled: True rounds: - User_query: read file /abc/def.txt state: finished post_list: - message: read file /abc/def.txt send_from: Planner send_to: CodeInterpreter attachment_list: [] - message: I'm sorry, I cannot find the file /abc/def.txt. An FileNotFoundException has been raised. send_from: CodeInterpreter send_to: Planner attachment_list: - type: thought content: \"{ROLE_NAME} will generate a code snippet to read the file /abc/def.txt and present the content to the User.\" - type: python content: |- file_path = \"/abc/def.txt\" with open(file_path, \"r\") as file: file_contents = file.read() print(file_contents) - type: verification content: CORRECT - type: code_error content: No code error. - type: execution_status content: FAILURE - type: execution_result content: FileNotFoundException, the file /abc/def.txt does not exist. tip Read the prompt of the code generation to better understand the attachments in the example code generator prompt. This conversation has two posts: The first post is sent from the Planner to the CodeInterpreter. The message is \"Please read file /abc/def.txt\". The second post is sent from the CodeInterpreter to the Planner. The message is \"read file /abc/def.txt\". The attachment list contains 6 attachments: The first attachment is the thought of the CodeInterpreter. The second attachment is the generated code, which is in python. The third attachment is the verification status, which is CORRECT, INCORRECT, or NONE. The fourth attachment is the verification error message. The fifth attachment is the execution status, which is SUCCESS, FAILURE, or NONE. The sixth attachment is the execution result, which is a markdown string. In this example, verification is about whether the generated code is correct or not. We implemented a module to verify the generated code. If the code is syntactically incorrect, or the code violates the constraints, the verification status will be INCORRECT and some error messages will be returned. A verification of NONE means that the code has not been verified, which means verification has been turned off. In this example, execution_status is about whether the generated code can be executed successfully or not. If the execution is successful, the execution status will be SUCCESS and the execution result will be returned. Otherwise, the execution status will be FAILURE and some error messages will be returned. A execution_status of NONE means that the code has not been executed.","s":"CodeInterpreter Examples","u":"/TaskWeaver/docs/customization/example/","h":"#codeinterpreter-examples","p":123},{"i":131,"t":"The agent developers can add examples to guide the planning and code generation. Alternatively, we also provide another way of saving user experiences to long-term memory. In practice, if the user asks TaskWeaver to solve a hard problem. TaskWeaver can first go wrong. But after several attempts or the user gives more instructions, the agent can finally solve the problem. However, next time, if the user asks a similar problem or even exactly the same problem. The agent is still hard to come up with the right solution at first because it does not memorize the experiences. Therefore, we proposed a mechanism called experience memory. Here is the basic idea. A user can issue a command to TaskWeaver to save chat history and then extract experience tips from it and save them into the experience pool. Later, when the agent sees similar requests, it will retrieve the experience from the memory to guide its planning and code generation. An experience tip is about what should do or should not do when seeing a request like this. We will add the retrieved experiences to the prompt when received a similar request afterward.","s":"Motivation","u":"/TaskWeaver/docs/customization/experience/","h":"#motivation","p":129},{"i":133,"t":"In this quick start tutorial, we are going to show you how to enable the experience feature and save the chat history to the experience pool. To enable the experience feature, you need to set the planner.use_experience and code_generator.use_experience parameter in the configuration file to true. So, both the Planner and CodeInterpreter can use the experience to guide the planning and code generation. Start a new conversation with TaskWeaver. You will find experience directory is created in your project directory. Note that it is empty now because we have not saved any chat history yet. If you think the current chat history is worth saving, you can save it by typing command /save in the console chat interface. And you will find a new file named raw_exp_{session_id}.yaml created in the experience directory. Restart TaskWeaver and start a new conversation. In the initialization stage, TaskWeaver will read the raw_exp_{session_id}.yaml file and make a summarization in a new file named exp_{session_id}.yaml. This process may take a while because TaskWeaver needs to call the LLM model to extract the experience tips from the chat history. Next time, when user send a similar query to TaskWeaver, it will retrieve the relevant experience and load it into the system prompt (for Planner and CodeInterpreter). In this way, the experience can be used to guide the future conversation. info The experience folder is created in the project directory. You can change the location of the experience folder by setting the session.experience_dir parameter in the configuration file.","s":"Quick start","u":"/TaskWeaver/docs/customization/experience/","h":"#quick-start","p":129},{"i":135,"t":"Start a new conversation with TaskWeaver. Send a request \"calculate the mean value of ./project/sample_data/data_demo.csv\" to TaskWeaver. You will find TaskWeaver made a mistake, calculating the mean value of the non-numerical column. After several attempts, TaskWeaver fixed this issue. ========================================================= _____ _ _ __ |_ _|_ _ ___| | _ | | / /__ ____ __ _____ _____ | |/ _` / __| |/ /| | /| / / _ \\/ __ `/ | / / _ \\/ ___/ | | (_| \\__ \\ < | |/ |/ / __/ /_/ /| |/ / __/ / |_|\\__,_|___/_|\\_\\|__/|__/\\___/\\__,_/ |___/\\___/_/ ========================================================= TaskWeaver ▶ I am TaskWeaver, an AI assistant. To get started, could you please enter your request? Human ▶ calculate the mean value of d:/demo_data.csv ╭───< Planner > ├─► [init_plan] │ 1. load the data file │ 2. calculate the mean value of the loaded data │ 3. report the result to the user ├─► [plan] │ 1. instruct CodeInterpreter to load the data file and calculate the mean value of the loaded data │ 2. report the result to the user ├─► [current_plan_step] 1. instruct CodeInterpreter to load the data file and calculate the mean value of the loaded data ├──● Please load the data file d:/demo_data.csv and calculate the mean value of the loaded data ╰──● sending message to CodeInterpreter ╭───< CodeInterpreter > ├─► [thought] ProgramApe will generate a code snippet to load the data file d:/demo_data.csv and calculate the mean value of the loaded data using pandas. ├─► [python] │ import pandas as pd │ │ data_file_path = \"d:/demo_data.csv\" │ data_df = pd.read_csv(data_file_path) │ mean_value = data_df.mean() │ mean_value ├─► [verification] NONE ├─► [code_error] No code verification is performed. ├─► [execution_status] FAILURE ├─► [execution_result] │ The execution of the generated python code above has failed │ │ During execution, the following messages were logged: │ Traceback (most recent call last): │ │ Cell In[1], line 5 │ mean_value = data_df.mean() │ │ File D:\\python_project\\Octopus\\venv\\Lib\\site-packages\\pandas\\core\\frame.py:11335 in mean │ result = super().mean(axis, skipna, numeric_only, **kwargs) │ │ File D:\\python_project\\Octopus\\venv\\Lib\\site-packages\\pandas\\core\\generic.py:11984 in mean │ return self._stat_function( │ │ File D:\\python_project\\Octopus\\venv\\Lib\\site-packages\\pandas\\core\\generic.py:11941 in _stat_function │ return self._reduce( │ │ File D:\\python_project\\Octopus\\venv\\Lib\\site-packages\\pandas\\core\\frame.py:11204 in _reduce │ res = df._mgr.reduce(blk_func) │ │ File D:\\python_project\\Octopus\\venv\\Lib\\site-packages\\pandas\\core\\internals\\managers.py:1459 in reduce │ nbs = blk.reduce(func) │ │ File D:\\python_project\\Octopus\\venv\\Lib\\site-packages\\pandas\\core\\internals\\blocks.py:377 in reduce │ result = func(self.values) │ │ File D:\\python_project\\Octopus\\venv\\Lib\\site-packages\\pandas\\core\\frame.py:11136 in blk_func │ ret │ ├─► [artifact_paths] [] ├──● The following python code has been executed: │ ```python │ import pandas as pd │ │ data_file_path = \"d:/demo_data.csv\" │ data_df = pd.read_csv(data_file_path) │ mean_value = data_df.mean() │ mean_value │ ``` │ │ │ The execution of the generated python code above has failed │ │ During execution, the following messages were logged: │ Traceback (most recent call last): │ │ Cell In[1], line 5 │ mean_value = data_df.mean() │ │ File D:\\python_project\\Octopus\\venv\\Lib\\site-packages\\pandas\\core\\frame.py:11335 in mean │ result = super().mean(axis, skipna, numeric_only, **kwargs) │ │ File D:\\python_project\\Octopus\\venv\\Lib\\site-packages\\pandas\\core\\generic.py:11984 in mean │ return self._stat_function( │ │ File D:\\python_project\\Octopus\\venv\\Lib\\site-packages\\pandas\\core\\generic.py:11941 in _stat_function │ return self._reduce( │ │ File D:\\python_project\\Octopus\\venv\\Lib\\site-packages\\pandas\\core\\frame.py:11204 in _reduce │ res = df._mgr.reduce(blk_func) │ │ File D:\\python_project\\Octopus\\venv\\Lib\\site-packages\\pandas\\core\\internals\\managers.py:1459 in reduce │ nbs = blk.reduce(func) │ │ File D:\\python_project\\Octopus\\venv\\Lib\\site-packages\\pandas\\core\\internals\\blocks.py:377 in reduce │ result = func(self.values) │ │ File D:\\python_project\\Octopus\\venv\\Lib\\site-packages\\pandas\\core\\frame.py:11136 in blk_func │ ret │ ├─► [revise_message] │ The execution of the previous generated code has failed. If you think you can fix the problem by rewriting the code, please generate code and run it again. │ Otherwise, please explain the problem to me. ╰──● sending message to CodeInterpreter ╭───< CodeInterpreter > ├─► [thought] ProgramApe will generate a code snippet to load the data file d:/demo_data.csv and calculate the mean value of the loaded data using pandas, considering the execution │ error. ├─► [python] │ import pandas as pd │ │ data_file_path = \"d:/demo_data.csv\" │ data_df = pd.read_csv(data_file_path) │ mean_value = data_df.mean(axis=0, numeric_only=True) │ mean_value ├─► [verification] NONE ├─► [code_error] No code verification is performed. ├─► [execution_status] SUCCESS ├─► [execution_result] │ The execution of the generated python code above has succeeded │ │ The result of above Python code after execution is: │ Count 78172.75 │ dtype: float64 ├─► [artifact_paths] [] ├──● The following python code has been executed: │ ```python │ import pandas as pd │ │ data_file_path = \"d:/demo_data.csv\" │ data_df = pd.read_csv(data_file_path) │ mean_value = data_df.mean(axis=0, numeric_only=True) │ mean_value │ ``` │ │ │ The execution of the generated python code above has succeeded │ │ The result of above Python code after execution is: │ Count 78172.75 │ dtype: float64 ╰──● sending message to Planner ╭───< Planner > ├─► [init_plan] │ 1. load the data file │ 2. calculate the mean value of the loaded data │ 3. report the result to the user ├─► [plan] │ 1. instruct CodeInterpreter to load the data file and calculate the mean value of the loaded data │ 2. report the result to the user ├─► [current_plan_step] 2. report the result to the user ├──● The mean value of the data in d:/demo_data.csv is 78172.75 ╰──● sending message to User TaskWeaver ▶ The mean value of the data in d:/demo_data.csv is 78172.75 We can issue the /save command from the console chat interface to save the chat history. Then, after we restart TaskWeaver, we can see the experience summarized from the last chat history is below: exp_id: 20231228-073922-9b411afd experience_text: \"User Query: get the mean value of d:/demo_data.csv Error Resolution: - Error 1: The initial code failed to execute because it tried to calculate the mean value of all columns, including non-numeric columns. - Resolution 1: The code was revised to check for non-numeric columns and only calculate the mean value for numeric columns. Preferences: - Preference 1: The user prefers to calculate the mean value of the \"Count\" column in the data.\" raw_experience_path: D:\\project\\experience\\raw_exp_20231228-073922-9b411afd.yaml embedding_model: text-embedding-ada-002 embedding: ... Send a similar request \"calculate the variance value of ./project/sample_data/data_demo.csv\" to TaskWeaver. You will find TaskWeaver will not make the same mistake again. It will ask User to confirm the column name to calculate the variance value. ========================================================= _____ _ _ __ |_ _|_ _ ___| | _ | | / /__ ____ __ _____ _____ | |/ _` / __| |/ /| | /| / / _ \\/ __ `/ | / / _ \\/ ___/ | | (_| \\__ \\ < | |/ |/ / __/ /_/ /| |/ / __/ / |_|\\__,_|___/_|\\_\\|__/|__/\\___/\\__,_/ |___/\\___/_/ ========================================================= TaskWeaver ▶ I am TaskWeaver, an AI assistant. To get started, could you please enter your request? Human ▶ calculate the variance value of d:/demo_data.csv ╭───< Planner >TaskWeaver] preparing <=�=> ├─► [init_plan] │ 1. load the data file │ 2. confirm the columns to calculate variance │ 3. calculate the variance value for the selected columns │ 4. report the result to the user ├─► [plan] ▶ [Planner][plan] 1. instruct CodeInterpreter to load the data file 2. confirm the columns to calcu <=�=> │ 1. instruct CodeInterpreter to load the data file │ 2. confirm the columns to calculate variance ├─► [current_plan_step] 1. instruct CodeInterpreter to load the data file load the data file <=�=> ├──● Please load the data file d:/demo_data.csva file d:/demo_dat <=�=> ╰──● sending message to CodeInterpreter ╭───< CodeInterpreter > ├─► [thought] ProgramApe will generate a code snippet to load the data file d:/demo_data.csv using pandas.demo_data.csv using panda <=�=> ├─► [python]▶ [CodeInterpreter][python] import pandas as pd data_file_path = \"d:/demo_data.csv\" df = pd.read_csv(data_fil <=�=> │ import pandas as pd │ │ data_file_path = \"d:/demo_data.csv\" │ df = pd.read_csv(data_file_path) │ df ├─► [verification] NONE ├─► [code_error] No code verification is performed. ├─► [execution_status] SUCCESS] executing code <=�=> ├─► [execution_result] │ The execution of the generated python code above has succeeded │ │ The result of above Python code after execution is: │ TimeBucket Count │ 0 2023-02-01T00:00:00Z 67814 │ 1 2023-02-01T04:00:00Z 84569 │ .. ... ... │ 718 2023-05-31T16:00:00Z 89912 │ 719 2023-05-31T20:00:00Z 87249 │ │ [720 rows x 2 columns] ├─► [artifact_paths] [] ├──● The following python code has been executed: │ ```python │ import pandas as pd │ │ data_file_path = \"d:/demo_data.csv\" │ df = pd.read_csv(data_file_path) │ df │ ``` │ │ │ The execution of the generated python code above has succeeded │ │ The result of above Python code after execution is: │ TimeBucket Count │ 0 2023-02-01T00:00:00Z 67814 │ 1 2023-02-01T04:00:00Z 84569 │ .. ... ... │ 718 2023-05-31T16:00:00Z 89912 │ 719 2023-05-31T20:00:00Z 87249 │ │ [720 rows x 2 columns] ╰──● sending message to Planner ╭───< Planner >CodeInterpreter] finished <=�=> ├─► [init_plan] │ 1. load the data file │ 2. confirm the columns to calculate variance │ 3. calculate the variance value for the selected columns │ 4. report the result to the user ├─► [plan] ▶ [Planner][plan] 1. instruct CodeInterpreter to load the data file 2. confirm the columns to calculate var <=�=> │ 1. instruct CodeInterpreter to load the data file │ 2. confirm the columns to calculate variance ├─► [current_plan_step] 2. confirm the columns to calculate variance calculate varia <=�=> ├──● The data file d:/demo_data.csv is loaded. The columns in the data are: │ │ 1. TimeBucket │ 2. Count │ │ Please specify which column(s) you would like to calculate the variance for. ╰──● sending message to User TaskWeaver ▶ The data file d:/demo_data.csv is loaded. The columns in the data are: 1. TimeBucket 2. Count Please specify which column(s) you would like to calculate the variance for. Human ▶ Count ╭───< Planner >TaskWeaver] preparing <=�=> ├─► [init_plan] │ 1. load the data file │ 2. confirm the columns to calculate variance │ 3. calculate the variance value for the selected columns │ 4. report the result to the user ├─► [plan] │ 1. instruct CodeInterpreter to load the data file │ 2. confirm the columns to calculate variance │ 3. instruct CodeInterpreter to calculate the variance value for the Count column │ 4. report the result to the user ├─► [current_plan_step] 3. instruct CodeInterpreter to calculate the variance value for the Count columnor the Count col <=�=> ├──● Please calculate the variance value for the Count column in the loaded datalumn in the loaded <=�=> ╰──● sending message to CodeInterpreter ╭───< CodeInterpreter > ├─► [thought] ProgramApe will generate a code snippet to calculate the variance value for the Count column in the loaded data. column in the loaded dat <=�=> ├─► [python]▶ [CodeInterpreter][python] variance_count = df['Count'].var() varia <=�=> │ variance_count = df['Count'].var() │ variance_count ├─► [verification] NONE ├─► [code_error] No code verification is performed. ├─► [execution_status] SUCCESS] executing code <=�=> ├─► [execution_result] │ The execution of the generated python code above has succeeded │ │ The result of above Python code after execution is: │ 263514550.45479834 ├─► [artifact_paths] [] ├──● The following python code has been executed: │ ```python │ variance_count = df['Count'].var() │ variance_count │ ``` │ │ │ The execution of the generated python code above has succeeded │ │ The result of above Python code after execution is: │ 263514550.45479834 ╰──● sending message to Planner ╭───< Planner >CodeInterpreter] finished <=�=> ├─► [init_plan] │ 1. load the data file │ 2. confirm the columns to calculate variance │ 3. calculate the variance value for the selected columns │ 4. report the result to the user ├─► [plan] │ 1. instruct CodeInterpreter to load the data file │ 2. confirm the columns to calculate variance │ 3. instruct CodeInterpreter to calculate the variance value for the Count column │ 4. report the result to the user ├─► [current_plan_step] 4. report the result to the user result to the u <=�=> ├──● The variance value for the Count column in the data file d:/demo_data.csv is 263,514,550.45a.csv is 263,51 <=�=> ╰──● sending message to User TaskWeaver ▶ The variance value for the Count column in the data file d:/demo_data.csv is 263,514,550.45","s":"A walk-through example","u":"/TaskWeaver/docs/customization/experience/","h":"#a-walk-through-example","p":129},{"i":137,"t":"We have introduced the motivation of the experience module in Experience. In the quick start guide, we have shown how to extract experiences and lessons from the current conversation. However, a more common scenario is that you have a handcrafted experience that you want to use to guide the agent.","s":"Handcrafted Experience","u":"/TaskWeaver/docs/customization/experience/handcrafted_experience","h":"","p":136},{"i":139,"t":"To create a handcrafted experience, you need to create a YAML file that contains the experience. The YAML file should have the following structure: exp_id: the-id-of-the-experience experience_text: the content of the experience The file should be saved in the experience folder in the project directory. The file name should be prefixed with handcrafted_exp_{exp_id}. For example, if the exp_id is 1, the file name should be handcrafted_exp_1.yaml. tip Do not use underscores in the exp_id field in order to avoid conflicts with the file name. In the experience_text field, you can write the content of the experience in Markdown format. For example: exp_id: 1 experience_text: |- - Say \"world\" if you hear \"hello\". - Say \"peace\" if you hear \"love\".","s":"Create a handcrafted experience","u":"/TaskWeaver/docs/customization/experience/handcrafted_experience","h":"#create-a-handcrafted-experience","p":136},{"i":141,"t":"Loading the handcrafted experience is the same with loading the extracted experience. If either planner.use_experience or code_generator.use_experience is set to True in the project configuration file taskweaver_config.json, the handcrafted experience will be loaded at the time of starting the agent. If your agent is running, you need to restart the agent to load the handcrafted experience.","s":"Load the handcrafted experience","u":"/TaskWeaver/docs/customization/experience/handcrafted_experience","h":"#load-the-handcrafted-experience","p":136},{"i":144,"t":"Using LLMs from OpenAI","s":"📄️ OpenAI","u":"/TaskWeaver/docs/llms/","h":"","p":142},{"i":146,"t":"Using LLMs from OpenAI/AOAI","s":"📄️ Azure OpenAI","u":"/TaskWeaver/docs/llms/","h":"","p":142},{"i":148,"t":"Using LLMs from LiteLLM","s":"📄️ LiteLLM","u":"/TaskWeaver/docs/llms/","h":"","p":142},{"i":150,"t":"1. Go to Ollama and follow the instructions to serve a LLM model on your local environment.","s":"📄️ Ollama","u":"/TaskWeaver/docs/llms/","h":"","p":142},{"i":152,"t":"1. Create an account on Google AI and get your API key.","s":"📄️ Gemini","u":"/TaskWeaver/docs/llms/","h":"","p":142},{"i":154,"t":"1. QWen (Tongyi Qianwen) is a LLM developed by Alibaba. Go to QWen and register an account and get the API key. More details can be found here (in Chinese).","s":"📄️ QWen","u":"/TaskWeaver/docs/llms/","h":"","p":142},{"i":156,"t":"1. GLM (ChatGLM) is a LLM developed by Zhipu AI and Tsinghua KEG. Go to ZhipuAI and register an account and get the API key. More details can be found here.","s":"📄️ GLM","u":"/TaskWeaver/docs/llms/","h":"","p":142},{"i":158,"t":"Using LLMs from Keywords AI and have better observability.","s":"📄️ Keywords AI","u":"/TaskWeaver/docs/llms/","h":"","p":142},{"i":160,"t":"We welcome developers to use your customized LLM API in TaskWeaver.","s":"📄️ Customized LLM API","u":"/TaskWeaver/docs/llms/","h":"","p":142},{"i":162,"t":"In some cases, you may want to use different LLMs for different components.","s":"📄️ Multi LLM APIs","u":"/TaskWeaver/docs/llms/","h":"","p":142},{"i":165,"t":"A: In the default setting, TaskWeaver typically goes through the following steps to generate the output: The User sends a query to the Planner. The Planner generates a plan based on the query and sends the plan to the CodeInterpreter. The CodeInterpreter executes the plan and sends the execution result back to the Planner. The Planner summarizes the execution result and sends the summary to the User. The User receives the summary from the Planner. In some cases, the Planer and CodeInterpreter can go back and forth multiple times to generate the output. This process can take a long time, mostly due to the latency of calling the LLMs. To speed up the process, you can try the following: Use a smaller LLM model, such as GPT-3.5 instead of GPT-4. However, you need to experiment with your use case to see if the smaller model can still generate the output correctly. Use the CodeInterpreter only mode, which skips the Planner and generates the code directly from the User query. This mode is faster because it skips the planning step. However, you should check if your use case needs the planning step.","s":"Q: Why it takes so long to generate the output?","u":"/TaskWeaver/docs/FAQ","h":"#q-why-it-takes-so-long-to-generate-the-output","p":163},{"i":167,"t":"A: This error typically happens when TaskWeaver is running in the container mode and cannot connect to the Docker daemon. We have switched to the container mode by default to provide a more secure environment for code execution. To opt out of the container mode, you can set the execution_service.kernel_mode parameter to local in the taskweaver_config.json file. However, you should be aware that TaskWeaver can interact with the host machine directly in the local mode, which may have security risks.","s":"Q: Why TaskWeaver fails and the logs say \"Failed to connect to docker.daemon\"?","u":"/TaskWeaver/docs/FAQ","h":"#q-why-taskweaver-fails-and-the-logs-say-failed-to-connect-to-dockerdaemon","p":163},{"i":169,"t":"A: This is typically due to that the LLM failed to generate its output follow our schema. In Planner's prompt, we asked the LLM to generate a JSON object that contains send_to, message, init_plan, plan, and current_plan_step. Missing any of these fields will cause the parsing error. The most effective way to mitigate this issue is to use switch to more powerful LLM model, such as GPT-3.5 or GPT-4.","s":"Q: Why I see errors saying the Planner failed to generate the send_to, message or other fields?","u":"/TaskWeaver/docs/FAQ","h":"#q-why-i-see-errors-saying-the-planner-failed-to-generate-the-send_to-message-or-other-fields","p":163},{"i":171,"t":"A: A simple way to check if TaskWeaver can see your plugin is to ask \"What can you do?\" to TaskWeaver. The typical response is to list all the available plugins like the following: I can assist you with various tasks, including: - Detecting anomalies in time series data. - Rendering text into ASCII art. - Searching and comparing prices from thousands of online shops (US only). - Telling a joke. If you have a specific task in mind, please let me know, and I'll do my best to assist you. If you see your plugin in the list, it means TaskWeaver can see your plugin. But this is not a reliable way to check if TaskWeaver can see your plugin because the response is generated by the LLM. A more reliable way is to check the prompt of the Planner. You can find the prompts from project/workspace/sessions//planner_prompt_log_xxxx.yaml. Then, search for this section as follows: CodeInterpreter has the following plugin functions and their required parameters need to be provided before the execution: - anomaly_detection: anomaly_detection function identifies anomalies from an input DataFrame of time series. It will add a new column \\\"Is_Anomaly\\\", where each entry will be marked with \\\"True\\\" if the value is an anomaly or \\\"False\\\" otherwise. Arguments required: df: DataFrame, time_col_name: str, value_col_name: str - ascii_render: This plugin renders the input text into ASCII art form. Arguments required: text: str - klarna_search: Search and compare prices from thousands of online shops. Only available in the US. This plugin only takes user requests when searching for merchandise. If not clear, confirm with the user if they want to search for merchandise from Klarna. Arguments required: query: str - tell_joke: Call this plugin to tell a joke. Check if your plugin is in the list. If it is, it means TaskWeaver can see your plugin.","s":"Q: How do I know if TaskWeaver can see my plugin?","u":"/TaskWeaver/docs/FAQ","h":"#q-how-do-i-know-if-taskweaver-can-see-my-plugin","p":163},{"i":173,"t":"First, make sure you have read our Plugin Introduction and this tutorial carefully. You should have two files in the plugins folder, e.g., ascii_render.py and ascii_render.yaml. Now, if TaskWeaver cannot see your plugin, the root cause is typically syntax errors in the yaml file. Check the console output if you are using the command line interface, or the console logs if you are using the web interface. You may see the following error message: failed to loading component from .yaml, skipping: Yaml loading failed due to: The error message will tell you the reason why the yaml file cannot be loaded. It is typically easy to fix the syntax errors by using a yaml linter (e.g., in Visual Studio Code) or an online yaml linter. If you have checked the syntax of the yaml file and TaskWeaver still cannot see your plugin, please check if the yaml file has included all the required fields such as the parameters and returns fields.","s":"Q: Why TaskWeaver cannot see my plugin?","u":"/TaskWeaver/docs/FAQ","h":"#q-why-taskweaver-cannot-see-my-plugin","p":163},{"i":175,"t":"A: In this case, you may see the generated code has called the plugin function, but the execution result is an error message saying that the plugin function is undefined. If this happens, please check the console output if you are using the command line interface, or the console logs if you are using the web interface. You may see the following error message: Plugin failed to load: Plugin failed to register: failed to load plugin This error message will tell you the reason why the plugin function cannot be loaded. It is typically easy to fix the errors by checking the console output or logs. The root cause is typically errors in the python file that causes the plugin function cannot be loaded. Typical errors include syntax errors, missing imports, or missing packages. Note that this sort of error is not caused by the implementation \"inside\" the plugin function. Otherwise, the errors would be caught during the execution of the plugin function, not during the loading of the plugin function.","s":"Q: Why TaskWeaver can see my plugin but cannot call it?","u":"/TaskWeaver/docs/FAQ","h":"#q-why-taskweaver-can-see-my-plugin-but-cannot-call-it","p":163},{"i":177,"t":"A: We are working on a debugging tool to help you debug your plugin. For now, a simple way to debug your plugin is to define a main function in the python file and run it in your local environment. For example, you can define a main function in ascii_render.py as follows: if __name__ == \"__main__\": from taskweaver.plugin.context import temp_context with temp_context() as temp_ctx: render = AsciiRenderPlugin(name=\"ascii_render\", ctx=temp_ctx, config={}) print(render(text=\"hello world!\")) In this main function, we create a temporary context and call the plugin function with some input. You need not change the plugin implementation. Just add the main function to the end of the python file. Then, run the python file in your local environment. If there are any errors, you can see them in the console output. If you have the configurations section in the yaml file, you can manually set the configurations in the config parameter of the plugin constructor. We currently do not read the yaml file, so you need to make sure that the configurations are set correctly in the config parameter. For example, if an integer configuration max_length is defined in the yaml file, you can set it in the config parameter as follows: config = { \"max_length\": 100 } Then, pass the config to the plugin constructor. As yaml is type sensitive, you need to make sure that the type of the configuration is correct.","s":"Q: How to debug my plugin?","u":"/TaskWeaver/docs/FAQ","h":"#q-how-to-debug-my-plugin","p":163},{"i":179,"t":"A: We use a Jupyter Kernel to execute the code in TaskWeaver. The Jupyter Kernel uses an event loop to manage the execution of the code. If you see the error message \"RuntimeError: This event loop is already running.\", it typically means that the event loop is already running. This is typically caused by the environment where TaskWeaver is running. For example, if you are running TaskWeaver in a Jupyter Notebook.","s":"Q: Why I see the error message \"RuntimeError: This event loop is already running\"?","u":"/TaskWeaver/docs/FAQ","h":"#q-why-i-see-the-error-message-runtimeerror-this-event-loop-is-already-running","p":163},{"i":181,"t":"A: This error message typically happens when TaskWeaver is running in the container mode on a Windows machine with WSL. One can refer to this issue for more details. The fix is to set JUPYTER_ALLOW_INSECURE_WRITES=true for the container.","s":"Q: Why I see the error message \"Permissions assignment failed for secure file: Got '0o677' instead of '0o0600'.\" when running TaskWeaver?","u":"/TaskWeaver/docs/FAQ","h":"#q-why-i-see-the-error-message-permissions-assignment-failed-for-secure-file-got-0o677-instead-of-0o0600-when-running-taskweaver","p":163},{"i":184,"t":"Create an account on Azure OpenAI and get your API key. Create a new deployment of the model and get the deployment name. Add the following to your taskweaver_config.json file: { \"llm.api_base\":\"YOUR_AOAI_ENDPOINT\", // in the format of https://.openai.azure.com\" \"llm.api_key\":\"YOUR_API_KEY\", \"llm.api_type\":\"azure\", \"llm.auth_mode\":\"api-key\", \"llm.model\":\"gpt-4-1106-preview\", // this is known as deployment_name in Azure OpenAI \"llm.response_format\": \"json_object\" } info For model versions or after 1106, llm.response_format can be set to json_object. However, for the earlier models, which do not support JSON response explicitly, llm.response_format should be set to null. Start TaskWeaver and chat with TaskWeaver. You can refer to the Quick Start for more details.","s":"Using API Key","u":"/TaskWeaver/docs/llms/aoai","h":"#using-api-key","p":182},{"i":186,"t":"Create an account on Azure OpenAI and assign the proper Azure RBAC Role to your account (or service principal). Create a new deployment of the model and get the deployment name. Add the following to your taskweaver_config.json file: { \"llm.api_base\":\"YOUR_AOAI_ENDPOINT\", // in the format of https://.openai.azure.com\" \"llm.api_type\":\"azure_ad\", \"llm.auth_mode\":\"default_azure_credential\", \"llm.model\":\"gpt-4-1106-preview\", // this is known as deployment_name in Azure OpenAI \"llm.response_format\": \"json_object\" } Install extra dependencies: pip install azure-identity Optionally configure additional environment variables or dependencies for the specifying authentication method: Internally, authentication is handled by the DefaultAzureCredential class from the azure-identity package. It would try to authenticate using a series of methods depending on the availability in current running environment (such as environment variables, managed identity, etc.). You can refer to the official documentation for more details. For example, you can specify different environment variables to control the authentication method: Authenticating with AzureCLI (recommended for local development): Install AzureCLI and ensure az is available in your PATH. Then run the following command to login: az login Authenticating with Managed Identity (recommended for Azure environment): If you are running TaskWeaver on Azure, you can use Managed Identity for authentication. You can check the document for specific Azure services on how to enable Managed Identity. When using user assigned managed identity, you can set the following environment variable to specify the client ID of the managed identity: export AZURE_CLIENT_ID=\"YOUR_CLIENT_ID\" Authenticating with Service Principal: You can follow the docs in the official documentation to specify the environment variables for Service Principal authentication. Start TaskWeaver and chat with TaskWeaver.","s":"Using Entra Authentication","u":"/TaskWeaver/docs/llms/aoai","h":"#using-entra-authentication","p":182},{"i":188,"t":"Create an account on Google AI and get your API key. Add the following content to your taskweaver_config.json file: { \"llm.api_type\": \"google_genai\", \"llm.google_genai.api_key\": \"YOUR_API_KEY\", \"llm.google_genai.model\": \"gemini-pro\" } Start TaskWeaver and chat with TaskWeaver. You can refer to the Quick Start for more details.","s":"Gemini","u":"/TaskWeaver/docs/llms/gemini","h":"","p":187},{"i":190,"t":"Create an account on Anthropic and get your API key from the Anthropic Console. Add the following to your taskweaver_config.json file: { \"llm.api_type\": \"anthropic\", \"llm.api_base\": \"https://api.anthropic.com/v1/messages\", \"llm.api_key\": \"YOUR_API_KEY\", \"llm.model\": \"claude-3-opus\" } tip llm.model is the model name you want to use. You can find the list of available Claude models in the Anthropic API documentation. info Anthropic's Claude API doesn't have a specific response_format parameter like OpenAI. If you need structured output, you should instruct Claude to respond in a specific format (e.g., JSON) within your prompts. caution Anthropic doesn't provide a native embedding service. If you need embeddings, you'll need to configure a different service for that functionality. Start TaskWeaver and chat with TaskWeaver using Claude. You can refer to the Quick Start for more details. Remember to replace YOUR_API_KEY with your actual Anthropic API key.","s":"Anthropic (Claude)","u":"/TaskWeaver/docs/llms/anthropic","h":"","p":189},{"i":192,"t":"GLM (ChatGLM) is a LLM developed by Zhipu AI and Tsinghua KEG. Go to ZhipuAI and register an account and get the API key. More details can be found here. Install the required packages dashscope. pip install zhipuai Add the following configuration to taskweaver_config.json: { \"llm.api_type\": \"zhipuai\", \"llm.model\": \"glm-4\", \"llm.embedding_model\": \"embedding-2\", \"llm.embedding_api_type\": \"zhipuai\", \"llm.api_key\": \"YOUR_API_KEY\" } NOTE: llm.model is the model name of zhipuai API. You can find the model name in the GLM model list. Start TaskWeaver and chat with TaskWeaver. You can refer to the Quick Start for more details.","s":"GLM","u":"/TaskWeaver/docs/llms/glm","h":"","p":191},{"i":194,"t":"We welcome developers to use your customized LLM API in TaskWeaver. In this tutorial, we will show you how to contribute your LLM API to TaskWeaver. Create a new Python script .py in the taskweaver/llm folder. Import the CompletionService, LLMServiceConfig and EmbeddingService from taskweaver.llm.base and other necessary libraries. from injector import inject from taskweaver.llm.base import CompletionService, EmbeddingService, LLMServiceConfig from taskweaver.llm.util import ChatMessageType ... Create a new class YourLLMServiceConfig that inherits from LLMServiceConfig and implements the _configure method. In this method, you can set the name, API key, model name, backup model name, and embedding model name of your LLM. class YourLLMServiceConfig(LLMServiceConfig): def _configure(self) -> None: self._set_name(\"your_llm_name\") shared_api_key = self.llm_module_config.api_key self.api_key = self._get_str( \"api_key\", shared_api_key, ) shared_model = self.llm_module_config.model self.model = self._get_str( \"model\", shared_model if shared_model is not None else \"your_llm_model_name\", ) shared_backup_model = self.llm_module_config.backup_model self.backup_model = self._get_str( \"backup_model\", shared_backup_model if shared_backup_model is not None else self.model, ) shared_embedding_model = self.llm_module_config.embedding_model self.embedding_model = self._get_str( \"embedding_model\", shared_embedding_model if shared_embedding_model is not None else self.model, ) Create a new class YourLLMService that inherits from CompletionService and EmbeddingService and implements the chat_completion and get_embeddings methods. class YourLLMService(CompletionService, EmbeddingService): @inject def __init__(self, config: YourLLMServiceConfig): self.config = config pass def chat_completion( self, messages: List[ChatMessageType], stream: bool = True, temperature: Optional[float] = None, max_tokens: Optional[int] = None, top_p: Optional[float] = None, stop: Optional[List[str]] = None, **kwargs: Any, ) -> Generator[ChatMessageType, None, None]: pass def get_embeddings(self, strings: List[str]) -> List[List[float]]: pass Note: We set stream mode by default in chat_completion. You need to use self.config to get the configuration variables of your LLM API (e.g., api key/model name) in YourLLMService class. The get_embeddings method is optional. If you need to import other libraries for your LLM API, please import them in __init__ function of YourLLMService class. You can refer to QWen dashscope library import for an example. Register your LLM service in taskweaver/llm/__init__.py by adding your LLM service to the LLMApi __init__ function . ...... from .your_llm_name import YourLLMService # import your LLM service here class LLMApi(object): @inject def __init__(self, config: LLMModuleConfig, injector: Injector) -> None: self.config = config self.injector = injector if self.config.api_type in [\"openai\", \"azure\", \"azure_ad\"]: self._set_completion_service(OpenAIService) ...... elif self.config.api_type == \"your_llm_name\": self._set_completion_service(YourLLMService) # register your LLM service here else: raise ValueError(f\"API type {self.config.api_type} is not supported\") if self.config.embedding_api_type in [\"openai\", \"azure\", \"azure_ad\"]: self._set_embedding_service(OpenAIService) ...... elif self.config.embedding_api_type == \"azure_ml\": self.embedding_service = PlaceholderEmbeddingService( \"Azure ML does not support embeddings yet. Please configure a different embedding API.\", ) # register your embedding service here, if do not have embedding service, please use `PlaceholderEmbeddingService` referring to the above line elif self.config.embedding_api_type == \"your_llm_name\": self._set_embedding_service(YourLLMService) else: raise ValueError( f\"Embedding API type {self.config.embedding_api_type} is not supported\", ) Configurate taskweaver_config.json file in the project dir based on your implemented LLM API. Run the following command to test your LLM API. If the LLM API is successfully set up, you will see the response from your LLM API. cd ./scripts python llm_api_test.py You also can specify the project dir and query to be sent to your LLM API by using the following command: python llm_api_test.py --project --query \"hello, what can you do?\"","s":"Customized LLM API","u":"/TaskWeaver/docs/llms/customized_llm_api","h":"","p":193},{"i":196,"t":"Groq was founded in 2016 by Chief Executive Officer Jonathan Ross, a former Google LLC engineer who invented the search giant's TPU machine learning processors. Go to Groq and register an account and get the API key from here. More details can be found here. Install the required packages groq. pip install groq Add the following configuration to taskweaver_config.json: { \"llm.api_base\": \"https://console.groq.com/\", \"llm.api_key\": \"YOUR_API_KEY\", \"llm.api_type\": \"groq\", \"llm.model\": \"mixtral-8x7b-32768\" } tip NOTE: llm.model is the model name of Groq LLM API. You can find the model name in the Groq LLM model list. Start TaskWeaver and chat with TaskWeaver. You can refer to the Quick Start for more details.","s":"GroqChat","u":"/TaskWeaver/docs/llms/groq","h":"","p":195},{"i":198,"t":"info Keywords AI is a unified developer platform where you can call 150+ LLM using the OpenAI format with one API key and get insights into your AI products. With 2 lines of code, you can build better AI products with complete observability. Sign in Keywords AI and generate an API key to call 150+ LLMs. tip The full list of supported models by Keywords AI can be found in the page. Add the following content to your taskweaver_config.json file: { \"llm.api_type\":\"openai\", \"llm.api_base\": \"https://api.keywordsai.co/api/\", \"llm.api_key\": \"Your_Keywords_AI_API_Key\", \"llm.model\": \"gpt-4o\", } info If the configuration does not work, please refer to Keywords AI documents to locally test whether you can send requests to the LLM. Open a new terminal, start TaskWeaver and chat. You can refer to the Quick Start for more details. Suppose you want your AI products to be more robust and have better observability, such as having fallback models when primary models fail or knowing more about user activities. In that case, you can add parameters like fallback_models and customer_identifier in the extra_body param from OpenAI.","s":"Keywords AI","u":"/TaskWeaver/docs/llms/Keywords-AI","h":"","p":197},{"i":200,"t":"info LiteLLM provides a unified interface to call 100+ LLMs using the same Input/Output format, including OpenAI, Huggingface, Anthropic, vLLM, Cohere, and even custom LLM API server. Taking LiteLLM as the bridge, many LLMs can be onboarded to TaskWeaver. Here we use the OpenAI Proxy Server provided by LiteLLM to make configuration. Install LiteLLM Proxy and configure the LLM server by following the instruction here. In general, there are a few steps: Install the package pip install litellm[proxy] Setup the API key and other necessary environment variables which vary by LLM. Taking Cohere as an example, it is required to setup export COHERE_API_KEY=my-api-key. Run LiteLLM proxy server by litellm --model MODEL_NAME --drop_params, for example, in Cohere, the model name can be command-nightly. The drop-params argument is used to ensure the API compatibility. Then, a server will be automatically started on http://0.0.0.0:8000. tip The full list of supported models by LiteLLM can be found in the page. Add the following content to your taskweaver_config.json file: { \"llm.api_base\": \"http://0.0.0.0:8000\", \"llm.api_key\": \"anything\", \"llm.model\": \"gpt-3.5-turbo\" } info llm.api_key and llm.model are mainly used as placeholder for API call, whose actual values are not used. If the configuration does not work, please refer to LiteLLM documents to locally test whether you can send requests to the LLM. Open a new terminal, start TaskWeaver and chat. You can refer to the Quick Start for more details.","s":"LiteLLM","u":"/TaskWeaver/docs/llms/liteLLM","h":"","p":199},{"i":202,"t":"In some cases, you may want to use different LLMs for different components. For example, you may want to use OpenAI GPT-4 for the Planner but use Google gemini-pro for the CodeInterpreter. In this part, we show you how to use different LLMs for different components. If you need only one LLM, you can have only the primary LLM settings in the taskweaver_config.json file. If you need multiple LLMs, you need to have ext_llms.llm_configs in the taskweaver_config.json file to specify the extra LLMs for different components. In the following, we show you how to configure the taskweaver_config.json file to use multiple LLMs. \"llm.api_type\":\"openai\", \"llm.api_base\": \"https://api.openai.com/v1\", \"llm.api_key\": \"YOUR_API_KEY\", \"llm.model\": \"gpt-3.5-turbo-1106\", \"llm.response_format\": \"json_object\" \"ext_llms.llm_configs\": { \"llm_A\": { \"llm.api_type\": \"openai\", \"llm.api_base\": \"https://api.openai.com/v1\", \"llm.api_key\": \"YOUR_API_KEY\", \"llm.model\": \"gpt-4-1106-preview\", \"llm.response_format\": \"json_object\", }, \"llm_B\": { \"llm.api_type\": \"google_genai\", \"llm.api_key\": \"YOUR_API_KEY\", \"llm.model\": \"gemini-pro\", }, }, The primary LLM settings are specified in the llm. fields and it is mandatory. ext_llms.llm_configs is optional and is a dict of extra LLMs for different components. If you do not specify it, only the primary LLM will be used. Specify the LLMs for different components in the taskweaver_config.json. For example, we want to use OpenAI GPT-4 for the Planner and use Google gemini-pro for the CodeInterpreter. \"planner.llm_alias\": \"llm_A\", \"code_generator.llm_alias\": \"llm_B\" tip If you do not specify the LLM for a component, the primary LLM will be used by default. In the above example, GPT-3.5-turbo-1106 will be used for both the Planner and the CodeInterpreter.","s":"Multi LLM APIs","u":"/TaskWeaver/docs/llms/multi-llm","h":"","p":201},{"i":204,"t":"Go to Ollama and follow the instructions to serve a LLM model on your local environment. We provide a short example to show how to configure the ollama in the following, which might change if ollama makes updates. install ollama and serve LLMs in local ## Install ollama on Linux & WSL2 curl https://ollama.ai/install.sh | sh ## Run the serving ollama serve Open another terminal and run: ollama run llama2:13b tip We recommend deploying the LLM with a parameter scale exceeding 13B for enhanced performance (such as Llama 2 13B). info When serving LLMs via Ollama, it will by default start a server at http://localhost:11434, which will later be used as the API base in taskweaver_config.json. Add following configuration to taskweaver_config.json: { \"llm.api_base\": \"http://localhost:11434\", \"llm.api_key\": \"ARBITRARY_STRING\", \"llm.api_type\": \"ollama\", \"llm.model\": \"llama2:13b\" } NOTE: llm.api_base is the URL started in the Ollama LLM server and llm.model is the model name of Ollama LLM, it should be same as the one you served before. Start TaskWeaver and chat with TaskWeaver. You can refer to the Quick Start for more details.","s":"Ollama","u":"/TaskWeaver/docs/llms/ollama","h":"","p":203},{"i":206,"t":"QWen (Tongyi Qianwen) is a LLM developed by Alibaba. Go to QWen and register an account and get the API key. More details can be found here (in Chinese). Install the required packages dashscope. pip install dashscope Add the following configuration to taskweaver_config.json: { \"llm.api_type\": \"qwen\", \"llm.model\": \"qwen-max\", \"llm.api_key\": \"YOUR_API_KEY\" } NOTE: llm.model is the model name of QWen LLM API. You can find the model name in the QWen LLM model list. Start TaskWeaver and chat with TaskWeaver. You can refer to the Quick Start for more details.","s":"QWen","u":"/TaskWeaver/docs/llms/qwen","h":"","p":205},{"i":208,"t":"Create an account on OpenAI and get your API key. Add the following to your taskweaver_config.json file: { \"llm.api_type\":\"openai\", \"llm.api_base\": \"https://api.openai.com/v1\", \"llm.api_key\": \"YOUR_API_KEY\", \"llm.model\": \"gpt-4\", \"llm.response_format\": \"json_object\" } tip llm.model is the model name you want to use. You can find the list of models here. info For model versions equal or after 1106, llm.response_format can be set to json_object. However, for the earlier models which do not support JSON response explicitly, llm.response_format should be set to null. Start TaskWeaver and chat with TaskWeaver. You can refer to the Quick Start for more details.","s":"OpenAI","u":"/TaskWeaver/docs/llms/openai","h":"","p":207},{"i":210,"t":"The primary purpose of the memory module is to store the information that is required to maintain the context of the conversation. You can find the implementation code in taskweaver/memory/memory.py. We have introduced various concepts such as Round and Post in the concepts section, which are the building blocks of the Memory module. There are two kinds of information that are stored in the memory: Conversation History: This includes the conversation that has happened so far between the user and various roles in TaskWeaver. Shared Memory: This includes the information that is purposefully shared between the roles in TaskWeaver. Let's briefly discuss the two types of information.","s":"Memory","u":"/TaskWeaver/docs/memory","h":"","p":209},{"i":212,"t":"A TaskWeaver agent is composed of one or more roles. Each role have its own conversation history. In TaskWeaver, we orchestrate the roles in a star topology, where the Planner is at the center and the roles are at the periphery. The User only interacts with the Planner, and the Planner interacts with the roles, making planning and instructing other roles to carry out the tasks, as shown in the figure below. Though this fixed orchestration is a limitation, it reserves the independence of the roles. Each role does not need to know about the other roles, even their existence. For any peripheral role, the Planner is the only point of contact, i.e., its real \"User\", and it only focuses on its own expertise. It is the Planner's responsibility to leverage multiple roles for complex tasks and orchestrate them to achieve the goal. The conversation history of each role is stored in the memory. When a role needs to prepare a response, it can refer to the conversation history to understand the context of the conversation. Specifically, this typically is the process of preparing a prompt for the LLM, containing all the previous chat rounds and the current request. A role only cares about the Posts sent or received by itself.","s":"Role-wise Conversation History","u":"/TaskWeaver/docs/memory","h":"#role-wise-conversation-history","p":209},{"i":214,"t":"While we want to maintain the independence of the roles, there are cases where the roles need to share information. One common case is about information sharing between two peripheral roles. For example, the Planner may ask the Code Interpreter to generate code based on the guide provided by a Data Scientist role. In this case, the Planner needs to share the guide with the Code Interpreter. In theory, this can be done by the Planner repeating the guide to the Code Interpreter, shown in the figure below. However, we found that the Planner can fail to repeat the guide accurately, leading to miscommunication. Another use case is a role needing to store some control state that is shared among all roles. For example, the agent needs to handle multiple types of tasks. The \"type\" of the current user request is only determined by one role (e.g., namely TypeDeterminer), but all other roles need to know the type to prepare the response. In this case, the role that determines the type can store the type in the shared memory, and other roles can refer to the shared memory to get the type. tip The number in the arrows indicates the order of the information flow. For the aforementioned reasons, we introduced the concept of Shared Memory. The Shared Memory is a special Attachment that is appended to the post of the role who wants to share information. The attachment has a instance of SharedMemoryEntry in the extra field. The SharedMemoryEntry has the following fields: class SharedMemoryEntry: type: Literal[...] # The type of the shared memory entry content: str # The content of the shared information scope: Literal[\"round\", \"conversation\"] # The scope of the shared information id: str # The id of the shared memory entry Understanding the scope field is crucial to understand the Shared Memory. The scope field determines the scope of the shared information. If the scope is round, the shared information is only effective for the current round. Otherwise, if the scope is conversation, the shared information is effective for the whole conversation. One question may be why we do not store the shared information in a separate data structure, instead of the Attachment in Posts. The reason is that, if a Round fails, we need to remove the shared information within that Round as well. By storing the shared information in the Attachment, as a part of the Post, we can easily filter out the shared information based on the Round status. This is similar with designing the logging system of database operations in a transaction. The consumer of the shared information can use type to retrieve the shared memory entries that is effective for the current chat round, including the conversational ones. However, if one role has multiple shared memory entries with the same type, only the latest one is effective. In other words, later shared memory entries overwrite the previous ones with the same type from the same role. A reference implementation of the Shared Memory is provided in the taskweaver/planner/planner.py, where the Planner role shares the details of the plan with other roles.","s":"Shared Memory","u":"/TaskWeaver/docs/memory","h":"#shared-memory","p":209},{"i":216,"t":"TaskWeaver is a code-first agent framework for seamlessly planning and executing data analytics tasks. This innovative framework interprets user requests through coded snippets and efficiently coordinates a variety of plugins in the form of functions to execute data analytics or workflow automation tasks. Highlighted Features Rich data structure - TaskWeaver allows you to work with rich data structures in Python, such as Lists, Dictionaries, or Pandas DataFrames, instead of having to restrict to text strings. Customized algorithms - TaskWeaver allows you to encapsulate your own algorithms or functions into plugins (in the form of Python functions), and orchestrate them to achieve complex tasks. Incorporating domain-specific knowledge - TaskWeaver is designed to be easily incorporating domain-specific knowledge, such as the knowledge or experience in task planning and code generation, to improve the reliability of task execution. Stateful conversation - TaskWeaver is designed to support stateful conversation which means you can interact with your data in memory across multiple chat rounds. Code verification - TaskWeaver is designed to verify the generated code before execution. It can detect potential issues in the generated code and automatically fix them. Security consideration - TaskWeaver supports running code inside a sandbox environment to prevent malicious code execution. It also provides a basic session management to keep different users' data separate. Easy to debug - TaskWeaver is designed to be easy to debug. We have detailed logs, metrics, and traces, instrumenting using OpenTelemetry, to help you understand what is going on under the simple chat interface. Easy to extend - TaskWeaver is designed to be easily extended to accomplish more complex tasks. Beyond the plugins, you can create extra roles, define how they interact with the Planner and orchestrate them to achieve more complex tasks. Easy to use - TaskWeaver is designed to be easy to use. We provide a set of sample plugins and a tutorial to help you get started. We also provide a all-in-one Docker image to help you quickly play with TaskWeaver.","s":"Overview","u":"/TaskWeaver/docs/overview","h":"","p":215},{"i":218,"t":"In practice, you may want to have multiple plugins that share the same implementation. For example, you may want to have two plugins that both pull data from a database, but one pulls data from database A and the other pulls data from database B. In this case, the plugin implementation code is the same, but the plugin configuration is different. It would be cumbersome to copy and paste the same implementation code to two different files. To solve this problem, TaskWeaver allows you to have multiple plugin configurations that share the same implementation. Here is an example of the plugin configuration for the two plugins that pull data from database A and B respectively: The configuration for the plugin that pulls data from database A: name: sql_pull_data_from_A code: sql_pull_data ... description: >- Pull data from a SQL database A. The database A contains information about merchandise sales. examples: |- df, description = sql_pull_data_from_A(\"pull data from time_series table\") parameters: ... returns: ... configurations: ... sqlite_db_path: /path/to/sqlite_A.db The configuration for the plugin that pulls data from database B: name: sql_pull_data_from_B code: sql_pull_data ... description: >- Pull data from a SQL database B. The database B contains information about customer information. examples: |- df, description = sql_pull_data_from_B(\"pull data from time_series table\") parameters: ... returns: ... configurations: ... sqlite_db_path: /path/to/sqlite_B.db Let's discuss the differences between the two configurations. First, you can see that the name field is different, and the names are different from the python file name (without extension) which is sql_pull_data.py. This name is used in CodeInterpreter for code generation. So, you can see that in the examples field, the function name is sql_pull_data_from_A and sql_pull_data_from_B, respectively. Second, you can see that the code field is the same, and the code file name is sql_pull_data.py. This means that the two plugins share the same implementation code. The code field is optional, and if you don't specify it, the plugin name will be used as the code file name without the extension. Third, you can see that the configurations field is different, and the sqlite_db_path is different. This means that the two plugins have different configurations. This is typically the key reason why you want to have multiple plugin configurations that share the same implementation. Finally, you can see that the description field is different, and the descriptions are different. This is important because the Planner and the CodeInterpreter will use the description to make decisions and generate code. The two descriptions should be explicit enough to distinguish the two plugins. Otherwise, the Planner and the CodeInterpreter may not be able to make the right decisions.","s":"Multiple YAML files to one Python implementation","u":"/TaskWeaver/docs/plugin/multi_yaml_single_impl","h":"","p":217},{"i":220,"t":"When you meet the situation where you want to have multiple plugin configurations that share the same implementation, you can use the code field to specify the code file name, and use the configurations field to specify the configurations. The name field is used to distinguish the plugins, and the description field is used to help the Planner and the CodeInterpreter make right decisions.","s":"Conclusion","u":"/TaskWeaver/docs/plugin/multi_yaml_single_impl","h":"#conclusion","p":217},{"i":222,"t":"In this tutorial, we will introduce how to develop a strawman plugin in TaskWeaver. This plugin can render a input text in ascii art.","s":"An Example of Developing a New Plugin","u":"/TaskWeaver/docs/plugin/how_to_develop_a_new_plugin","h":"","p":221},{"i":224,"t":"Create a python file named ascii_render.py in the plugins folder. The file name should be the same as the plugin name. The plugin name is defined in the plugin schema. In this example, the plugin name is ascii_render. The following code is the template of the plugin implementation. from taskweaver.plugin import Plugin, register_plugin @register_plugin class PluginTemplate(Plugin): def __call__(self, *args, **kwargs): \"\"\"Implementation Starts\"\"\" result, description = YourImplementation() \"\"\"Implementation Ends\"\"\" # if your want to add artifact from the execution result, uncomment the following code # self.ctx.add_artifact( # name=\"artifact\", # file_name=\"artifact.csv\", # type=\"df\", # val=result, # ) return result, description The typical way of implementing the plugin is to change the code between Implementation Starts and Implementation Ends. Note that the return are two variables result and description. The result stores whatever output required for follow-up processing (e.g., a DataFrame). The description is a string to describe the result. Let's make some changes to the code and the result is as follows: from taskweaver.plugin import Plugin, register_plugin @register_plugin class AsciiRenderPlugin(Plugin): def __call__(self, text: str): import pyfiglet ascii_art_str = pyfiglet.figlet_format(text, font='isometric1') return ascii_art_str Note that this function depends on the package pyfiglet, so we need to install it with pip install pyfiglet.","s":"Implement the python code","u":"/TaskWeaver/docs/plugin/how_to_develop_a_new_plugin","h":"#implement-the-python-code","p":221},{"i":226,"t":"Next, we need to configure the schema so that the LLM can understand the function of the plugin. In the schema, there are several fields that should be filled, including name, enabled, required, description, parameters and returns. Please check Plugin Introduction for more details. Create a yaml file named ascii_render.yaml and copy the following content into it. name: ascii_render enabled: true required: true description: >- This plugin renders the input text into ASCII art form. The input should be a string and the output is also a string in ASCII art. For example, result = ascii_render(text='Hello World'). parameters: - name: text type: str required: true description: >- This is the input text to be rendered into ASCII art form. returns: - name: result type: str description: >- The rendered text in ASCII art.","s":"Configure the schema","u":"/TaskWeaver/docs/plugin/how_to_develop_a_new_plugin","h":"#configure-the-schema","p":221},{"i":228,"t":"After the plugin is implemented and configured, we can call the plugin in the conversation. The full conversation is as follows: ========================================================= _____ _ _ __ |_ _|_ _ ___| | _ | | / /__ ____ __ _____ _____ | |/ _` / __| |/ /| | /| / / _ \\/ __ `/ | / / _ \\/ ___/ | | (_| \\__ \\ < | |/ |/ / __/ /_/ /| |/ / __/ / |_|\\__,_|___/_|\\_\\|__/|__/\\___/\\__,_/ |___/\\___/_/ ========================================================= TaskWeaver: I am TaskWeaver, an AI assistant. To get started, could you please enter your request? Human: render ABC in ascii art >>> [INIT_PLAN] 1. Render the text 'ABC' into ASCII art >>> [PLAN] 1. Instruct CodeInterpreter to render the text 'ABC' into ASCII art >>> [CURRENT_PLAN_STEP] 1. Instruct CodeInterpreter to render the text 'ABC' into ASCII art >>> [SEND_TO] CodeInterpreter >>> [MESSAGE] Please render the text 'ABC' into ASCII art >>> [PLANNER->CODEINTERPRETER] Please render the text 'ABC' into ASCII art >>> [PYTHON] # Call the plugin function to render the text 'ABC' into ASCII art ascii_art_result = ascii_render(\"ABC\") ascii_art_result >>> [VERIFICATION] NONE >>> [STATUS] SUCCESS >>> [RESULT] The execution of the generated python code above has succeeded The result of above Python code after execution is: ___ ___ ___ /\\ \\ /\\ \\ /\\ \\ /::\\ \\ /::\\ \\ /::\\ \\ /:/\\:\\ \\ /:/\\:\\ \\ /:/\\:\\ \\ /::\\~\\:\\ \\ /::\\~\\:\\__\\ /:/ \\:\\ \\ /:/\\:\\ \\:\\__\\ /:/\\:\\ \\:|__| /:/__/ \\:\\__\\ \\/__\\:\\/:/ / \\:\\~\\:\\/:/ / \\:\\ \\ \\/__/ \\::/ / \\:\\ \\::/ / \\:\\ \\ /:/ / \\:\\/:/ / \\:\\ \\ /:/ / \\::/__/ \\:\\__\\ \\/__/ ~~ \\/__/ >>> [CODEINTERPRETER->PLANNER] The following python code has been executed: # Call the plugin function to render the text 'ABC' into ASCII art ascii_art_result = ascii_render(\"ABC\") ascii_art_result The execution of the generated python code above has succeeded The result of above Python code after execution is: ___ ___ ___ /\\ \\ /\\ \\ /\\ \\ /::\\ \\ /::\\ \\ /::\\ \\ /:/\\:\\ \\ /:/\\:\\ \\ /:/\\:\\ \\ /::\\~\\:\\ \\ /::\\~\\:\\__\\ /:/ \\:\\ \\ /:/\\:\\ \\:\\__\\ /:/\\:\\ \\:|__| /:/__/ \\:\\__\\ \\/__\\:\\/:/ / \\:\\~\\:\\/:/ / \\:\\ \\ \\/__/ \\::/ / \\:\\ \\::/ / \\:\\ \\ /:/ / \\:\\/:/ / \\:\\ \\ /:/ / \\::/__/ \\:\\__\\ \\/__/ ~~ \\/__/ >>> [INIT_PLAN] 1. Render the text 'ABC' into ASCII art >>> [PLAN] 1. Instruct CodeInterpreter to render the text 'ABC' into ASCII art >>> [CURRENT_PLAN_STEP] Report the ASCII art to the user >>> [SEND_TO] User >>> [MESSAGE] Here is the text 'ABC' rendered in ASCII art: ___ ___ ___ /\\ \\ /\\ \\ /\\ \\ /::\\ \\ /::\\ \\ /::\\ \\ /:/\\:\\ \\ /:/\\:\\ \\ /:/\\:\\ \\ /::\\~\\:\\ \\ /::\\~\\:\\__\\ /:/ \\:\\ \\ /:/\\:\\ \\:\\__\\ /:/\\:\\ \\:|__| /:/__/ \\:\\__\\ \\/__\\:\\/:/ / \\:\\~\\:\\/:/ / \\:\\ \\ \\/__/ \\::/ / \\:\\ \\::/ / \\:\\ \\ /:/ / \\:\\/:/ / \\:\\ \\ /:/ / \\::/__/ \\:\\__\\ \\/__/ ~~ \\/__/ >>> [PLANNER->USER] Here is the text 'ABC' rendered in ASCII art: ___ ___ ___ /\\ \\ /\\ \\ /\\ \\ /::\\ \\ /::\\ \\ /::\\ \\ /:/\\:\\ \\ /:/\\:\\ \\ /:/\\:\\ \\ /::\\~\\:\\ \\ /::\\~\\:\\__\\ /:/ \\:\\ \\ /:/\\:\\ \\:\\__\\ /:/\\:\\ \\:|__| /:/__/ \\:\\__\\ \\/__\\:\\/:/ / \\:\\~\\:\\/:/ / \\:\\ \\ \\/__/ \\::/ / \\:\\ \\::/ / \\:\\ \\ /:/ / \\:\\/:/ / \\:\\ \\ /:/ / \\::/__/ \\:\\__\\ \\/__/ ~~ \\/__/ TaskWeaver: Here is the text 'ABC' rendered in ASCII art: ___ ___ ___ /\\ \\ /\\ \\ /\\ \\ /::\\ \\ /::\\ \\ /::\\ \\ /:/\\:\\ \\ /:/\\:\\ \\ /:/\\:\\ \\ /::\\~\\:\\ \\ /::\\~\\:\\__\\ /:/ \\:\\ \\ /:/\\:\\ \\:\\__\\ /:/\\:\\ \\:|__| /:/__/ \\:\\__\\ \\/__\\:\\/:/ / \\:\\~\\:\\/:/ / \\:\\ \\ \\/__/ \\::/ / \\:\\ \\::/ / \\:\\ \\ /:/ / \\:\\/:/ / \\:\\ \\ /:/ / \\::/__/ \\:\\__\\ \\/__/ ~~ \\/__/ info Check the FAQs if you have any issues in developing a plugin before submitting an issue on GitHub.","s":"Call the plugin","u":"/TaskWeaver/docs/plugin/how_to_develop_a_new_plugin","h":"#call-the-plugin","p":221},{"i":231,"t":"The plugin-only mode is a restricted mode of TaskWeaver that only allows you to use plugins. Compared to the full mode, the plugin-only mode has the following restrictions: The generated code only contains the calls to the plugins. For example, the following code only calls the ascii_render plugin and does not contain any \"free-form\" code. r1=ascii_render(**{\"text\":\"Hello\"}) r1 Only the plugins with plugin_only: true in the yaml file will be loaded. For example, the following plugin will be loaded in the plugin-only mode: name: ascii_render plugin_only: true ... If this field is not specified, the default value is false. For plugins in the plugin-only mode, the argument type can only be str, int, boolean, or float. Other types such as DataFrame are not allowed. Essentially, we consider these plugins only produce \"text-like\" output that can be directly consumed by the LLM. To support the plugin-only mode, we developed a new role called PluginOrchestrator. To enable the plugin-only mode, you can add the configuration \"session.roles\": [\"planner\", \"code_interpreter_plugin_only\"] in the project configuration file taskweaver_config.json. info Although the plugin-only mode is restricted, it is still useful in some scenarios. For example, you may want to use TaskWeaver to only generate the code to call a certain plugin, and you want to get the response from the plugin directly, without generating any other code for safety reasons.","s":"What is the plugin-only mode?","u":"/TaskWeaver/docs/plugin/plugin_only","h":"#what-is-the-plugin-only-mode","p":229},{"i":233,"t":"The plugin-only mode is implemented based on the function calling mode of LLMs. In this mode, the LLM is trained to generate a JSON object that contains the function name and the arguments. For example, the following JSON object is generated by the LLM: { \"function\": \"ascii_render\", \"arguments\": { \"text\": \"Hello\" } } With this JSON object, we assemble the code to call the plugin: r1=ascii_render(**{\"text\":\"Hello\"}) r1 Then, we execute the code and get the response from the plugin. Therefore, the code is not directly generated by the LLM in the plugin-only mode.","s":"How is the plugin-only mode implemented?","u":"/TaskWeaver/docs/plugin/plugin_only","h":"#how-is-the-plugin-only-mode-implemented","p":229},{"i":235,"t":"Currently, the plugin-only mode is only supported by OpenAI models ZhipuAI models Likely other models that are compatible with the OpenAI models will also support the plugin-only mode.","s":"Which models support the plugin-only mode?","u":"/TaskWeaver/docs/plugin/plugin_only","h":"#which-models-support-the-plugin-only-mode","p":229},{"i":237,"t":"This is the command line interface for TaskWeaver. You can interact with TaskWeaver through this interface. Follow the instruction in Quick Start to clone the repository and fill in the necessary configurations. Run the following command in terminal. # assume you are in the TaskWeaver folder python -m taskweaver -p ./project/ # -p is the path to the project directory This will start the TaskWeaver process, and you can interact with it through the command line interface. If everything goes well, you will see the following prompt: ========================================================= _____ _ _ __ |_ _|_ _ ___| | _ | | / /__ ____ __ _____ _____ | |/ _` / __| |/ /| | /| / / _ \\/ __ `/ | / / _ \\/ ___/ | | (_| \\__ \\ < | |/ |/ / __/ /_/ /| |/ / __/ / |_|\\__,_|___/_|\\_\\|__/|__/\\___/\\__,_/ |___/\\___/_/ ========================================================= TaskWeaver: I am TaskWeaver, an AI assistant. To get started, could you please enter your request? Human: ___ We have provided a set of commands to interact with TaskWeaver. You can type help to see the list of available commands. All commands start with a / character. For example, you can type /help to see the list of available commands. TaskWeaver ▶ I am TaskWeaver, an AI assistant. To get started, could you please enter your request? Human ▶ /help TaskWeaver Chat Console ----------------------- /load : load a file /info: print the information of the current session /reset: reset the session /clear: clear the console /exit: exit the chat console /help: print this help message /save: save the chat history of the current session for experience extraction The table of commands supported by TaskWeaver is as follows: Command Description /load Load a file by its absolute path, e.g., /load /home/taskweaver/sample.csv /info Print the session id and the active roles of the current session /reset Reset the current session and start a new session /clear Clear the console content /exit Exit the chat console /help Print the help message /save Save the chat history of the current session for experience extraction tip When TaskWeaver runs generated code, the CWD (current working directory) is set to the project/workspace/session_id/cwd directory. If you need to use relative paths in the generated code, the cwd directory should be the base path.","s":"Terminal","u":"/TaskWeaver/docs/usage/cmd","h":"","p":236},{"i":239,"t":"Plugins are the units that could be orchestrated by TaskWeaver's CodeInterpreter. One could view the plugins as tools that the LLM can utilize to accomplish certain tasks. In TaskWeaver, each plugin is represented as a Python function that can be called within the generated code snippet. One concrete example would be pulling data from database and apply anomaly detection. The generated code (simplified) looks like follows: df, data_description = sql_pull_data(query=\"pull data from time_series table\") anomaly_df, anomaly_description = anomaly_detection(df, time_col_name=\"ts\", value_col_name=\"val\") The generated code snippet above calls two plugins: sql_pull_data and anomaly_detection. The sql_pull_data plugin pulls data from a database, and the anomaly_detection plugin detects anomalies in the data.","s":"Plugin Introduction","u":"/TaskWeaver/docs/plugin/plugin_intro","h":"","p":238},{"i":241,"t":"A plugin involves two files: Plugin Implementation: a Python file that defines the plugin Plugin Schema: a file in yaml that defines the schema of the plugin","s":"Plugin Structure","u":"/TaskWeaver/docs/plugin/plugin_intro","h":"#plugin-structure","p":238},{"i":243,"t":"The plugin function needs to be implemented in Python. To be coordinated with the orchestration by TaskWeaver, a plugin python file consists of two parts: Plugin function implementation code TaskWeaver plugin decorator Here we exhibit an example of the anomaly detection plugin as the following code: import pandas as pd from pandas.api.types import is_numeric_dtype from taskweaver.plugin import Plugin, register_plugin @register_plugin class AnomalyDetectionPlugin(Plugin): def __call__(self, df: pd.DataFrame, time_col_name: str, value_col_name: str): \"\"\" anomaly_detection function identifies anomalies from an input dataframe of time series. It will add a new column \"Is_Anomaly\", where each entry will be marked with \"True\" if the value is an anomaly or \"False\" otherwise. :param df: the input data, must be a dataframe :param time_col_name: name of the column that contains the datetime :param value_col_name: name of the column that contains the numeric values. :return df: a new df that adds an additional \"Is_Anomaly\" column based on the input df. :return description: the description about the anomaly detection results. \"\"\" try: df[time_col_name] = pd.to_datetime(df[time_col_name]) except Exception: print(\"Time column is not datetime\") return if not is_numeric_dtype(df[value_col_name]): try: df[value_col_name] = df[value_col_name].astype(float) except ValueError: print(\"Value column is not numeric\") return mean, std = df[value_col_name].mean(), df[value_col_name].std() cutoff = std * 3 lower, upper = mean - cutoff, mean + cutoff df[\"Is_Anomaly\"] = df[value_col_name].apply(lambda x: x < lower or x > upper) anomaly_count = df[\"Is_Anomaly\"].sum() description = \"There are {} anomalies in the time series data\".format(anomaly_count) self.ctx.add_artifact( name=\"anomaly_detection_results\", # a brief description of the artifact file_name=\"anomaly_detection_results.csv\", # artifact file name type=\"df\", # artifact data type, support chart/df/file/txt/svg val=df, # variable to be dumped ) return df, description You need to go through the following steps to register a plugin: import the TaskWeaver plugin decorator from taskWeaver.plugin import Plugin, register_plugin create your plugin class inherited from Plugin parent class (e.g., AnomalyDetectionPlugin(Plugin)), which is decorated by @register_plugin implement your plugin function in __call__ method of the plugin class. We provide an example process of developing a new plugin in this tutorial. tip A good practice in a plugin implementation is to return a description of the result in natural language. As LLMs only understand natural language, it is important to let the model understand what the execution result is. In the example implementation above, the description says how many anomalies are detected. In other cases such as loading a csv file, a good description could be showing the schema of the loaded data. This description can be used by the LLM to plan the next steps.","s":"Plugin Implementation","u":"/TaskWeaver/docs/plugin/plugin_intro","h":"#plugin-implementation","p":238},{"i":245,"t":"If the functionality of your plugin depends on additional libraries or packages, it is essential to ensure that they are installed before proceeding. If you wish to persist intermediate results, such as data, figures, or prompts, in your plugin implementation, TaskWeaver provides an add_artifact API that allows you to store these results in the workspace. In the example we provide, if you have performed anomaly detection and obtained results in the form of a CSV file, you can utilize the add_artifact API to save this file as an artifact. The artifacts are stored in the project/workspace/session_id/cwd folder in the project directory. self.ctx.add_artifact( name=\"anomaly_detection_results\", # a brief description of the artifact file_name=\"anomaly_detection_results.csv\", # artifact file name type=\"df\", # artifact data type, support chart/df/file/txt/svg val=df, # variable to be dumped )","s":"Important Notes","u":"/TaskWeaver/docs/plugin/plugin_intro","h":"#important-notes","p":238},{"i":247,"t":"The plugin schema is composed of several parts: *name: The main function name of the Python code. enabled: determine whether the plugin is enabled for selection during conversations. The default value is true. plugin_only: determine if this plugin is enabled under the plugin-only mode. The default value is false. code: the code file name of the plugin. The default value is the same as the plugin name. *descriptions: A brief description that introduces the plugin function. *parameters: This section lists all the input parameter information. It includes the parameter's name, type, whether it is required or optional, and a description providing more details about the parameter. *returns: This section lists all the return value information. It includes the return value's name, type, and description that provides information about the value that is returned by the function. configurations: the configuration parameters for the plugin. The default value is an empty dictionary. tip The addition of any extra fields or missing of mandatory fields (marked by * above) would result in a validation failure within the plugin schema. The plugin schema is required to be written in YAML format. Here is the plugin schema example of the above anomaly detection plugin: name: anomaly_detection enabled: true plugin_only: false required: false description: >- anomaly_detection function identifies anomalies from an input DataFrame of time series. It will add a new column \"Is_Anomaly\", where each entry will be marked with \"True\" if the value is an anomaly or \"False\" otherwise. parameters: - name: df type: DataFrame required: true description: >- the input data from which we can identify the anomalies with the 3-sigma algorithm. - name: time_col_name type: str required: true description: name of the column that contains the datetime - name: value_col_name type: str required: true description: name of the column that contains the numeric values. returns: - name: df type: DataFrame description: >- This DataFrame extends the input DataFrame with a newly-added column \"Is_Anomaly\" containing the anomaly detection result. - name: description type: str description: This is a string describing the anomaly detection results. info Without specifying the code field, the plugin schema will use the plugin name as the code file name. For example, the plugin name is anomaly_detection and the code file name is anomaly_detection.py. In cases where the plugin name is not the same as the code file name, you can specify the code name (code file) in the plugin schema to ensure clarity and accuracy. For example, the plugin name is anomaly_detection and the code file name is anomaly_detection_code.py. Then, you can specify the code name in the plugin schema as follows: code: anomaly_detection_code Note that the code file name should be the same as the code name without the .py extension. Refer to Multiple YAML files to one Python implementation for more information on how to use this feature. info When using common code that requires some configuration parameter modifications for different plugins, it is important to specify these configuration parameters in the plugin schema. The configuration parameters are specified in the plugin schema as follows: configurations: key1: value1 key2: value2 These configuration parameters can be accessed in the plugin implementation as follows: self.config.get(\"key1\") self.config.get(\"key2\") info When this plugin is enabled for the plugin-only mode, set the plugin_only field to true. The default value is false. Note that all plugins will be loaded in the non-plugin-only mode which is the default mode. But in the plugin-only mode, only the plugins with plugin_only: true will be loaded.","s":"Plugin Schema","u":"/TaskWeaver/docs/plugin/plugin_intro","h":"#plugin-schema","p":238},{"i":250,"t":"You can install TaskWeaver by running the following command: # [optional] create a conda environment to isolate the dependencies # conda create -n taskweaver python=3.10 # conda activate taskweaver # clone the repository git clone https://github.com/microsoft/TaskWeaver.git cd TaskWeaver # install the requirements pip install -r requirements.txt","s":"Installation","u":"/TaskWeaver/docs/quickstart","h":"#installation","p":248},{"i":252,"t":"TaskWeaver runs as a process, you need to create a project directory to store plugins and configuration files. We provided a sample project directory in the project folder. You can copy the project folder to your workspace. A project directory typically contains the following files and folders: 📦project ┣ 📜taskweaver_config.json # the project configuration file for TaskWeaver ┣ 📂plugins # the folder to store plugins ┣ 📂planner_examples # the folder to store planner examples ┣ 📂codeinterpreter_examples # the folder to store code interpreter examples ┣ 📂logs # the folder to store logs, will be generated after program starts ┗ 📂workspace # the directory stores session data, will be generated after program starts ┗ 📂 session_id ┣ 📂ces # the folder used by the code execution service ┣ 📂cwd # the current working directory to run the generated code ┗ other session data","s":"Project Directory","u":"/TaskWeaver/docs/quickstart","h":"#project-directory","p":248},{"i":254,"t":"Before running TaskWeaver, you need to provide your OpenAI API key and other necessary information. You can do this by editing the taskweaver_config.json file. If you are using Azure OpenAI, you need to set the following parameters in the taskweaver_config.json file:","s":"OpenAI Configuration","u":"/TaskWeaver/docs/quickstart","h":"#openai-configuration","p":248},{"i":256,"t":"{ \"llm.api_base\": \"https://xxx.openai.azure.com/\", \"llm.api_key\": \"your_api_key\", \"llm.api_type\": \"azure\", \"llm.api_version\": \"the api version\", \"llm.model\": \"the model name, e.g., gpt-4\" # In Azure OpenAI, the model name is the deployment_name }","s":"Azure OpenAI","u":"/TaskWeaver/docs/quickstart","h":"#azure-openai","p":248},{"i":258,"t":"{ \"llm.api_key\": \"the api key\", \"llm.model\": \"the model name, e.g., gpt-4\" } 💡 Only the latest OpenAI API supports the json_object response format. If you are using an older version of OpenAI API, you need to set the \"llm.response_format\"=null in the taskweaver_config.json file. More configuration options can be found in the configuration documentation.","s":"OpenAI","u":"/TaskWeaver/docs/quickstart","h":"#openai","p":248},{"i":260,"t":"# assume you are in the TaskWeaver folder cloned from the repository python -m taskweaver -p ./project/ # -p is the path to the project directory This will start the TaskWeaver process and you can interact with it through the command line (CLI) interface. If everything goes well, you will see the following prompt: ========================================================= _____ _ _ __ |_ _|_ _ ___| | _ | | / /__ ____ __ _____ _____ | |/ _` / __| |/ /| | /| / / _ \\/ __ `/ | / / _ \\/ ___/ | | (_| \\__ \\ < | |/ |/ / __/ /_/ /| |/ / __/ / |_|\\__,_|___/_|\\_\\|__/|__/\\___/\\__,_/ |___/\\___/_/ ========================================================= TaskWeaver: I am TaskWeaver, an AI assistant. To get started, could you please enter your request? Human: ___ There are other ways to start TaskWeaver: A Chainlit UI interface: TaskWeaver provides an experimental web-based interface to interact with the system. A Library: You can also use TaskWeaver as a library in your Python code. The all-in-one Docker image: We provide a Docker image that contains all the dependencies to run TaskWeaver.","s":"Start TaskWeaver","u":"/TaskWeaver/docs/quickstart","h":"#start-taskweaver","p":248},{"i":262,"t":"warning Please note that this Web UI is a playground for development and testing purposes only. Be cautious when running the Web UI, as anyone can access it if the port is open to the public. If you want to deploy a Web UI for production, you need to address security concerns, such as authentication and authorization, making sure the server is secure. Follow the instruction in Quick Start to clone the repository and fill in the necessary configurations. Install the chainlit package by pip install -U \"chainlit<1.1.300\" if you don't have it in your environment. note Chainlit has a major update in version 1.1.300 that may cause compatibility issues. Please make sure you have the correct version installed. Start the service by running the following command. # assume you are in the TaskWeaver folder cd playground/UI/ # make sure you are in playground/UI/ folder chainlit run app.py Open the browser with http://localhost:8000 if it doesn't open automatically. info We now support uploading files using the Web UI. Below are some screenshots of the Web UI:","s":"Web UI","u":"/TaskWeaver/docs/usage/webui","h":"","p":261},{"i":264,"t":"If you want to use TaskWeaver as a library, you can refer to the following code example: from taskweaver.app.app import TaskWeaverApp # This is the folder that contains the taskweaver_config.json file and not the repo root. Defaults to \"./project/\" app_dir = \"./project/\" app = TaskWeaverApp(app_dir=app_dir) session = app.get_session() user_query = \"hello, what can you do?\" response_round = session.send_message(user_query) print(response_round.to_dict()) Essentially, you need to create a TaskWeaverApp object and then get a session object from it. Each time, you can send a message to TaskWeaver by calling session.send_message(user_query). The return value of session.send_message(user_query) is a Round object, which contains the response from TaskWeaver. A round is a conversation round between the user and TaskWeaver, which contains a list of posts. An example of the Round object is shown below. To better understand the structure, you can refer to the Concepts section. { \"id\": \"round-20231201-043134-218a2681\", \"user_query\": \"hello, what can you do?\", \"state\": \"finished\", \"post_list\": [ { \"id\": \"post-20231201-043134-10eedcca\", \"message\": \"hello, what can you do?\", \"send_from\": \"User\", \"send_to\": \"Planner\", \"attachment_list\": [] }, { \"id\": \"post-20231201-043141-86a2aaff\", \"message\": \"I can help you with various tasks, such as counting rows in a data file, detecting anomalies in a dataset, searching for products on Klarna, summarizing research papers, and pulling data from a SQL database. Please provide more information about the task you want to accomplish, and I'll guide you through the process.\", \"send_from\": \"Planner\", \"send_to\": \"User\", \"attachment_list\": [ { \"id\": \"atta-20231201-043141-6bc4da86\", \"type\": \"init_plan\", \"content\": \"1. list the available functions\" }, { \"id\": \"atta-20231201-043141-6f29f6c9\", \"type\": \"plan\", \"content\": \"1. list the available functions\" }, { \"id\": \"atta-20231201-043141-76186c7a\", \"type\": \"current_plan_step\", \"content\": \"1. list the available functions\" } ] } ] } tip If you need to see the intermediate states of the conversation, you need to implement a SessionEventHandler class and pass it at calling session.send_message(user_query, event_handler=your_event_handler). Find more information about the event handler in this section.","s":"Library","u":"/TaskWeaver/docs/usage/library","h":"","p":263},{"i":266,"t":"In this document, we will show you how to run TaskWeaver using the All-in-One Docker Image. danger Please note that the All-in-One Docker Image is for development and testing purposes only. It is running in the local mode, which means that the execution of the code snippets is done in the same container. Malicious code can be executed in the container, so please be cautious when running the All-in-One Docker Image.","s":"All-in-One Docker Image","u":"/TaskWeaver/docs/usage/docker","h":"","p":265},{"i":268,"t":"You need to have Docker installed on your machine. For Windows and macOS users, you can use Docker Desktop. You can download it from Docker's official website. For Linux users, you can install following the instructions in the Docker's official website. Please find the installation guide for your specific Linux distribution.","s":"Prerequisites","u":"/TaskWeaver/docs/usage/docker","h":"#prerequisites","p":265},{"i":270,"t":"There are two versions of the TaskWeaver All-in-One Docker Image: taskweavercontainers/taskweaver-all-in-one:latest: This version includes the Planner and CodeInterpreter roles only. You can use this container for code generation and execution tasks. taskweavercontainers/taskweaver-all-in-one:latest-ws: This version includes an additional WebSearch role which can search the web for information. As it requires dependencies to the sentence-transformers library, it is larger. Open a terminal and run the following command to obtain the TaskWeaver image: docker pull taskweavercontainers/taskweaver-all-in-one:latest # if you want to use the version with the WebSearch role # docker pull taskweavercontainers/taskweaver-all-in-one:latest-ws Once the image is pulled, you can run the TaskWeaver container using the following command: docker run -it -e LLM_API_BASE= \\ -e LLM_API_KEY= \\ -e LLM_API_TYPE= \\ -e LLM_MODEL= \\ taskweavercontainers/taskweaver-all-in-one:latest If you want to run TaskWeaver in UI mode, you can use the following command: docker run -it -e LLM_API_BASE= \\ -e LLM_API_KEY= \\ -e LLM_API_TYPE= \\ -e LLM_MODEL= \\ -p 8000:8000 \\ --entrypoint /app/entrypoint_chainlit.sh \\ taskweavercontainers/taskweaver-all-in-one:latest Then you can access the TaskWeaver Web UI by visiting http://localhost:8000 in your web browser.","s":"Run TaskWeaver using the All-in-One Docker Image","u":"/TaskWeaver/docs/usage/docker","h":"#run-taskweaver-using-the-all-in-one-docker-image","p":265},{"i":272,"t":"You can mount your local project directory to the container. For example, you can use the following command: docker run -it -e LLM_API_BASE= \\ -e LLM_API_KEY= \\ -e LLM_API_TYPE= \\ -e LLM_MODEL= \\ # -e TASKWEAVER_UID=$(id -u) \\ # uncomment if your host OS is not Windows # -e TASKWEAVER_GID=$(id -g) \\ # uncomment if your host OS is not Windows --mount type=bind,source=,target=/app/TaskWeaver/project/ \\ taskweavercontainers/taskweaver-all-in-one:latest Then you can edit the taskweaver_config.json file in your local project directory to configure TaskWeaver. In addition, you also can customize the plugins and examples in your local project directory. The structure of the project directory can be referred to the taskweaver/project directory.","s":"How to run TaskWeaver on your own project directory","u":"/TaskWeaver/docs/usage/docker","h":"#how-to-run-taskweaver-on-your-own-project-directory","p":265},{"i":274,"t":"You can mount your local directory to the container. For example, you can use the following command: docker run -it -e LLM_API_BASE= \\ -e LLM_API_KEY= \\ -e LLM_API_TYPE= \\ -e LLM_MODEL= \\ # -e TASKWEAVER_UID=$(id -u) \\ # uncomment if your host OS is not Windows # -e TASKWEAVER_GID=$(id -g) \\ # uncomment if your host OS is not Windows --mount type=bind,source=,target=/app/TaskWeaver/local/ \\ taskweavercontainers/taskweaver-all-in-one:latest Then you can access your local files in the container by visiting the /app/TaskWeaver/local/ directory. You can load a file under the /app/TaskWeaver/local/ directory in the TaskWeaver CLI with the /load command. For example, you can load a file named example.csv by running the following command: TaskWeaver ▶ I am TaskWeaver, an AI assistant. To get started, could you please enter your request? Human ▶ /load /app/TaskWeaver/local/example.csv Human ▶ display the column names of the loaded file","s":"How to access your local files in the container","u":"/TaskWeaver/docs/usage/docker","h":"#how-to-access-your-local-files-in-the-container","p":265}],"index":{"version":"2.3.9","fields":["t"],"fieldVectors":[["t/41",[0,5.429,1,6.012,2,3.14,3,2.584,4,1.967,5,6.155,6,4.593,7,2.86,8,3.961,9,3.142,10,0.663,11,6.015,12,4.946,13,2.438,14,1.471,15,2.584,16,5.429,17,6.155,18,4.308,19,4.593,20,1.699,21,2.931,22,4.951,23,3.26,24,5.429,25,2.021]],["t/44",[26,2.094,27,0.882,28,1.973,29,2.657,30,1.115,31,2.147,32,1.122,33,4.695,34,5.916,35,2.381,36,2.26,37,3.553,38,3.849,39,1.681,40,2.202]],["t/47",[10,0.618,14,2.011,27,0.754,30,1.19,32,1.02,41,2.927,42,2.408,43,1.932,44,4.28,45,1.576,46,3.655,47,2.126,48,1.276,49,3.291,50,4.014,51,2.482,52,4.014,53,5.735,54,4.613,55,5.058,56,5.735,57,2.731,58,3.438,59,2.559,60,1.703,61,4.28,62,4.613,63,4.613,64,3.943,65,2.559,66,4.28,67,2.927,68,4.014,69,4.613,70,5.058]],["t/49",[3,2.135,10,0.714,14,1.938,21,3.513,26,1.587,28,1.849,29,2.627,30,1.102,31,1.628,44,3.795,45,1.538,46,2.595,47,1.51,51,2.869,64,4.063,65,2.269,71,4.485,72,2.073,73,2.421,74,4.09,75,2.014,76,2.505,77,1.958,78,4.485,79,3.124,80,4.687,81,3.559,82,4.485,83,3.795,84,4.485,85,4.485,86,4.485,87,3.795,88,1.958,89,3.559,90,4.485,91,2.486,92,4.641,93,5.084,94,4.485,95,4.485,96,4.485,97,2.595,98,2.595,99,4.485,100,4.485,101,2.014,102,1.905,103,5.084,104,5.084]],["t/51",[10,0.595,14,1.834,21,2.63,26,2.183,27,0.92,43,1.861,45,1.49,48,1.229,51,3.32,52,4.895,64,3.041,65,3.121,69,4.442,74,5.624,80,4.6,91,1.861,92,3.866,105,2.693,106,2.252,107,3.311,108,2.819,109,3.222,110,5.523,111,2.77,112,2.936,113,4.122,114,3.653,115,4.122,116,5.523,117,6.992,118,6.992,119,4.442,120,6.992,121,4.871,122,4.442,123,5.523,124,2.63,125,5.523]],["t/53",[4,1.81,10,0.614,14,1.887,25,2.773,27,0.34,32,1.016,36,0.87,45,1.314,48,0.575,49,1.482,50,1.808,60,1.954,75,1.024,76,2.003,77,1.566,83,3.034,88,1.566,89,1.808,101,1.991,106,2.049,107,3.715,108,1.319,111,1.024,112,1.085,124,1.23,126,4.042,127,3.425,128,4.449,129,2.584,130,2.279,131,1.928,132,1.928,133,1.657,134,1.623,135,3.518,136,2.078,137,1.808,138,1.482,139,1.387,140,3.034,141,1.566,142,2.767,143,4.309,144,2.584,145,1.928,146,2.078,147,1.549,148,2.078,149,1.808,150,1.19,151,1.709,152,1.928,153,1.928,154,2.279,155,2.279,156,2.602,157,0.322,158,1.368,159,2.078,160,2.078,161,3.27,162,2.078,163,1.808,164,1.928,165,2.075,166,2.279,167,2.584,168,2.078,169,5.804,170,5.026,171,2.584,172,2.279,173,1.808,174,1.085,175,2.393,176,2.554,177,1.808,178,2.279,179,1.808,180,2.584,181,2.584,182,6.884,183,1.928,184,4.065,185,5.698,186,1.319,187,4.065,188,5.698,189,1.273,190,1.623,191,1.19,192,1.808,193,4.065,194,1.368,195,3.75,196,5.466,197,4.59,198,3.581,199,2.437,200,4.042,201,4.042,202,5.025,203,1.423,204,0.942,205,1.549,206,2.279,207,2.584,208,1.482,209,2.584,210,2.279,211,1.808,212,1.19,213,5.025,214,2.584,215,1.808,216,2.584,217,2.584,218,3.412,219,1.069,220,2.584,221,5.698,222,1.069,223,2.584,224,2.584,225,1.623,226,1.709,227,2.003,228,1.269,229,1.808,230,2.584,231,1.709,232,2.279,233,2.584,234,1.19,235,0.995,236,2.584,237,1.153,238,2.279,239,2.584]],["t/55",[3,2.735,20,1.797,25,2.54,72,2.655,75,2.58,77,2.98,106,2.655,128,4.098,143,4.439,186,3.324,189,3.208,192,4.559,240,5.238,241,3.208,242,5.744,243,5.744,244,2.085,245,5.238,246,5.744]],["t/57",[4,1.555,14,1.413,27,0.777,45,1.058,61,4.412,106,2.41,134,3.714,135,4.138,136,4.755,139,2.014,140,4.412,156,2.482,157,0.736,191,2.724,197,4.374,204,2.156,208,4.186,212,2.724,247,3.91,248,2.173,249,4.412,250,5.911,251,5.214,252,4.755,253,5.911,254,5.911,255,5.868,256,5.911,257,4.412,258,5.911,259,5.214,260,5.445,261,4.755,262,4.412,263,4.412,264,2.342]],["t/59",[10,0.636,14,1.828,28,1.072,30,0.711,31,1.369,35,1.518,36,1.441,38,2.453,39,1.48,45,1.416,73,2.036,76,2.106,108,2.182,111,1.694,141,2.604,148,6.152,150,1.97,156,2.838,157,0.532,173,2.993,194,2.265,200,3.439,208,4.389,219,1.124,228,1.842,247,3.904,248,2.273,249,5.045,265,3.772,266,3.772,267,1.908,268,4.732,269,4.405,270,3.904,271,3.219,272,3.538,273,4.276,274,1.908,275,1.335,276,2.563,277,3.772,278,4.951,279,1.795,280,1.369,281,1.989,282,2.265,283,2.687,284,2.036,285,3.772,286,1.85,287,3.772,288,5.206,289,3.709,290,1.908,291,4.276,292,3.772,293,3.772,294,1.97,295,5.903,296,4.276,297,3.772,298,4.276,299,3.772,300,4.276,301,3.439,302,3.191,303,3.772,304,3.439,305,3.191,306,4.276,307,4.276,308,3.772,309,3.772,310,4.276,311,3.439]],["t/61",[3,2.789,77,3.015,127,2.789,189,3.272,197,3.981,208,4.491,212,3.06,247,5.177,248,2.058,312,5.858,313,3.657,314,3.727,315,3.811,316,5.858]],["t/63",[3,1.032,4,1.457,7,0.872,10,0.477,13,2.195,14,1.389,16,1.244,20,0.678,27,0.582,30,0.808,32,1.257,35,1.967,37,1.301,45,1.083,46,0.72,47,0.73,48,0.547,57,0.671,60,1.315,64,0.777,65,1.097,68,3.404,76,1.924,79,0.946,91,0.475,108,0.72,109,1.8,124,1.554,133,2.369,141,0.946,148,1.134,156,1.032,157,0.723,165,0.72,174,0.592,186,2.828,189,2.396,198,2.051,199,0.845,200,1.134,201,1.976,203,1.353,208,3.47,219,1.027,228,1.632,234,1.504,235,0.543,241,2.182,247,3.665,248,2.051,249,3.305,264,0.973,267,2.333,268,0.987,272,1.957,274,1.097,275,1.382,276,2.342,277,2.167,278,2.915,279,2.042,281,0.475,285,1.244,288,1.244,289,0.886,292,1.244,293,1.244,294,0.65,302,1.053,317,4.429,318,0.886,319,1.053,320,2.327,321,1.134,322,1.41,323,2.457,324,0.629,325,0.671,326,1.063,327,1.41,328,1.41,329,1.134,330,2.455,331,2.167,332,2.159,333,4,334,3.665,335,0.933,336,1.625,337,0.933,338,0.933,339,0.933,340,1.21,341,1.544,342,1.544,343,1.666,344,2.457,345,0.946,346,1.257,347,1.134,348,3.911,349,5.228,350,5.228,351,1.41,352,1.41,353,2.457,354,1.41,355,1.41,356,1.41,357,4.507,358,8.182,359,6.778,360,1.625,361,3.172,362,1.21,363,1.254,364,1.625,365,1.41,366,1.134,367,1.41,368,1.41,369,1.244,370,4.289,371,2.457,372,1.976,373,2.457,374,1.053,375,1.244,376,3.906,377,2.457,378,0.747,379,0.933,380,0.987,381,1.834,382,3.142,383,3.404,384,2.167,385,6.885,386,4.893,387,5.179,388,5.334,389,4.135,390,4.429,391,2.457,392,3.906,393,2.457,394,4.863,395,3.906,396,5.334,397,6.047,398,4.429,399,4.863,400,2.457,401,2.457,402,2.457,403,4.429,404,4.429,405,4.429,406,2.457,407,2.489,408,2.439,409,4.429,410,4.429,411,2.457,412,1.834,413,3.216,414,1.544,415,2.457,416,1.132,417,2.457,418,0.987,419,1.413,420,3.264,421,3.264,422,1.608]],["t/65",[4,1.45,8,2.056,10,0.418,13,1.538,14,1.533,21,1.848,27,0.725,30,0.645,40,1.811,45,1.149,48,0.863,60,2.394,67,1.981,69,3.122,91,1.308,97,1.981,101,1.538,102,1.454,107,2.327,111,2.185,139,2.037,141,1.495,157,0.686,165,3.275,191,1.788,194,2.056,197,2.327,212,2.541,215,2.717,228,2.003,235,2.691,260,4.116,264,1.538,274,1.732,279,1.63,284,1.848,290,2.462,308,5.659,343,1.981,345,2.691,362,1.912,379,2.567,383,2.717,388,3.423,419,1.679,423,2.327,424,4.729,425,2.567,426,3.423,427,2.896,428,3.122,429,2.896,430,3.023,431,3.423,432,3.122,433,4.788,434,3.423,435,2.717,436,3.165,437,2.227,438,3.971,439,3.881,440,4.865,441,2.567,442,3.881,443,2.896,444,5.62,445,3.881,446,3.423,447,3.881,448,3.881,449,3.881,450,3.881,451,3.881,452,5.659,453,3.881,454,3.122,455,3.881,456,3.306,457,3.881,458,2.439,459,3.881,460,3.881,461,3.881,462,3.881,463,6.162,464,3.122,465,2.327,466,2.717,467,2.056,468,3.423,469,3.881,470,3.423,471,1.981,472,1.848,473,3.122,474,5.515,475,3.881]],["t/67",[3,2.116,7,1.216,10,0.369,18,2.398,20,1.939,23,3.167,27,0.786,28,1.953,29,2.612,30,1.168,32,0.718,35,1.216,39,0.859,43,1.154,45,0.902,47,1.776,57,1.631,60,1.018,65,1.529,67,2.572,72,1.397,77,2.303,102,1.284,112,2.116,124,1.631,147,3.021,157,0.744,165,1.749,190,2.153,197,2.054,211,2.398,222,1.572,244,2.352,252,2.756,260,4.462,270,2.266,271,1.631,281,2.221,284,1.631,286,1.483,318,2.153,324,1.529,330,2.153,343,2.572,345,1.941,407,2.4,422,1.688,423,2.054,424,4.768,425,5.261,433,2.557,435,2.398,437,1.966,438,1.688,472,1.631,476,3.022,477,3.237,478,3.248,479,3.022,480,2.153,481,2.557,482,1.249,483,3.022,484,4.462,485,4.445,486,4.809,487,5.979,488,1.483,489,3.426,490,2.775,491,5.04,492,1.579,493,3.426,494,3.426,495,5.04,496,5.04,497,3.783,498,4.445,499,3.426,500,3.426,501,5.04,502,1.397,503,3.022,504,3.022,505,2.557,506,2.756,507,3.022,508,4.462,509,6.197,510,5.979,511,4.054,512,4.054,513,3.426,514,1.483,515,2.398,516,3.022,517,3.426,518,2.266,519,2.756,520,2.054,521,4.054,522,3.426,523,3.426,524,2.756,525,2.557,526,3.021,527,5.273]],["t/69",[7,1.911,10,0.404,23,1.987,27,0.828,28,1.578,30,1.298,32,1.038,40,1.232,58,2.249,59,1.674,72,1.529,97,1.915,189,1.848,222,0.986,244,2.202,252,3.017,343,1.915,345,1.445,424,3.227,425,4.164,426,3.309,427,2.799,437,4.35,484,5.963,485,6.888,497,3.089,498,3.309,508,4.699,509,7.448,511,6.098,512,6.641,514,1.623,515,2.626,527,6.068,528,2.481,529,3.751,530,2.799,531,3.751,532,3.309,533,2.152,534,3.227,535,6.879,536,3.947,537,3.751,538,3.751,539,3.751,540,6.296,541,4.748,542,3.751,543,5.436,544,3.751,545,5.383,546,6.296,547,4.748,548,3.751,549,3.751,550,3.751,551,3.768,552,3.751,553,3.751,554,3.751,555,3.751,556,3.751,557,3.751,558,3.017,559,3.751,560,3.751,561,3.751,562,3.751,563,4.33,564,3.751,565,3.751,566,3.751,567,3.751,568,3.751,569,3.751,570,2.626,571,3.751,572,3.751,573,3.751,574,3.751,575,3.751,576,3.751,577,3.751,578,3.751]],["t/71",[10,0.437,12,3.764,21,1.932,26,1.776,27,0.533,30,0.674,32,0.811,36,1.367,38,2.328,39,1.017,40,1.332,43,1.367,59,1.81,98,2.904,101,1.607,105,1.563,108,2.071,111,2.604,130,3.578,138,2.328,139,1.57,141,2.192,153,3.028,164,3.028,165,2.071,191,3.028,212,1.869,219,1.067,235,2.532,240,3.263,241,1.998,244,1.299,259,5.019,260,3.028,264,1.607,283,2.549,304,3.263,311,3.263,330,2.549,345,1.563,383,4.601,386,4.347,424,3.94,425,2.683,427,3.028,436,2.328,444,4.577,467,3.774,468,5.019,470,3.578,497,2.328,502,2.32,508,6.085,511,3.263,512,6.257,514,1.755,521,5.287,532,3.578,536,2.328,541,5.019,543,3.028,547,3.578,551,2.84,579,3.578,580,4.057,581,3.263,582,3.578,583,4.057,584,6.285,585,5.69,586,4.057,587,4.057,588,3.263,589,4.057,590,2.803,591,3.578,592,3.263,593,4.057,594,3.578,595,4.057,596,4.057,597,2.234,598,4.057,599,3.263,600,4.057,601,4.057,602,7.125,603,3.578,604,2.84,605,3.028,606,4.057,607,4.057,608,4.057,609,1.869,610,4.057,611,4.057,612,4.057,613,4.057,614,4.057,615,4.057]],["t/73",[10,0.695,20,1.996,26,2.015,27,0.642,32,0.92,40,1.603,43,1.645,45,1.378,80,3.87,91,2.175,111,1.934,121,5.694,137,3.417,157,0.958,204,1.78,235,1.88,237,2.179,244,2.315,280,1.563,320,2.05,324,2.179,329,3.926,379,3.229,383,3.417,424,4.929,425,5.09,463,7.06,483,6.788,486,3.926,533,2.801,584,4.305,605,3.643,616,2.688,617,5.694,618,4.305,619,4.881,620,6.455,621,3.87,622,3.444,623,4.881,624,3.067,625,4.881,626,4.881,627,4.881,628,3.926,629,4.881,630,3.926,631,6.455,632,3.926,633,4.881,634,4.881,635,3.067,636,4.881,637,3.229,638,3.229]],["t/75",[2,2.898,4,1.815,10,0.583,12,3.579,14,1.293,20,1.494,30,0.899,31,1.732,36,1.823,41,3.523,45,1.481,60,2.257,75,2.144,77,2.085,97,2.762,101,2.144,102,2.028,105,2.085,108,2.762,132,4.039,156,2.272,157,0.674,164,4.039,222,1.423,244,2.21,261,4.353,264,2.144,301,4.353,362,2.666,429,4.039,514,2.987,597,2.98,639,4.773,640,4.337,641,3.579,642,2.866,643,3.788,644,4.353,645,2.987,646,4.039,647,4.039,648,4.039,649,5.412,650,5.552,651,5.552,652,4.039,653,4.353,654,5.412,655,4.353,656,4.353]],["t/77",[2,3.63,4,1.969,10,0.565,14,1.253,35,1.861,39,1.314,41,2.676,45,1.501,60,2.432,61,5.048,62,4.217,77,2.019,97,2.676,102,1.964,106,2.758,109,2.416,132,3.913,133,2.138,139,1.447,157,0.932,204,1.912,222,2.08,237,2.34,255,4.217,261,4.217,271,2.496,290,2.34,472,2.496,514,2.269,526,3.143,609,2.416,639,4.624,640,4.25,645,3.423,657,2.138,658,3.913,659,5.243,660,4.217,661,5.243,662,6.764,663,3.294,664,4.624,665,4.217]],["t/79",[2,3.279,7,1.61,10,0.489,20,1.252,27,0.596,28,1.137,30,1.021,31,1.967,32,0.993,45,1.398,47,2.445,52,3.175,60,2.07,65,2.743,75,2.762,77,1.747,102,1.699,126,3.648,138,2.602,157,0.868,175,2.16,179,3.175,183,3.385,219,1.193,222,2.203,237,2.024,244,1.967,314,2.926,318,2.85,319,3.385,325,2.16,345,1.747,422,3.028,423,2.719,432,4.943,477,2.09,514,3.563,524,3.648,526,4.178,536,4.619,645,3.016,647,4.587,663,3.862,666,6.146,667,6.146,668,4.302,669,3.175,670,3.385,671,3.385,672,4.001,673,4.001,674,3.385,675,4.001,676,4.587,677,4.535,678,4.535]],["t/81",[4,1.189,7,1.605,10,0.66,20,1.92,22,3.636,23,2.394,26,1.914,27,0.594,30,0.751,32,1.063,41,2.307,42,1.898,43,1.523,45,1.098,47,2.216,48,1.006,59,2.017,60,1.821,65,2.017,73,2.152,97,2.307,101,1.791,132,3.374,138,2.594,157,0.563,174,2.575,177,3.164,198,2.84,237,3.106,248,1.612,279,2.575,318,2.84,319,4.576,329,3.636,345,1.741,363,3.13,477,2.825,478,3.676,514,3.712,536,4.967,616,3.376,670,3.374,672,3.987,673,5.408,679,3.853,680,4.52,681,5.408,682,4.52,683,5.408,684,3.987,685,5.408,686,4.932,687,4.52,688,4.52,689,4.52,690,2.594,691,4.52,692,3.987,693,3.987,694,3.636,695,4.52,696,4.52,697,4.52,698,4.52,699,3.374]],["t/83",[2,3.26,4,2.041,7,1.772,9,2.547,10,0.706,20,2.142,26,1.558,30,1.29,39,1.251,41,2.547,45,0.893,47,1.945,60,1.482,112,2.095,141,1.922,191,2.299,199,2.991,222,2.217,262,4.888,275,1.558,294,2.299,325,2.376,408,2.748,422,3.227,443,5.457,477,2.299,478,3.602,514,3.488,520,3.926,526,3.926,536,4.195,640,3.136,645,2.834,650,5.268,651,5.268,658,3.724,663,4.116,681,4.401,683,4.401,700,4.99,701,4.99,702,4.99,703,4.99,704,4.401,705,3.493,706,4.99,707,3.3,708,4.99]],["t/85",[3,1.327,6,3.542,7,1.122,10,0.732,14,0.755,15,1.327,18,4.993,20,0.872,21,2.714,23,1.674,26,1.482,27,0.75,28,0.792,32,0.903,41,2.423,42,1.993,43,1.065,45,0.85,46,1.613,47,1.41,48,0.703,57,1.505,63,2.542,74,5.462,77,1.217,92,4.435,138,2.723,142,1.74,145,2.359,147,1.895,165,1.613,176,1.986,222,2.001,229,2.212,231,3.139,237,1.41,244,1.825,248,0.831,280,2.028,289,2.982,301,2.542,315,2.723,324,1.41,345,1.217,396,2.788,423,1.895,427,2.359,476,2.788,497,1.813,514,3.53,520,4.071,543,2.359,579,2.788,590,1.557,609,1.456,616,1.74,617,2.788,640,1.986,642,1.674,644,2.542,648,2.359,663,3.582,674,2.359,704,2.788,709,3.818,710,4.746,711,5.7,712,8.249,713,1.74,714,7.133,715,2.788,716,4.746,717,2.359,718,3.16,719,5.027,720,2.514,721,4.746,722,7.398,723,6.336,724,2.09,725,3.16,726,3.16,727,2.788,728,2.542,729,2.542,730,3.16,731,5.7,732,2.359,733,3.16,734,1.986,735,7.611,736,4.746,737,3.16,738,3.16,739,3.16,740,4.746,741,5.7,742,2.212,743,4.746,744,6.336,745,4.746,746,3.322,747,2.359,748,3.16,749,3.16,750,4.746,751,4.746,752,3.16,753,4.186,754,2.359,755,2.212,756,2.788,757,2.542,758,2.788,759,2.359,760,2.788,761,3.16,762,2.212,763,3.16,764,1.986,765,3.16,766,2.788,767,2.359]],["t/87",[4,0.845,10,0.824,14,0.768,27,0.423,28,1.443,29,2.281,30,0.534,32,1.224,37,4.384,46,2.453,47,0.954,48,1.069,49,1.844,51,1.39,72,1.31,73,1.53,75,2.843,91,1.083,127,2.018,150,1.48,151,2.125,157,0.952,173,2.249,174,2.018,194,1.702,204,1.752,218,1.769,222,0.845,235,2.461,237,1.434,244,2.189,264,1.273,276,1.926,280,2.297,313,2.646,325,2.741,346,1.238,378,3.801,418,2.249,436,1.844,438,1.583,456,1.926,516,2.834,534,1.926,581,2.585,604,4.472,609,1.48,622,3.042,624,4.51,635,3.617,638,3.179,645,2.491,679,3.02,727,2.834,734,4.015,768,5.356,769,2.585,770,3.213,771,2.834,772,3.213,773,2.398,774,3.364,775,5.078,776,4.806,777,6.389,778,3.213,779,3.213,780,5.574,781,4.788,782,5.757,783,4.472,784,2.249,785,2.585,786,4.806,787,2.585,788,3.213,789,5.078,790,4.296,791,2.453,792,2.545,793,1.706,794,2.585,795,2.249,796,2.834,797,5.501,798,3.865,799,2.834,800,3.213,801,2.834,802,2.834,803,1.844,804,3.213,805,3.213,806,3.213,807,3.213]],["t/89",[4,1.729,39,1.648,40,2.159,91,2.216,124,3.131,157,0.968,226,4.35,248,2.253,263,4.908,422,3.24,621,3.942,793,2.335,808,6.576,809,6.576,810,4.908,811,4.908,812,4.132]],["t/91",[9,2.729,32,0.976,45,1.353,59,3.677,60,1.588,88,3.07,133,2.18,157,0.665,205,3.205,222,1.801,237,2.386,264,3.158,346,2.06,374,5.112,378,2.832,471,2.729,502,2.793,622,3.262,637,3.537,792,4.003,812,5.297,813,3.205,814,3.373,815,3.991,816,4.301,817,5.347,818,5.641,819,5.51,820,7.558,821,3.991,822,3.496,823,6.85,824,3.36,825,5.347,826,5.347]],["t/93",[3,3.15,4,1.843,10,0.844,13,1.815,19,3.42,29,1.815,32,1.176,37,2.427,48,1.669,72,1.868,79,2.384,98,2.339,111,2.452,119,3.685,127,3.391,150,2.111,157,0.934,192,3.207,212,2.851,222,1.205,228,1.43,248,2.061,264,1.815,275,1.43,290,2.045,313,2.523,326,1.983,362,2.257,422,2.257,430,3.032,502,1.868,515,3.207,622,2.182,637,3.03,684,4.041,780,3.207,792,3.711,793,3.14,811,4.618,813,2.747,815,3.42,821,3.42,822,2.339,827,4.582,828,4.041,829,4.582,830,4.582,831,7.007,832,4.582,833,4.041,834,4.041,835,3.685,836,4.582,837,4.041,838,2.879,839,4.582,840,3.685]],["t/95",[2,1.745,4,1.093,10,0.448,14,1.591,23,2.202,27,0.547,28,1.451,29,3.106,30,1.337,31,1.331,32,1.271,37,3.527,43,1.4,45,1.356,47,1.978,48,1.482,60,1.978,101,2.293,133,1.695,150,3.779,157,0.517,163,2.91,175,1.979,222,1.093,228,1.298,248,1.751,272,2.492,275,1.807,279,1.745,280,1.331,294,2.667,325,3.733,326,3.75,343,3.399,465,3.47,492,1.915,502,2.936,534,3.47,604,2.91,645,2.505,656,4.656,768,4.32,790,3.102,837,3.667,841,4.97,842,2.749,843,2.492,844,3.667,845,3.667,846,5.106,847,5.793]],["t/97",[4,0.981,6,4.684,10,0.783,13,1.478,14,0.891,15,1.566,20,1.03,25,1.225,30,0.62,32,0.894,45,0.668,48,0.83,57,2.988,60,1.108,79,2.065,101,2.718,106,2.186,107,2.236,111,2.718,127,3.274,131,4.001,133,1.521,142,2.952,145,2.784,150,1.719,157,0.464,170,6.052,190,3.369,204,1.36,205,2.236,222,0.981,228,1.164,237,1.665,284,2.988,286,1.614,290,2.393,346,3.363,365,3.937,416,1.719,430,3.612,437,3.601,456,2.236,471,4.377,502,2.559,582,3.29,588,3,592,3,622,1.776,637,2.467,648,4.001,774,2.611,783,2.611,792,3.324,793,1.324,812,4.567,813,2.236,814,2.801,815,2.784,821,2.784,822,2.737,828,5.536,840,4.312,848,3,849,3.73,850,3.214,851,3.29,852,3.73,853,4.803,854,4.393,855,5.361,856,3.73,857,2.611,858,3.29,859,3.73,860,3.73,861,3.29,862,3.73,863,3.73]],["t/99",[3,0.951,4,1.633,10,0.57,13,2.096,19,2.732,20,1.271,21,1.079,23,1.939,24,1.998,26,0.707,27,0.764,28,1.761,29,0.898,30,1.131,31,1.172,32,1.192,33,1.586,43,0.763,45,0.406,48,1.382,49,2.101,51,0.98,80,3.48,91,2.092,98,1.869,105,2.517,106,1.493,111,1.45,112,0.951,113,1.691,127,2.221,133,0.924,153,2.732,155,1.998,157,0.658,158,1.2,164,1.691,174,2.608,175,1.079,177,1.586,183,1.691,204,1.335,219,1.633,222,0.596,226,4.108,227,1.116,228,1.438,234,1.044,237,1.011,241,1.116,248,0.963,264,1.45,267,1.011,271,1.743,280,1.693,284,1.079,286,1.584,326,1.993,346,2.037,361,1.116,362,1.116,363,1.869,365,1.3,366,2.945,378,1.2,383,1.586,416,1.687,424,3.48,430,3.802,438,1.116,441,1.499,452,5.121,454,1.822,456,1.358,466,1.586,467,2.802,471,2.7,472,1.079,478,1.116,492,1.044,521,1.822,528,1.499,590,1.116,621,2.195,622,3.639,624,1.424,628,1.822,630,2.945,635,3.324,638,1.499,734,2.3,773,2.732,774,2.563,791,2.351,793,1.3,803,1.3,810,1.691,813,1.358,814,1.634,824,1.424,838,2.894,843,2.195,851,1.998,864,4.255,865,2.266,866,4.665,867,3.229,868,4.606,869,3.661,870,4.606,871,2.266,872,1.822,873,2.945,874,2.266,875,1.998,876,7.519,877,3.661,878,3.661,879,2.266,880,2.266,881,1.822,882,1.3,883,1.822,884,2.266,885,2.266,886,2.266,887,2.266,888,4.665,889,2.266,890,3.661,891,2.266,892,1.822,893,2.266,894,2.266,895,1.998,896,2.266,897,2.266,898,2.266,899,2.266,900,2.266,901,2.266,902,1.998,903,2.266,904,2.266,905,2.266,906,2.266,907,2.266,908,1.822,909,2.266,910,2.266,911,2.266,912,2.266,913,2.266,914,2.266,915,3.661,916,2.266,917,2.266,918,1.998,919,2.266,920,3.948,921,3.661,922,2.266,923,4.606,924,2.266,925,2.732,926,1.822,927,1.822,928,1.822,929,0.898,930,1.822,931,2.266,932,2.266,933,2.266]],["t/101",[4,1.98,25,1.742,29,2.102,32,0.756,79,2.625,127,3.731,157,0.848,198,3.333,222,1.395,280,2.41,290,2.368,464,4.267,467,3.61,471,3.843,481,3.959,502,2.163,622,2.526,637,3.509,780,3.713,792,3.988,793,1.883,811,3.959,813,3.18,815,3.959,821,3.959,822,3.479,848,4.267,934,5.271,935,5.271,936,5.376,937,5.305,938,5.305,939,5.271,940,4.731]],["t/103",[4,1.837,8,1.423,10,0.753,21,1.279,25,0.882,27,0.353,28,0.673,30,1.049,32,1.197,37,4.562,45,0.481,46,1.371,48,0.932,49,1.542,59,1.199,75,2.042,88,1.615,91,1.412,105,1.615,127,1.76,150,1.931,157,0.641,163,1.881,174,2.164,191,1.931,194,1.423,212,1.238,218,4.182,219,1.102,235,1.985,248,1.355,267,1.199,270,2.772,271,1.279,276,1.611,280,1.864,282,1.423,284,2.454,286,1.163,314,1.279,346,2.861,347,2.161,362,2.539,363,1.371,378,3.084,408,1.48,422,1.324,424,3.49,430,1.163,441,2.772,443,2.005,456,1.611,472,2.454,518,1.777,520,1.611,604,2.934,616,1.48,621,1.611,622,3.185,624,4.203,635,4.203,657,1.095,720,2.73,734,2.634,762,1.881,768,2.005,773,2.005,774,3.607,780,5.199,781,5.416,789,3.697,790,3.128,791,1.371,792,1.423,793,1.83,796,2.37,797,4.145,798,2.161,802,2.37,803,1.542,814,1.199,822,2.972,841,4.345,864,3.371,866,4.546,867,2.37,872,4.145,875,2.37,920,5.774,925,4.345,926,5.078,927,2.161,939,1.881,941,2.687,942,3.34,943,2.687,944,4.192,945,2.687,946,4.192,947,2.687,948,2.687,949,2.37,950,4.192,951,5.154,952,2.687,953,2.687,954,3.128,955,2.37,956,2.687,957,2.687,958,2.687,959,2.687,960,2.687,961,4.192,962,5.154,963,2.687,964,2.687,965,2.161,966,2.687,967,2.161,968,2.687,969,2.687,970,2.687]],["t/105",[28,1.798,39,1.798,40,2.355,51,3.104]],["t/107",[10,0.811,18,3.713,25,2.238,26,1.656,36,2.296,39,1.708,40,2.238,43,1.787,48,1.768,73,2.526,77,3.061,98,2.708,128,3.61,139,2.268,143,3.044,150,2.444,168,4.267,176,3.333,191,2.444,228,2.626,244,1.698,245,4.267,262,3.959,280,1.698,281,2.296,284,2.526,313,2.921,314,3.585,315,3.91,326,2.949,793,1.883,888,4.679,971,4.679,972,4.679,973,5.305,974,4.679,975,3.18,976,6.815,977,3.959,978,2.81,979,4.679,980,3.959]],["t/109",[1,2.115,2,2.238,4,1.575,6,3.26,7,1.006,8,1.501,9,1.447,11,2.28,12,1.874,13,2.112,14,1.546,15,1.19,19,2.115,21,2.538,25,1.434,27,0.575,32,1.295,33,1.984,34,2.5,35,1.893,36,1.472,37,1.501,39,1.095,40,1.434,45,1.425,48,0.63,51,2.307,60,2.185,64,1.561,73,1.349,77,2.053,83,3.978,127,1.834,133,2.442,156,2.238,157,0.746,189,1.396,196,2.5,197,3.591,203,1.561,228,2.134,234,1.306,241,3.368,272,3.196,275,0.885,279,1.19,284,1.349,290,1.265,314,2.08,320,3.293,332,3.526,333,5.098,334,4.865,335,1.874,336,2.889,337,1.874,338,1.874,339,1.874,340,1.396,341,2.745,342,1.781,346,1.683,378,1.501,380,1.984,381,3.978,419,1.226,430,2.8,436,1.626,437,1.626,599,3.514,793,1.006,848,2.28,928,4.288,974,2.5,981,2.5,982,2.5,983,3.514,984,1.874,985,2.834,986,2.5,987,2.834,988,3.731,989,2.834,990,5.331,991,2.834,992,5.331,993,6.836,994,5.331,995,2.834,996,5.331,997,5.331,998,5.331,999,5.331,1000,5.331,1001,5.331,1002,5.331,1003,5.331,1004,5.331,1005,5.331]],["t/111",[10,0.556,14,1.234,27,0.679,79,1.988,88,2.579,102,2.785,157,0.642,175,3.188,186,2.635,194,2.734,208,2.962,219,1.761,241,2.543,247,3.414,248,1.358,278,5.266,281,2.746,482,2.442,488,2.898,764,3.244,814,2.989,857,3.614,1006,5.386,1007,4.998,1008,5.386,1009,5.907,1010,4.152,1011,4.152,1012,5.162,1013,4.553,1014,4.553,1015,7.865,1016,5.162,1017,5.907,1018,5.907,1019,6.696,1020,6.696,1021,4.553,1022,5.162,1023,6.696,1024,5.162,1025,5.162,1026,5.162,1027,3.853]],["t/113",[4,1.616,10,0.662,14,1.666,23,4.136,26,1.416,28,1.747,39,1.54,43,2.07,65,2.024,72,2.842,77,2.685,101,1.797,102,3.085,106,1.849,112,2.58,128,2.402,158,2.402,203,2.498,244,2.231,281,2.517,290,2.024,313,3.838,314,3.833,315,3.999,346,2.367,416,2.09,419,1.963,429,4.587,430,3.484,472,2.926,482,2.241,488,2.659,570,3.175,643,3.175,754,3.385,793,2.772,881,3.648,1028,4.535,1029,4.535,1030,4.535,1031,4.535,1032,4.535,1033,5.421,1034,4.535,1035,4.535,1036,4.535,1037,6.146,1038,6.97,1039,4.535,1040,5.421,1041,4.535,1042,4.535,1043,4.535,1044,4.001,1045,4.535,1046,4.535,1047,4.535]],["t/115",[2,1.146,3,1.782,10,0.725,12,1.806,14,1.244,20,1.171,21,2.021,25,2.089,27,0.359,28,1.688,29,1.082,30,1.119,33,1.911,39,0.684,45,1.301,48,1.158,51,1.181,58,1.637,64,1.504,71,2.408,72,1.731,75,1.682,76,1.345,77,1.052,78,2.408,79,2.262,80,2.544,81,1.911,82,2.408,83,2.038,84,2.408,85,2.408,86,2.408,87,2.038,88,2.006,89,1.911,90,2.408,91,0.92,92,1.911,94,2.408,95,2.408,96,2.408,97,1.394,98,1.394,99,2.408,100,2.408,102,1.59,127,2.466,128,3.111,143,2.435,150,2.706,157,0.34,158,1.446,168,4.188,175,2.021,176,2.667,178,2.408,186,1.394,189,2.091,197,3.52,208,2.435,212,1.258,218,1.504,219,1.369,222,0.718,225,1.716,228,1.985,242,2.408,243,2.408,244,1.88,245,3.414,246,3.744,247,2.807,248,1.369,264,1.082,265,2.408,272,3.121,278,2.544,279,1.146,281,2.143,282,1.446,290,1.219,312,2.408,313,3.708,314,2.796,315,4.169,316,2.408,325,1.3,326,2.541,343,2.658,348,2.196,378,1.446,382,2.196,389,2.038,407,1.3,416,1.956,422,1.345,430,1.181,432,2.196,473,2.196,482,2.563,488,3.229,490,1.504,497,1.567,533,2.435,599,2.196,609,1.258,645,1.837,647,2.038,657,1.731,686,2.196,694,2.196,705,2.971,734,1.716,754,2.038,785,2.196,793,0.969,795,1.911,814,1.894,850,1.637,928,2.196,929,2.52,971,2.408,972,2.408,977,2.038,978,2.248,981,2.408,982,2.408,983,2.196,1006,2.196,1009,2.408,1011,2.196,1017,2.408,1018,2.408,1021,2.408,1048,2.73,1049,5.416,1050,2.73,1051,2.73,1052,2.038,1053,2.166,1054,2.435,1055,2.196,1056,1.394,1057,1.567,1058,1.806,1059,2.408,1060,2.73,1061,2.73,1062,2.038,1063,3.645,1064,3.444,1065,2.73,1066,2.73,1067,2.73,1068,2.73,1069,2.73,1070,2.73,1071,2.73,1072,2.73,1073,2.73,1074,2.196,1075,2.73,1076,2.73,1077,1.911,1078,2.408,1079,2.408,1080,2.73,1081,2.408,1082,2.73,1083,2.73]],["t/118",[189,3.572,1084,5.831]],["t/120",[361,3.572,1084,5.831]],["t/122",[186,3.7,1084,5.831]],["t/124",[3,1.873,4,2.042,10,0.655,13,2.738,14,1.452,15,2.551,32,0.866,39,1.523,45,1.088,48,1.903,58,2.674,72,1.819,88,2.858,101,1.767,106,2.477,127,2.902,141,2.858,147,2.674,186,2.277,212,3.184,222,1.598,227,2.197,228,2.423,229,3.122,248,1.173,274,2.712,276,2.674,280,1.428,290,1.991,346,2.858,361,2.197,365,3.486,416,2.055,430,3.359,436,2.559,438,2.197,446,3.934,467,3.218,471,3.101,519,3.588,528,2.95,618,3.934,642,2.362,646,3.329,720,3.218,793,2.157,803,2.559,811,3.329,812,2.803,814,1.991,818,3.329,853,4.253,854,4.253,918,3.934,929,1.767,934,3.122,935,3.122,936,2.803,1085,2.95,1086,3.122,1087,3.934,1088,6.076,1089,4.46,1090,2.277,1091,3.588]],["t/126",[3,1.158,4,2.08,13,3.031,27,0.563,30,1.361,32,0.841,35,1.861,36,0.929,48,1.314,59,3.018,60,1.271,68,4.474,72,1.125,79,1.648,88,2.605,101,1.093,108,2.184,109,2.415,111,1.093,114,1.824,115,3.911,127,1.158,133,2.876,139,0.761,141,1.063,143,1.583,147,1.654,186,3.601,189,2.909,195,4.407,198,2.688,211,5.355,222,1.125,228,2.432,274,3.341,276,1.654,279,1.158,280,0.883,286,1.851,290,1.909,294,3.863,346,2.808,360,3.466,361,3.475,362,2.108,363,3.262,364,3.466,365,3.388,369,2.433,407,1.313,412,6.05,416,1.271,418,1.931,436,3.388,437,1.583,466,1.931,467,2.266,471,3.451,502,3.495,588,2.219,590,1.359,641,1.824,642,1.461,720,1.461,742,2.995,793,0.979,812,4.581,853,4.133,854,4.133,929,1.093,934,1.931,935,1.931,936,1.733,1092,2.995,1093,3.774,1094,2.059,1095,7.486,1096,3.774,1097,3.441,1098,2.433]],["t/128",[3,1.359,4,0.851,13,3.037,14,1.832,30,1.274,32,0.914,35,1.149,44,3.606,45,1.484,48,1.526,54,2.603,55,2.855,58,4.314,59,3.328,60,2.327,64,4.106,67,3.502,72,1.32,79,1.247,80,1.94,88,2.772,105,1.247,106,1.32,108,2.466,111,1.914,114,2.141,115,3.606,127,1.359,133,1.97,173,2.265,198,2.034,205,1.94,222,0.851,228,2.141,248,0.851,257,4.315,313,2.661,320,2.029,324,1.444,346,2.872,365,2.772,374,3.606,378,3.396,379,4.538,380,4.047,436,2.772,438,2.38,471,2.951,597,3.184,641,2.141,642,1.714,648,2.415,720,1.714,791,2.951,793,1.149,812,4.923,818,2.415,819,2.603,840,2.603,850,1.94,853,3.382,854,3.382,882,1.857,883,2.603,929,1.282,934,2.265,935,2.265,936,2.034,939,2.265,954,2.415,1085,2.141,1086,2.265,1092,2.265,1093,2.855,1097,2.603,1098,2.855,1099,7.665,1100,3.236,1101,3.236,1102,4.832,1103,3.236,1104,3.236,1105,3.236,1106,3.236,1107,3.236,1108,2.855,1109,5.1,1110,4.65,1111,3.236,1112,5.781,1113,3.236,1114,3.236,1115,3.236,1116,3.236,1117,3.236,1118,3.236]],["t/131",[4,2.073,7,1.655,14,1.496,25,1.531,26,1.954,39,1.168,41,3.856,42,1.957,45,1.121,48,1.037,108,3.195,109,2.148,111,1.847,128,2.469,131,3.479,135,5.289,140,4.672,142,2.567,147,2.794,152,4.672,156,2.968,157,0.88,163,3.263,166,4.111,190,2.929,191,2.148,199,3.753,204,1.7,231,3.083,235,1.795,249,3.479,274,2.794,286,2.017,289,4.441,302,3.479,345,2.411,418,3.263,419,2.017,437,2.675,480,3.934,481,3.479,497,2.675,747,3.479,759,3.479,795,3.263,838,4.441,881,3.749,929,2.48,975,2.794,978,4.464,1033,4.111,1094,3.479,1119,4.675,1120,4.661,1121,6.26,1122,2.379,1123,4.661,1124,3.479,1125,4.111,1126,4.661,1127,4.661,1128,4.661,1129,4.661,1130,4.661,1131,3.263,1132,4.661]],["t/133",[3,2.457,4,1.11,7,1.499,9,2.155,10,0.63,13,2.318,14,1.009,20,1.615,23,2.236,25,2.5,28,1.467,29,2.318,30,1.266,45,0.756,58,2.531,72,1.722,75,2.318,88,1.626,89,2.955,101,1.673,111,1.673,128,3.84,139,1.165,142,2.325,143,2.423,152,3.151,154,3.724,157,0.948,165,2.155,174,3.044,190,2.653,191,1.945,219,1.539,228,1.826,232,3.724,234,1.945,235,1.626,244,1.873,267,1.884,271,2.01,274,1.884,275,2.096,276,2.531,280,2.15,281,1.422,284,2.01,289,2.653,294,1.945,302,3.151,324,2.611,325,3.452,326,2.532,330,2.653,408,2.325,423,2.531,467,2.236,480,3.677,518,2.793,528,2.793,643,4.096,694,3.396,699,3.151,793,2.384,929,1.673,977,3.151,978,4.529,1074,3.396,1090,2.155,1119,5.036,1122,2.155,1131,2.955,1133,2.01,1134,2.793,1135,3.724,1136,4.222,1137,5.851,1138,4.222,1139,4.222,1140,4.222]],["t/135",[4,1.525,7,0.269,8,0.744,9,0.387,10,0.264,13,2.512,14,1.247,25,0.644,27,0.428,30,1.235,32,1.322,35,1.48,45,1.263,47,0.225,51,1.554,60,1.935,64,2.145,65,0.338,67,1.002,68,3.396,70,1.239,73,0.669,81,3.092,109,2.323,128,0.744,133,2.585,135,0.983,143,0.435,153,1.464,156,1.028,157,0.688,174,0.318,176,0.476,186,3.366,189,2.484,194,0.402,199,0.455,201,1.13,203,0.773,205,1.468,208,1.405,211,3.871,219,0.199,228,1.301,235,0.541,240,0.61,241,2.57,270,0.929,274,1.452,275,0.613,276,0.455,278,0.842,279,0.318,284,2.31,286,0.328,287,6.482,289,0.476,294,3.322,314,3.304,320,2.769,324,0.627,331,1.239,332,2.152,333,3.993,334,3.658,335,0.929,336,1.619,337,0.929,338,0.929,339,0.929,340,0.692,341,0.883,342,1.233,343,0.717,345,0.292,346,1.869,348,3.133,360,2.152,361,3.355,362,2.176,363,2.823,364,2.152,374,1.827,375,2.16,378,1.297,380,1.374,381,2.429,384,1.239,387,1.13,407,1.71,408,0.418,412,1.048,413,4.666,467,0.402,502,3.013,530,1.048,597,3.383,632,1.578,638,0.929,699,0.566,757,0.61,791,1.25,793,0.269,814,0.338,819,1.969,882,0.435,939,0.983,940,1.538,975,0.842,978,0.402,1013,0.669,1014,0.669,1086,1.714,1090,0.387,1096,2.87,1108,2.16,1109,2.16,1110,0.61,1119,0.929,1124,0.566,1125,0.669,1135,0.669,1141,1.405,1142,0.758,1143,1.405,1144,1.969,1145,0.929,1146,6.037,1147,3.168,1148,3.592,1149,2.448,1150,3.254,1151,4.418,1152,2.448,1153,1.405,1154,1.405,1155,1.405,1156,1.405,1157,5.217,1158,1.405,1159,1.405,1160,1.405,1161,1.405,1162,1.405,1163,1.405,1164,1.405,1165,1.405,1166,1.405,1167,1.405,1168,1.405,1169,1.405,1170,1.405,1171,2.448,1172,1.405,1173,1.405,1174,1.405,1175,1.405,1176,1.405,1177,1.405,1178,1.405,1179,2.448,1180,0.758,1181,0.758,1182,1.405,1183,1.405,1184,2.448,1185,1.405,1186,1.405,1187,0.669,1188,0.758,1189,1.405,1190,0.758,1191,0.669,1192,1.405,1193,0.566,1194,0.758,1195,1.962,1196,0.758,1197,0.758,1198,0.758,1199,0.669,1200,6.514,1201,4.279,1202,1.405,1203,0.758,1204,0.758,1205,0.758,1206,0.758,1207,1.405,1208,1.902,1209,0.758,1210,2.448,1211,2.448,1212,1.405,1213,1.405,1214,1.405,1215,1.405,1216,1.405,1217,2.448,1218,1.405,1219,1.405,1220,1.405,1221,1.405,1222,1.405,1223,1.405,1224,0.758,1225,1.405,1226,1.405,1227,0.758,1228,0.758,1229,0.758,1230,0.758,1231,2.876,1232,1.962,1233,1.405,1234,0.566,1235,0.758,1236,0.758,1237,0.758]],["t/137",[10,0.702,39,1.632,41,3.324,43,2.194,49,3.737,80,3.904,101,2.58,275,2.033,480,4.861,506,5.238,717,4.86,793,2.312,978,4.523,1131,4.559,1133,3.101,1238,4.559,1239,6.513,1240,6.513,1241,5.238]],["t/139",[10,0.588,20,1.506,27,0.717,29,2.161,30,1.408,32,0.777,48,1.544,59,3.097,161,4.388,219,2.006,222,1.435,227,3.418,280,2.221,325,2.598,326,2.361,361,3.418,416,2.514,505,4.072,792,2.89,818,4.072,843,3.27,929,2.161,978,4.488,1081,4.812,1119,3.608,1187,7.082,1191,6.73,1241,4.388,1242,4.36,1243,5.456,1244,5.456,1245,5.456,1246,5.456,1247,5.456,1248,5.456,1249,6.938,1250,4.072,1251,5.456,1252,5.456]],["t/141",[20,1.747,28,1.586,29,2.507,30,1.052,31,2.026,41,4.162,47,1.88,72,2.58,191,2.916,244,2.026,275,1.975,286,2.739,294,3.897,699,4.723,977,4.723,978,4.48,1074,5.09,1131,4.43,1241,6.558]],["t/144",[10,0.777,139,1.99,488,3.12]],["t/146",[10,0.777,139,1.99,1253,7.211]],["t/148",[10,0.777,139,1.99,1254,6.36]],["t/150",[27,0.914,109,3.202,139,1.918,281,2.342,361,3.424,609,3.202,645,3.007,1008,5.59,1122,3.547,1255,6.13]],["t/152",[280,2.26,340,3.478,361,3.478,482,2.574,657,2.878,1256,3.739,1257,5.269]],["t/154",[39,1.673,40,2.191,42,2.802,124,3.178,139,1.842,361,3.288,419,2.888,482,2.434,657,2.721,1007,5.858,1122,3.407,1256,3.535,1258,5.887,1259,5.887,1260,5.887,1261,4.001,1262,5.887]],["t/156",[39,1.665,40,2.181,42,2.789,124,3.162,139,1.833,340,3.272,361,3.272,419,2.874,482,2.422,657,2.708,1010,5.342,1027,4.956,1122,3.39,1256,3.518,1261,3.981,1263,5.858,1264,5.858,1265,5.858,1266,5.858]],["t/158",[10,0.764,139,1.959,340,3.496,428,5.708,641,4.694,1267,6.26]],["t/160",[10,0.76,42,2.964,139,1.948,157,0.879,482,2.574,616,3.888,1268,6.227]],["t/162",[10,0.76,43,2.378,57,3.361,139,1.948,435,4.942,472,3.862]],["t/165",[2,2.616,4,1.981,10,0.812,13,2.985,14,1.879,15,1.944,20,1.72,27,0.819,45,0.829,57,3.354,60,2.092,65,2.066,77,1.783,131,3.455,133,2.541,139,1.72,143,2.656,157,0.576,159,5.012,162,3.723,169,5.496,175,2.204,191,2.871,228,2.528,231,3.062,235,1.783,238,4.083,244,1.482,271,2.967,274,3.51,281,2.099,284,3.587,345,1.783,366,5.012,407,2.204,437,2.656,458,2.909,467,3.731,490,3.431,492,2.133,497,2.656,518,3.062,590,3.47,705,3.24,732,3.455,742,4.93,942,2.656,978,2.452,988,3.24,1122,2.363,1193,3.455,1269,3.723,1270,4.629,1271,4.629,1272,4.629,1273,4.629,1274,6.231,1275,3.455,1276,4.629]],["t/167",[2,3.491,30,1,31,1.926,39,1.508,45,1.077,47,1.787,60,1.787,67,3.071,75,2.384,77,2.318,157,0.918,204,2.194,222,2.098,244,1.926,305,4.491,362,2.964,492,2.772,514,2.604,526,3.607,609,2.772,640,4.635,644,4.84,645,3.192,647,4.491,663,3.781,664,5.307,719,5.307,988,4.212,1277,4.491,1278,6.017,1279,5.307,1280,6.017]],["t/169",[10,0.645,14,1.758,15,2.515,27,0.788,39,1.502,67,3.058,111,2.373,119,4.818,134,3.764,139,2.197,142,3.299,199,3.591,222,1.575,225,3.764,226,3.962,227,2.951,274,2.674,281,2.018,346,2.307,360,3.962,364,3.962,365,3.437,407,2.852,466,4.193,490,4.051,492,2.76,590,2.951,594,5.284,729,4.818,732,4.471,940,3.764,975,3.591,1275,4.471,1279,5.284,1281,3.962,1282,4.818,1283,5.99]],["t/171",[4,1.462,13,1.556,14,0.938,20,1.084,26,1.226,27,0.849,35,1.394,39,0.984,43,1.323,46,2.004,60,1.166,65,3.134,72,1.601,75,1.556,79,2.487,91,1.874,98,2.838,111,2.203,112,2.949,114,3.678,139,1.084,142,3.556,151,2.597,156,1.649,157,0.923,174,1.649,191,2.562,199,2.354,203,3.062,204,1.432,212,1.809,215,2.748,228,1.226,235,1.512,248,2.218,251,3.463,264,2.203,279,1.649,283,2.467,314,1.869,315,2.253,324,1.752,345,2.855,357,5.189,359,4.905,370,3.463,386,3.678,413,2.597,414,3.494,422,2.74,438,2.74,441,2.597,467,2.08,492,1.809,502,1.601,518,2.597,597,3.062,720,2.08,724,2.597,756,3.463,784,4.52,814,2.882,822,3.585,857,2.748,882,2.253,1201,3.463,1208,2.597,1284,2.467,1285,4.271,1286,3.893,1287,4.15,1288,4.15,1289,4.905,1290,5.561,1291,4.905,1292,5.561,1293,5.561,1294,2.93,1295,3.463,1296,4.905,1297,3.926,1298,4.15,1299,3.158,1300,3.158,1301,3.158,1302,3.158,1303,2.748,1304,4.905,1305,3.463,1306,3.463,1307,3.926]],["t/173",[7,1.727,8,2.576,9,3.287,10,0.778,15,2.042,27,0.64,30,1.329,35,1.727,45,0.871,58,2.916,65,3.222,67,3.923,75,1.927,106,1.983,108,2.482,112,2.042,114,3.217,122,5.807,134,3.056,157,0.801,159,3.912,227,3.173,231,3.217,248,2.021,279,2.042,294,3.326,326,2.105,343,2.482,345,2.781,346,2.481,408,3.546,423,2.916,435,3.404,492,2.967,590,2.396,603,4.29,671,3.63,707,3.217,713,3.546,732,3.63,791,2.482,810,3.63,940,4.047,1090,2.482,1134,3.217,1145,3.217,1242,5.266,1291,4.29,1308,3.912,1309,4.864,1310,3.912,1311,4.29,1312,4.864,1313,4.508,1314,3.912,1315,6.44,1316,4.864]],["t/175",[7,1.69,8,2.521,9,3.24,10,0.684,14,1.138,27,0.626,30,0.791,35,1.69,45,0.852,51,2.06,57,2.267,60,1.886,65,2.833,67,4.376,91,2.808,105,1.834,114,3.149,122,3.829,133,1.941,134,4.488,206,4.199,219,1.878,234,2.193,235,1.834,248,2.277,270,4.199,279,1.999,294,3.657,320,1.999,343,3.24,345,2.445,346,2.751,408,3.934,478,2.345,492,3.291,590,3.128,658,3.553,671,3.553,707,3.149,882,2.731,940,4.488,1145,3.149,1261,2.854,1277,3.553,1282,5.107,1313,4.444,1314,3.829,1317,4.76,1318,4.76,1319,4.76]],["t/177",[20,1.897,26,1.379,27,0.794,28,1.939,30,1.328,32,1.103,47,1.792,48,1.343,51,1.911,58,2.647,66,3.296,67,2.254,75,2.724,88,2.325,91,2.607,98,2.254,101,1.75,105,1.701,137,3.091,142,2.432,162,3.552,195,3.296,235,1.701,244,2.201,248,2.1,257,3.296,280,1.414,283,2.775,320,2.887,330,2.775,345,1.701,408,2.432,423,2.647,441,2.921,465,2.647,505,3.296,563,5.53,590,2.176,609,2.781,621,4.121,645,2.612,653,3.552,734,5.019,769,5.944,771,5.323,803,2.534,835,3.552,1090,3.08,1242,4.643,1286,3.091,1308,4.854,1310,3.552,1320,4.416,1321,4.416,1322,4.416,1323,6.035,1324,4.416,1325,4.416,1326,4.416,1327,4.416,1328,4.416,1329,4.416,1330,4.416,1331,6.035,1332,4.416]],["t/179",[10,0.799,45,1.328,47,2.477,48,1.351,60,2.203,67,3.099,134,3.815,157,0.997,172,6.542,345,2.339,346,2.339,492,3.417,597,3.343,609,2.797,650,6.441,651,5.966,762,4.25,920,5.977,1333,8.008,1334,6.071,1335,6.071]],["t/181",[2,2.775,36,2.226,39,1.656,40,2.17,47,1.963,67,3.373,138,3.792,141,2.546,157,0.822,222,2.052,244,2.115,346,2.546,492,3.045,526,3.962,975,3.962,1145,4.371,1277,4.932,1336,6.609,1337,6.609]],["t/184",[25,1.791,26,1.703,27,0.717,30,0.907,31,1.746,32,1.144,36,1.838,39,1.367,40,1.791,102,2.044,157,0.864,174,2.291,219,1.435,225,3.428,244,2.221,264,2.161,267,2.435,275,2.166,280,2.221,281,2.57,407,2.598,416,2.514,482,1.989,488,3.002,533,3.13,646,4.072,657,2.829,1049,4.388,1058,4.589,1062,4.072,1063,5.34,1064,4.589,1077,4.857,1133,2.598,1256,2.89,1338,5.178,1339,4.812,1340,4.812,1341,4.812,1342,5.456,1343,5.456,1344,5.456,1345,4.812,1346,4.812,1347,4.388,1348,4.812]],["t/186",[3,1.616,4,1.012,7,1.366,10,0.688,15,1.616,25,1.263,26,1.201,27,0.915,28,0.964,30,0.64,31,1.232,32,0.992,36,1.296,38,3.664,39,0.964,40,1.263,42,1.616,47,1.896,48,0.856,65,1.717,73,3.314,101,1.524,157,0.795,158,2.038,174,1.616,192,2.693,218,4.051,219,1.012,237,1.717,244,1.232,275,1.201,280,1.755,281,1.296,363,3.259,386,2.545,407,1.832,416,1.773,422,2.7,430,1.665,456,2.307,472,1.832,473,3.095,477,2.942,478,1.896,484,2.872,488,2.372,534,4.172,609,3.625,622,1.832,624,4.012,645,1.665,690,2.208,720,2.038,746,2.693,762,5.352,792,2.038,824,2.418,954,2.872,983,3.095,1058,5.32,1062,2.872,1063,2.693,1064,2.545,1077,2.693,1193,2.872,1256,2.903,1338,4.091,1339,3.394,1340,3.394,1341,3.394,1345,3.394,1346,3.394,1347,3.095,1349,5.482,1350,3.848,1351,3.848,1352,6.385,1353,3.848,1354,3.848,1355,8.043,1356,7.22,1357,3.848,1358,4.835,1359,5.482,1360,4.835,1361,5.482,1362,5.482,1363,3.848,1364,3.848,1365,3.848]],["t/188",[25,2.078,26,1.975,27,0.832,30,1.052,31,2.026,32,1.084,36,2.132,39,1.586,40,2.078,59,2.825,157,0.947,275,2.374,280,2.026,340,3.118,482,2.308,657,2.58,1057,3.631,1133,3.013,1256,3.352,1257,4.723,1366,5.582,1367,6.329,1368,3.794,1369,6.329,1370,5.582,1371,5.582]],["t/190",[10,0.697,20,2,25,1.609,26,1.529,27,0.644,28,1.228,30,0.814,31,1.568,32,0.922,36,1.651,38,2.811,39,1.228,40,1.609,43,1.651,75,1.941,79,1.887,91,1.651,109,2.257,111,1.941,157,0.805,189,2.413,204,1.786,219,1.288,225,3.078,229,3.429,267,2.186,275,2.02,278,3.879,280,1.568,281,2.18,324,2.186,408,2.698,416,2.257,422,2.413,472,2.333,482,2.81,488,2.12,534,3.879,590,2.413,657,2.638,713,2.698,720,3.427,754,3.656,755,3.429,843,2.937,929,1.941,1053,3.303,1054,2.811,1056,2.501,1057,2.811,1133,2.333,1256,2.595,1368,3.879,1372,7.261,1373,4.899,1374,8.013,1375,4.899,1376,4.899,1377,5.708,1378,4.899,1379,4.899,1380,4.899,1381,4.899,1382,4.899,1383,4.899]],["t/192",[25,1.784,26,1.696,27,0.715,28,1.362,31,1.739,32,0.986,36,1.831,39,1.735,40,2.272,42,2.281,79,2.093,112,2.281,124,2.587,139,1.5,157,0.861,186,2.773,219,1.82,234,2.503,275,2.16,278,3.257,281,2.566,324,2.425,340,2.677,407,2.587,419,2.351,477,3.189,478,2.677,482,2.524,657,2.215,690,3.118,1006,4.37,1010,6.125,1011,4.37,1027,6.179,1053,3.532,1056,2.773,1057,3.118,1122,2.773,1133,2.587,1256,2.878,1261,3.257,1263,4.793,1264,4.793,1265,4.793,1266,4.793,1368,3.257,1384,4.37]],["t/194",[2,1.028,7,1.383,8,1.296,10,0.596,20,1.075,27,0.512,28,1.216,29,1.922,30,0.407,31,0.783,32,1.264,35,1.722,36,1.312,42,1.028,47,0.727,48,0.544,51,3.12,66,3.62,72,0.998,73,1.165,77,0.943,88,1.5,91,1.312,102,1.817,105,1.868,139,2.179,157,0.485,158,1.296,165,1.249,174,2.036,175,1.165,177,1.713,198,1.538,218,1.348,219,1.587,234,1.128,241,1.206,244,1.553,264,0.97,278,3.618,280,1.553,281,1.863,318,1.538,319,2.906,320,2.036,326,1.059,345,0.943,346,0.943,378,3.996,419,2.099,436,1.404,467,2.063,472,1.165,482,2.842,488,1.685,497,1.404,534,3.853,616,1.348,622,3.21,624,3.474,635,3.792,638,1.619,657,0.998,679,3.048,692,3.435,713,1.348,734,3.474,764,1.538,773,2.906,774,1.713,797,1.968,833,2.159,834,2.159,842,1.619,850,1.467,864,3.901,872,4.447,873,3.132,883,3.132,895,2.159,1007,1.826,1058,3.208,1134,1.619,1199,2.159,1250,1.826,1261,2.907,1268,2.159,1384,1.968,1385,2.447,1386,2.447,1387,2.447,1388,4.85,1389,4.85,1390,5.529,1391,3.894,1392,2.447,1393,2.447,1394,3.894,1395,2.447,1396,2.447,1397,2.447,1398,2.447,1399,3.894,1400,2.447,1401,2.447,1402,5.529,1403,2.447,1404,4.85,1405,2.447,1406,4.85,1407,2.447,1408,4.85,1409,2.447,1410,2.447,1411,2.447,1412,4.85,1413,2.447,1414,2.447,1415,5.529,1416,4.85,1417,3.894,1418,2.447,1419,3.894,1420,4.85,1421,2.447,1422,3.894,1423,2.447,1424,3.894,1425,2.447,1426,2.447,1427,2.447,1428,2.447,1429,2.447,1430,2.447,1431,2.447,1432,2.447,1433,2.447,1434,2.447,1435,4.85,1436,2.447,1437,2.447,1438,2.447,1439,4.85,1440,3.894,1441,2.447,1442,4.85,1443,2.447,1444,2.447,1445,5.529,1446,2.447,1447,2.447,1448,2.447,1449,3.894,1450,2.447,1451,2.447,1452,2.159,1453,2.447,1454,3.894,1455,2.447]],["t/196",[25,1.695,26,1.611,27,0.679,28,1.294,31,1.653,32,0.954,36,1.739,39,1.679,40,2.199,60,1.533,79,1.988,112,2.168,124,3.188,139,1.848,157,0.833,219,1.761,234,2.379,275,2.09,281,2.504,324,2.304,357,3.614,419,2.898,477,3.085,478,2.543,482,2.442,526,3.095,657,2.105,690,2.962,929,2.045,1053,3.418,1054,2.962,1056,2.635,1057,2.962,1122,2.635,1133,2.458,1256,2.734,1257,3.853,1261,3.095,1368,3.095,1456,8.501,1457,5.162,1458,5.162,1459,5.162,1460,5.162,1461,5.162,1462,5.162,1463,5.162,1464,5.162,1465,5.162,1466,5.162,1467,5.162,1468,5.162,1469,5.162,1470,5.162,1471,5.162,1472,5.162,1473,5.162]],["t/198",[4,1.197,8,2.41,10,0.49,14,1.087,15,1.911,25,1.494,26,1.923,27,0.598,28,1.141,30,0.756,31,1.457,32,0.878,35,1.616,36,2.075,38,2.611,39,1.75,40,1.494,42,1.911,43,1.533,45,0.815,57,2.167,59,2.031,75,1.803,79,1.753,97,2.323,102,1.705,124,2.167,139,1.927,141,1.753,156,1.911,157,0.566,174,1.911,186,2.323,235,2.373,267,2.749,269,3.396,275,1.923,281,2.352,284,2.167,297,4.014,313,2.506,340,4.06,416,2.097,428,4.954,465,2.728,482,2.246,488,2.665,490,2.506,507,4.014,641,4.074,645,1.969,657,2.511,670,3.396,728,3.66,764,2.86,767,5.211,781,3.186,816,3.66,929,1.803,940,2.86,980,3.396,984,3.01,1053,2.323,1054,2.611,1056,2.323,1133,2.167,1267,6.6,1294,3.396,1474,4.551,1475,6.16,1476,4.551,1477,4.551,1478,3.396,1479,4.014,1480,3.66,1481,4.551,1482,4.551,1483,4.551,1484,4.551,1485,4.551,1486,4.551,1487,4.551,1488,4.551]],["t/200",[7,1.406,9,2.022,10,0.801,14,0.947,25,1.301,26,1.236,27,0.736,28,1.626,30,0.658,31,1.268,32,0.797,35,1.406,36,1.885,38,2.273,39,0.993,40,1.301,47,1.176,48,1.245,59,1.768,79,1.526,97,2.022,102,1.484,109,1.825,112,1.663,124,1.886,126,3.186,139,2.131,156,1.663,157,0.696,174,1.663,195,2.956,204,2.04,218,2.181,219,1.042,229,2.773,235,2.155,267,2.497,268,2.773,275,2.025,279,1.663,281,2.186,284,1.886,286,1.714,313,2.181,314,1.886,416,1.825,419,2.421,465,2.374,477,2.989,478,1.951,482,2.712,484,2.956,488,2.421,490,2.181,518,3.701,524,4.501,570,2.773,609,1.825,616,2.181,645,1.714,655,3.186,657,2.282,690,2.273,742,2.773,746,2.773,747,2.956,753,3.494,764,2.489,781,2.773,784,2.773,816,3.186,842,2.62,929,1.569,984,2.62,1040,3.494,1053,2.856,1054,2.273,1056,2.856,1090,2.022,1133,1.886,1254,7.148,1275,2.956,1372,3.494,1478,2.956,1479,3.494,1489,3.961,1490,3.961,1491,6.488,1492,5.982,1493,3.961,1494,3.961,1495,6.488,1496,3.961,1497,3.961,1498,3.961,1499,3.961,1500,3.961,1501,3.961,1502,5.596,1503,3.961,1504,3.494,1505,3.961,1506,3.961,1507,3.961]],["t/202",[10,0.902,13,2.587,20,1.802,27,0.527,28,1.005,30,1.085,31,2.269,32,1.104,43,2.2,48,1.453,57,1.908,73,3.557,77,1.544,107,2.403,139,2.394,141,1.544,158,2.123,165,2.88,227,1.975,228,2.038,241,1.975,244,1.806,407,3.109,435,5.424,472,3.791,488,2.826,490,4.114,528,2.651,824,3.546,929,1.588,942,3.238,979,3.535,980,5.29,1053,3.333,1054,3.238,1055,4.539,1056,3.333,1057,3.238,1062,2.991,1063,3.95,1064,3.732,1077,4.571,1257,4.211,1275,4.211,1366,3.535,1368,3.915,1370,5.76,1371,5.76,1480,3.224,1504,4.977,1508,6.53,1509,5.643,1510,5.643,1511,3.535,1512,4.008,1513,4.008]],["t/204",[10,0.487,15,1.898,25,1.484,26,1.411,27,0.915,28,1.537,31,1.963,32,1.146,36,1.523,39,1.133,40,1.484,46,2.307,47,2.067,48,1.006,75,1.791,77,1.741,97,2.307,109,2.083,136,3.636,139,2.22,141,1.741,147,2.71,157,0.763,165,2.307,175,2.152,186,2.307,204,1.648,219,1.189,234,2.083,267,2.017,275,2.329,281,2.066,286,1.956,330,2.84,382,3.636,477,2.825,482,1.648,609,2.083,645,2.653,674,3.374,795,3.164,861,3.987,925,3.374,929,1.791,984,2.99,1008,6.962,1053,3.13,1054,3.518,1056,2.307,1057,2.594,1079,3.987,1086,3.164,1090,2.307,1122,2.307,1133,2.152,1255,7.094,1338,3.374,1360,3.987,1492,4.932,1514,4.52,1515,4.52,1516,4.52,1517,4.52,1518,6.131,1519,4.52,1520,6.131,1521,4.52,1522,4.52,1523,6.131,1524,4.52]],["t/206",[25,1.813,26,1.724,27,0.726,28,1.384,31,1.768,32,0.996,36,1.861,39,1.753,40,2.296,42,2.319,79,2.127,112,2.319,124,2.63,139,2.118,157,0.87,219,1.839,234,2.545,275,2.183,281,2.585,324,2.465,419,2.39,477,3.222,478,2.721,482,2.55,657,2.252,690,3.169,1007,6.344,1053,3.569,1056,2.819,1057,3.169,1122,2.819,1133,2.63,1256,2.925,1258,4.871,1259,4.871,1260,4.871,1261,3.311,1262,4.871,1368,3.311,1384,5.624,1525,5.523]],["t/208",[10,0.602,25,1.836,26,1.745,27,0.735,30,0.929,31,1.79,32,1.004,36,1.884,39,1.402,40,1.836,43,1.884,79,2.154,102,2.095,157,0.877,219,1.47,225,3.514,244,2.256,264,2.215,267,2.496,275,2.2,280,1.79,281,2.73,324,2.496,407,2.662,419,2.42,482,2.039,488,2.42,490,3.079,533,3.208,646,4.173,657,2.28,929,2.215,1049,4.498,1053,3.597,1054,3.208,1055,4.498,1056,2.854,1063,5.402,1064,4.661,1077,3.914,1133,2.662,1256,2.962,1348,4.932,1368,3.352,1480,4.498,1526,5.592]],["t/210",[4,1.47,15,2.348,45,1.001,80,4.225,88,2.154,92,3.914,105,2.154,106,2.873,112,2.348,127,2.348,128,2.962,137,3.914,150,3.247,157,0.877,279,2.959,282,4.291,283,3.514,290,3.145,324,2.496,430,3.05,471,2.854,670,4.173,793,2.74,794,4.498,813,4.225,838,5.091,857,4.933,980,4.173,1091,4.498,1092,3.914,1238,3.914,1277,4.173,1527,5.592,1528,5.592,1529,5.592,1530,5.26,1531,5.592,1532,4.498,1533,5.592]],["t/212",[4,1.654,20,1.736,25,1.541,36,1.581,39,1.177,41,2.396,49,2.693,50,3.286,101,1.86,109,2.163,111,1.86,127,1.971,128,3.757,137,3.286,139,1.295,141,1.808,150,2.163,156,1.971,157,0.783,173,3.286,176,2.949,194,2.486,212,3.268,222,1.234,228,2.365,262,3.503,264,2.492,271,2.235,274,2.095,305,3.503,362,3.098,430,3.84,431,4.14,436,2.693,437,2.693,438,3.098,466,3.286,471,2.396,492,2.163,504,4.14,515,3.286,530,4.694,581,3.775,642,2.486,720,2.486,747,3.503,793,2.69,838,2.949,942,2.693,949,4.14,1085,4.691,1090,2.396,1145,3.105,1294,3.503,1534,4.694,1535,4.694,1536,4.694,1537,4.694,1538,4.694,1539,4.694,1540,4.694,1541,4.14,1542,4.14,1543,4.694,1544,4.694,1545,4.694,1546,4.694,1547,4.14,1548,4.14,1549,4.694,1550,4.694]],["t/214",[4,0.76,10,0.478,14,0.69,20,1.901,22,2.324,23,1.53,25,0.949,27,0.38,32,0.862,36,1.494,40,0.949,41,1.474,43,0.973,45,1.083,48,0.986,49,1.658,50,2.022,57,3.108,59,1.979,88,3.036,101,2.137,105,1.113,106,1.178,107,1.732,124,1.375,127,2.893,141,2.763,146,2.324,147,1.732,149,2.022,150,2.788,151,4.317,152,2.156,156,1.213,161,2.324,175,2.111,176,1.815,192,2.022,194,1.53,197,1.732,199,1.732,204,1.617,219,0.76,227,2.981,228,2.037,255,2.324,264,1.144,272,3.234,274,1.289,279,1.213,282,4.335,286,2.334,289,1.815,290,1.289,304,2.324,305,2.156,311,2.324,343,1.474,379,1.911,430,3.575,433,2.156,438,1.423,471,2.754,480,3.802,502,1.808,530,2.156,591,2.548,604,2.022,605,2.156,622,1.375,642,2.348,652,2.156,705,2.022,713,1.591,715,2.548,717,2.156,729,4.867,755,2.022,792,2.348,793,2.148,795,2.022,812,3.802,813,1.732,822,2.263,824,1.815,838,4.952,843,1.732,882,1.658,929,1.144,930,4.339,936,1.815,940,2.786,942,2.544,954,2.156,1091,2.324,1238,2.022,1294,2.156,1313,3.103,1530,6.553,1541,2.548,1542,2.548,1551,2.889,1552,2.889,1553,4.433,1554,2.889,1555,2.889,1556,2.889,1557,2.889,1558,2.889,1559,2.889,1560,2.889,1561,5.395,1562,2.889,1563,7.173,1564,2.889,1565,2.889,1566,2.889,1567,2.889,1568,2.548,1569,2.889,1570,2.548,1571,2.548,1572,2.889,1573,2.889,1574,2.889]],["t/216",[4,1.333,9,1.762,10,0.647,14,1.435,15,2.128,21,2.413,25,1.664,37,1.829,39,1.27,40,1.134,41,1.762,44,2.577,45,1.398,46,1.762,47,1.025,60,2.093,61,2.577,63,2.777,64,1.901,79,1.33,81,2.417,91,2.023,102,1.899,108,1.762,127,1.45,141,1.33,145,2.577,156,1.45,157,1.022,204,2.19,205,2.07,228,1.078,244,1.105,248,1.74,263,3.783,266,3.045,268,2.417,272,2.07,274,2.262,275,1.078,280,1.105,320,2.128,343,1.762,362,2.497,414,2.169,424,2.07,425,2.284,429,3.783,430,1.494,438,3.751,441,2.284,458,2.169,465,2.07,472,1.644,481,2.577,486,2.777,502,3.004,508,2.577,514,1.494,536,1.981,563,4.077,597,1.901,609,1.591,616,1.901,621,2.07,640,2.169,642,1.829,643,2.417,658,2.577,660,2.777,705,2.417,709,2.777,720,2.685,724,3.352,728,2.777,762,2.417,787,2.777,793,1.799,803,3.446,814,1.541,824,2.169,838,2.169,843,3.038,850,2.07,936,3.185,942,1.981,955,3.045,975,2.07,978,1.829,1085,3.352,1122,1.762,1134,2.284,1145,2.284,1284,2.169,1296,3.045,1314,5.669,1547,5.297,1548,4.471,1568,3.045,1570,4.471,1571,6.498,1575,3.452,1576,5.068,1577,3.452,1578,3.452,1579,3.045,1580,3.452,1581,3.452,1582,5.068,1583,4.471,1584,3.452,1585,5.068,1586,5.068,1587,6.005,1588,3.452,1589,3.452,1590,3.452,1591,2.777,1592,2.777,1593,3.452,1594,3.045,1595,3.452,1596,3.452]],["t/218",[10,0.605,13,2.227,14,1.115,21,1.47,28,2.008,30,1.041,32,1.182,43,1.894,45,1.434,48,1.496,51,1.336,57,1.47,73,1.47,75,1.848,76,3.723,91,1.04,105,2.723,106,3.081,108,1.576,113,2.304,115,2.304,135,2.161,140,2.304,141,1.189,149,5.518,157,0.384,158,1.636,179,3.265,219,2.073,222,1.227,227,3.483,228,1.456,248,2.181,282,2.977,286,3.176,290,1.378,320,1.297,345,2.59,372,3.752,418,2.161,419,1.336,472,3.754,492,1.423,502,3.214,528,2.042,592,3.752,597,2.568,616,1.7,657,1.259,759,2.304,791,2.381,794,2.484,858,2.724,882,1.772,942,3.225,1052,3.481,1090,2.381,1094,2.304,1097,2.484,1208,3.085,1304,2.724,1313,2.161,1530,4.674,1532,2.484,1597,5.64,1598,6.723,1599,3.088,1600,2.484,1601,4.664,1602,4.114,1603,3.088,1604,3.088,1605,4.114,1606,5.62,1607,3.088,1608,4.664,1609,3.088,1610,3.088,1611,4.114,1612,4.664,1613,4.114,1614,3.088,1615,3.088,1616,2.724]],["t/220",[10,0.903,13,2.438,28,2.019,30,1.023,43,2.074,45,1.339,73,3.561,76,3.032,105,2.371,219,1.967,227,4.128,228,1.921,248,1.967,286,2.663,803,3.532,942,3.532,1090,3.142,1094,4.593,1530,4.593,1613,5.429,1616,5.429,1617,6.155,1618,6.155]],["t/222",[42,2.888,98,3.511,157,0.856,248,2.101,814,3.07,1134,4.55,1238,4.815,1286,4.815,1287,5.134,1288,5.134,1619,6.879]],["t/224",[20,1.165,26,1.318,27,0.953,30,0.973,32,1.206,43,1.422,45,1.298,48,0.939,51,2.906,60,1.254,76,3.572,91,1.422,105,3.034,106,1.722,112,1.773,133,3.294,142,2.325,150,1.945,218,2.325,219,2.002,234,2.696,248,2.199,271,2.01,275,1.826,280,1.352,286,1.827,290,1.884,320,1.773,326,1.827,330,3.677,363,2.155,414,2.653,477,2.696,478,2.08,492,1.945,497,2.423,590,2.08,621,2.531,622,2.786,635,3.677,637,2.793,638,2.793,690,2.423,713,2.325,783,2.955,791,3.427,814,1.884,822,2.155,835,4.707,850,2.531,965,5.832,967,4.707,1090,2.155,1281,2.793,1303,2.955,1310,3.396,1532,3.396,1620,4.222,1621,5.161,1622,4.222,1623,4.222,1624,3.396,1625,3.396,1626,4.222,1627,4.222,1628,3.396,1629,4.222,1630,4.222,1631,3.724,1632,4.222,1633,6.715,1634,5.851,1635,4.222,1636,4.222]],["t/226",[3,2.757,20,1.382,27,0.659,28,1.255,30,0.832,32,1.108,35,1.778,39,1.255,40,1.645,48,1.114,59,2.235,65,2.235,72,2.987,75,2.601,76,3.83,88,2.529,91,1.687,98,3.739,112,3.076,133,2.677,139,1.382,190,3.147,219,2.123,227,2.467,248,1.926,279,2.103,280,1.603,505,3.738,590,2.467,642,2.653,724,4.343,791,3.351,810,3.738,814,3.47,822,3.351,850,3.936,1124,3.738,1242,3.147,1281,4.343,1286,5.127,1287,5.802,1288,5.802,1303,3.506,1311,4.418,1600,4.029,1637,4.029,1638,5.009]],["t/228",[4,1.038,13,2.212,14,0.73,27,0.402,28,0.456,32,1.338,35,1.402,42,0.764,45,0.923,46,0.928,60,1.531,64,1.001,65,0.812,68,1.273,91,1.029,105,0.7,109,1.819,133,1.61,156,0.764,157,0.491,203,1.001,228,1.232,235,1.521,241,2.279,248,1.356,267,0.812,274,1.363,275,0.568,320,2.344,332,2.611,333,4.425,334,5.904,335,1.203,336,5.044,337,1.203,338,1.203,339,1.203,340,0.896,341,1.143,342,1.143,346,1.176,360,2.02,361,2.54,364,2.02,365,1.752,378,0.963,379,1.203,380,1.273,381,2.279,419,1.708,793,1.084,814,3.142,975,1.831,1286,5.029,1287,5.458,1288,5.458,1478,1.357,1639,7.185,1640,4.625,1641,3.054,1642,1.818,1643,1.818,1644,1.818]],["t/231",[2,3.542,3,1.848,10,0.739,14,1.64,15,1.848,21,2.867,26,1.374,27,0.903,28,1.509,29,1.744,30,1.001,31,1.409,32,0.627,33,3.081,42,1.848,43,2.029,45,1.384,48,1.527,72,2.455,73,2.096,77,1.696,88,2.319,102,1.649,139,1.215,157,0.749,174,1.848,179,3.081,219,1.158,222,1.584,227,2.169,228,1.374,231,2.911,235,2.842,248,2.336,264,1.744,267,1.965,294,2.774,299,3.883,314,2.096,315,2.526,414,2.766,430,1.905,433,3.285,506,3.541,590,2.169,709,5.521,724,2.911,757,3.541,784,3.081,785,3.541,814,1.965,822,2.247,892,3.541,986,3.883,988,4.215,1242,2.766,1289,3.883,1303,4.215,1313,3.081,1478,3.285,1645,4.402,1646,3.883,1647,3.883,1648,5.311,1649,4.402,1650,4.402,1651,3.541,1652,4.402,1653,4.402,1654,4.402]],["t/233",[2,3.428,14,1.862,27,0.751,32,1.163,45,1.395,48,1.27,60,1.696,91,2.625,105,2.2,139,2.253,163,3.997,175,2.719,219,1.502,222,1.502,225,4.896,226,5.153,235,2.751,248,2.147,264,2.262,784,4.999,814,2.549,988,3.997,1250,4.262,1303,3.997,1646,5.037,1647,5.037,1655,5.71,1656,5.71]],["t/235",[2,3.325,101,2.684,102,2.967,248,2.083,281,2.914,488,3.427,570,4.742,1027,5.056]],["t/237",[7,2.732,8,2.437,9,2.837,10,0.327,14,1.099,20,0.837,25,2.19,27,0.816,28,0.76,29,1.823,30,1.031,32,1.285,35,1.633,37,3.981,45,0.824,47,1.366,48,0.675,59,1.353,76,1.494,79,1.772,88,1.772,101,2.782,102,1.136,109,1.397,111,1.201,128,2.437,156,1.932,157,1.018,174,1.273,175,1.444,203,2.533,204,1.106,244,1.473,267,2.053,269,2.263,271,1.444,275,2.192,282,1.606,294,3.073,320,1.273,321,2.439,325,2.954,326,1.312,332,3.676,333,5.19,334,4.971,335,2.005,336,3.676,337,2.005,338,2.005,339,2.005,340,2.266,341,2.891,342,2.891,345,2.141,346,1.772,347,4.991,362,2.738,408,3.673,422,2.266,430,1.312,456,3.719,458,2.891,465,1.818,525,2.263,652,2.263,668,2.122,669,2.122,713,1.67,792,1.606,798,4.991,803,4.186,842,2.005,847,3.7,929,1.201,978,2.437,984,2.005,1052,2.263,1119,4.104,1131,3.22,1133,1.444,1269,2.439,1305,5.473,1637,2.439,1657,3.7,1658,2.674,1659,3.032,1660,6.205,1661,3.032,1662,3.032,1663,2.674,1664,3.032]],["t/239",[0,4.661,13,2.093,14,1.796,27,0.695,32,0.969,45,1.346,48,1.176,91,1.78,106,2.154,139,1.458,141,2.618,149,4.758,157,0.658,205,4.075,212,2.435,235,2.618,241,2.603,248,2.21,320,2.219,372,5.468,438,2.603,444,4.25,454,4.25,464,4.25,502,3.235,519,4.25,653,4.25,755,3.699,766,4.661,892,4.25,1052,3.944,1085,3.495,1208,3.495,1284,4.272,1285,4.496,1298,5.073,1592,4.25,1597,5.073,1605,4.661,1665,4.661,1666,5.284,1667,5.284,1668,5.284,1669,5.284,1670,5.284,1671,5.284,1672,5.284,1673,5.284,1674,5.284]],["t/241",[30,1.389,105,2.584,106,2.735,248,2.311,303,5.916,320,2.816,621,4.719,1242,4.215,1281,5.207]],["t/243",[10,0.316,11,3.608,12,2.967,15,1.231,20,1.238,26,1.4,27,0.59,30,0.905,32,1.221,42,1.231,45,0.803,48,1.212,51,2.999,57,1.396,60,0.871,72,1.196,76,3.755,81,2.053,87,3.347,88,1.13,91,2.055,98,2.78,102,1.099,105,2.531,106,1.196,107,1.758,133,2.22,139,1.238,151,1.94,157,0.678,165,1.497,174,2.287,175,1.396,189,1.445,190,1.843,191,2.066,204,1.069,212,1.351,215,2.053,218,1.615,219,1.432,222,1.179,237,1.309,241,1.445,248,2.179,271,1.396,274,1.309,280,0.939,281,0.988,294,2.066,314,2.136,315,1.683,320,1.883,386,2.967,387,4.38,413,4.584,414,2.818,419,1.269,458,1.843,502,2.22,597,2.999,622,2.904,624,1.843,628,4.38,630,4.38,635,1.843,642,2.376,655,2.359,713,1.615,742,3.14,758,3.956,759,2.189,781,3.812,783,3.812,791,3.537,822,2.289,873,2.359,882,1.683,902,2.587,929,1.162,965,4.906,967,2.359,1085,1.94,1087,2.587,1122,1.497,1134,1.94,1144,3.608,1147,2.587,1193,3.347,1208,4.584,1261,1.758,1281,1.94,1284,3.422,1285,4.584,1298,2.189,1299,3.608,1300,2.359,1301,3.608,1302,3.608,1452,2.587,1579,2.587,1621,3.956,1625,2.359,1628,2.359,1675,2.933,1676,2.933,1677,2.933,1678,4.485,1679,2.933,1680,2.933,1681,2.933,1682,2.933,1683,2.933,1684,2.933,1685,2.933,1686,2.933,1687,4.485,1688,2.933,1689,2.933,1690,5.446,1691,4.485,1692,4.485,1693,2.933,1694,2.933,1695,2.933,1696,2.933,1697,2.933,1698,2.587,1699,2.359,1700,2.587,1701,2.587,1702,2.587,1703,2.587,1704,2.933,1705,2.587]],["t/245",[15,2.193,21,2.487,29,2.069,30,1.242,32,1.166,46,2.666,48,1.162,50,3.656,76,2.573,88,2.012,91,1.759,102,1.957,105,2.012,111,2.069,133,3.047,150,3.109,157,0.65,160,4.201,204,2.46,218,2.876,219,1.373,237,2.331,248,1.774,325,2.487,326,2.26,363,2.666,477,2.406,478,2.573,482,2.46,502,2.751,503,4.606,679,3.282,724,3.454,746,3.656,783,5.725,841,3.898,908,4.201,1086,3.656,1119,3.454,1284,3.282,1285,3.454,1625,4.201,1628,4.201,1651,4.201,1663,4.606,1665,4.606,1698,4.606,1699,4.201,1700,4.606,1701,4.606,1702,4.606,1703,4.606,1705,4.606,1706,5.223,1707,5.223,1708,6.747]],["t/247",[2,2.559,3,2.559,10,0.529,26,0.779,27,0.646,28,1.703,30,1.171,32,0.797,36,0.841,39,0.992,40,0.82,45,1.436,48,1.093,51,1.081,57,1.189,72,2.873,73,2.902,75,2.875,76,3.737,77,2.498,79,1.524,87,1.864,88,2.617,89,1.748,91,1.884,98,2.854,105,1.524,107,1.497,112,2.853,133,2.004,141,0.962,151,1.652,158,1.323,174,1.049,177,1.748,179,2.77,189,1.23,191,1.151,204,1.443,208,1.433,212,1.151,215,2.77,219,2.261,222,1.293,227,2.755,234,1.823,237,1.114,241,1.949,244,0.799,248,2.284,263,1.864,267,2.194,270,1.652,279,1.662,282,2.962,283,2.487,286,2.127,294,1.823,309,2.203,313,2.179,314,3.456,315,3.497,320,1.662,386,1.652,413,3.698,414,3.83,416,1.151,419,1.081,472,1.189,502,1.018,515,1.748,520,1.497,632,2.009,643,1.748,717,1.864,746,1.748,755,1.748,769,2.009,787,2.009,791,3.111,793,0.887,822,2.509,824,1.569,850,1.497,882,1.433,929,0.989,930,3.183,942,1.433,1044,2.203,1110,2.009,1124,1.864,1144,2.009,1208,2.617,1238,1.748,1242,2.487,1281,4.8,1282,2.009,1284,3.088,1285,4.289,1298,4.173,1299,3.183,1300,3.183,1301,2.009,1302,2.009,1511,2.203,1583,2.203,1591,2.009,1611,2.203,1631,2.203,1648,4.932,1699,2.009,1709,2.497,1710,2.497,1711,2.497,1712,2.497,1713,2.497,1714,2.497,1715,2.497,1716,2.497,1717,2.497,1718,2.497,1719,2.497,1720,2.497,1721,2.497,1722,2.497,1723,2.497,1724,2.497,1725,2.497]],["t/250",[7,2.165,27,0.802,32,1.221,47,1.811,54,4.906,112,2.561,157,1.04,158,3.23,269,4.552,280,2.381,318,3.832,363,3.113,477,3.697,609,2.81,668,4.269,669,5.206,690,3.499,760,5.38,1726,8.024,1727,6.099,1728,6.099,1729,6.099,1730,6.099,1731,6.099]],["t/252",[10,0.513,14,1.707,20,1.314,27,0.626,28,1.591,29,3.302,30,1.187,31,1.524,32,1.29,37,3.363,45,1.279,47,1.886,48,1.412,60,1.414,101,1.886,150,3.762,157,0.79,204,1.736,222,1.252,228,1.486,248,1.878,271,2.267,272,2.854,275,1.982,280,1.524,325,3.779,326,3.664,343,3.24,465,2.854,492,2.193,502,2.589,534,2.854,656,5.107,790,3.553,841,4.738,844,4.199,845,4.199,846,4.199,847,3.829,1594,4.199,1600,3.829]],["t/254",[10,0.705,20,2.141,27,0.861,30,1.29,31,2.484,46,3.34,47,1.944,75,2.593,157,0.814,204,2.386,244,2.095,282,3.466,389,4.884,482,2.386,488,3.357,657,2.668,842,4.328,1058,4.328]],["t/256",[32,1.176,219,2.035,281,2.607,407,3.101,482,2.375,488,2.818,490,3.586,533,3.737,713,3.586,1053,3.324,1054,3.737,1056,3.324,1057,3.737,1058,5.117,1059,5.744,1347,5.238,1368,3.904,1732,6.513]],["t/258",[10,0.663,20,1.699,28,1.875,30,1.023,31,1.97,32,1.148,38,3.532,39,1.543,102,2.306,124,2.931,146,4.951,158,3.26,219,1.619,244,1.97,264,2.438,281,2.074,407,2.931,416,2.836,482,2.938,488,3.236,490,3.389,533,3.532,657,2.51,713,3.389,1053,3.142,1056,3.142,1064,4.071,1078,5.429,1733,6.155]],["t/260",[1,3.191,7,1.518,8,2.265,9,3.45,10,0.461,23,2.265,27,0.562,29,2.339,32,1.312,35,1.518,45,0.766,47,1.27,111,1.694,141,1.647,142,2.355,156,1.795,157,1.043,175,2.036,203,2.355,204,2.152,222,1.124,271,2.036,275,2.11,320,2.478,321,3.439,325,2.036,326,1.85,332,4.471,333,5.612,334,5.463,335,2.828,336,4.471,337,2.828,338,2.828,339,2.828,340,2.106,341,2.687,342,2.687,345,1.647,362,2.908,363,2.182,456,2.563,458,2.687,514,2.554,525,3.191,536,3.387,551,2.993,652,3.191,668,2.993,669,2.993,679,3.709,707,2.828,1269,3.439,1657,4.748,1658,3.772,1734,3.772,1735,4.276]],["t/262",[7,1.661,10,0.504,15,1.964,18,3.274,20,1.291,27,0.825,28,1.172,30,0.777,32,0.894,35,2.228,42,1.964,43,1.576,47,2.103,97,3.614,102,1.753,109,2.155,113,3.491,134,2.939,157,0.582,194,2.478,234,2.891,257,3.491,267,2.088,268,3.274,275,1.959,318,2.939,326,2.715,423,2.804,434,4.126,440,4.126,443,3.491,477,3.262,478,2.304,520,2.804,525,3.491,533,3.6,534,2.804,543,3.491,551,5.524,570,3.274,609,2.155,640,3.943,665,3.762,668,3.274,669,3.274,690,2.684,693,4.126,707,5.219,764,2.939,767,3.491,842,3.094,925,3.491,975,2.804,1090,3.614,1092,3.274,1133,2.227,1234,3.491,1308,5.695,1338,3.491,1356,4.126,1377,4.126,1492,3.762,1637,3.762,1734,6.245,1736,4.677,1737,4.677,1738,4.677,1739,4.677,1740,4.677,1741,4.677,1742,4.677,1743,6.275,1744,4.677,1745,4.126,1746,4.126]],["t/264",[4,1.556,10,0.363,15,1.413,20,1.633,27,0.443,29,1.971,30,0.827,31,1.077,32,1.258,35,1.195,36,1.676,37,2.635,39,1.247,43,1.676,45,0.603,48,1.107,49,1.931,51,1.457,59,2.641,66,2.512,77,1.297,79,2.518,88,2.279,91,1.994,105,1.297,127,2.928,143,1.931,149,2.356,157,0.814,160,2.707,191,1.551,194,1.783,204,1.227,211,2.356,212,1.551,222,1.556,226,4.323,228,1.553,235,1.916,264,1.334,271,1.603,274,1.502,280,1.077,282,2.635,283,3.126,284,1.603,290,1.502,314,1.603,324,1.502,326,1.457,345,1.297,346,2.279,357,2.356,360,2.226,361,2.915,364,2.226,365,2.854,412,2.512,422,2.915,438,2.451,458,2.115,471,3.02,480,2.115,502,2.028,622,1.603,641,2.226,642,1.783,671,2.512,679,2.115,767,2.512,768,3.713,775,2.969,780,2.356,791,1.718,792,3.867,793,1.766,799,2.969,801,2.969,803,1.931,813,2.018,843,2.018,853,3.482,854,3.482,857,2.356,920,2.512,926,2.707,929,1.334,934,2.356,935,3.482,936,3.126,939,2.356,1250,4.416,1284,2.115,1285,2.226,1295,2.969,1306,2.969,1592,2.707,1597,2.512,1602,2.969,1651,2.707,1747,3.366,1748,3.366,1749,3.366,1750,6.536,1751,3.366,1752,7.3,1753,4.975,1754,3.366,1755,3.366,1756,6.536,1757,3.366,1758,3.366,1759,3.366,1760,3.366,1761,5.917,1762,3.366,1763,3.366,1764,3.366,1765,3.366,1766,3.366]],["t/266",[2,2.561,10,0.657,35,2.64,38,3.499,42,2.561,45,1.332,47,2.383,60,2.209,62,4.906,141,3.091,157,0.759,165,3.113,205,3.656,222,1.956,234,2.81,286,2.639,514,3.472,536,4.604,597,3.359,605,4.552,645,2.639,660,4.906,665,4.906,764,3.832,1092,4.269]],["t/268",[4,2,10,0.682,20,1.747,27,0.832,35,2.247,109,2.916,138,3.631,210,5.582,324,2.825,477,3.757,479,6.708,480,3.977,514,3.291,526,3.794,674,5.676,675,5.582,720,3.352,1358,6.708,1767,6.329,1768,6.329,1769,7.605]],["t/270",[2,1.842,7,2.433,10,0.794,13,1.738,14,1.048,27,0.901,32,1.237,43,2.024,45,0.786,47,2.293,60,1.303,97,2.239,106,1.789,112,1.842,141,1.69,157,0.961,183,3.274,222,1.58,228,1.37,237,1.958,279,2.523,282,2.324,357,3.071,363,2.239,430,2.965,438,2.161,514,3.34,520,2.63,533,4.228,536,3.932,551,4.206,676,5.949,679,2.757,685,3.87,686,3.529,707,4.532,908,3.529,984,2.902,1597,5.114,1657,3.529,1745,3.87,1746,3.87,1770,6.412,1771,6.008,1772,6.008,1773,4.388,1774,6.685,1775,4.833,1776,4.833,1777,4.833,1778,4.833,1779,4.388,1780,4.388,1781,4.388,1782,3.87]],["t/272",[7,1.891,10,0.574,27,0.7,28,1.335,29,3.153,30,0.885,31,1.705,32,1.267,36,1.794,47,1.582,48,1.52,52,4.783,138,3.92,157,0.663,222,1.401,237,2.377,248,1.401,325,3.918,389,3.975,514,2.305,558,5.496,616,2.933,645,3.264,663,4.293,676,3.975,843,3.193,1234,3.975,1624,5.496,1770,4.284,1774,6.773,1775,4.284,1776,4.284,1777,4.284,1778,4.284,1783,4.698,1784,4.698,1785,4.698,1786,5.326,1787,5.326]],["t/274",[1,3.656,7,2.572,10,0.528,27,0.851,30,1.281,32,1.272,35,1.739,47,1.922,48,1.44,52,4.529,138,3.713,156,2.057,157,0.902,203,2.698,219,1.702,222,1.702,275,1.529,294,3.692,325,3.45,340,2.413,341,3.078,342,4.066,413,3.24,514,2.12,520,2.937,558,5.205,645,2.8,663,4.066,676,3.656,927,3.941,1234,3.656,1591,3.941,1624,5.205,1770,3.941,1774,6.621,1775,3.941,1776,3.941,1777,3.941,1778,3.941,1782,4.321,1783,4.321,1784,4.321,1785,4.321,1788,4.899,1789,6.471,1790,4.899,1791,4.899]]],"invertedIndex":[["",{"_index":32,"t":{"44":{"position":[[95,1],[144,1]]},"47":{"position":[[157,1],[184,1]]},"53":{"position":[[1965,1],[2653,1],[2655,1],[2799,2],[2802,1],[2949,1],[2951,1],[2953,1]]},"63":{"position":[[717,2],[905,57],[990,1],[994,1],[996,1],[998,1],[1024,1],[1026,2],[1032,1],[1038,2],[1041,2],[1044,1],[1046,2],[1049,1],[1051,1],[1055,2],[1061,2],[1064,1],[1066,1],[1068,1],[1072,2],[1080,1],[1082,1],[1092,1],[1094,1],[1096,1],[1098,2],[1101,2],[1104,1],[1114,2],[1117,2],[1120,1],[1126,1],[1179,57],[2057,3],[2156,3],[2249,3],[2322,3],[2352,3],[2391,3],[3081,3],[3177,3],[3218,1],[3276,3],[3300,3],[3321,3],[3449,1],[3773,2],[3776,3],[3780,3],[3784,3],[3788,3],[3808,1],[4253,3],[4367,1],[4425,3],[4544,1],[4868,2],[4871,3],[4875,3],[4879,3],[4883,3],[4903,1],[5405,3],[5531,3],[5651,3],[5708,3],[5727,3],[5893,1],[6063,3],[6235,1],[6569,1]]},"67":{"position":[[928,1],[1070,1]]},"69":{"position":[[323,2],[446,1],[585,1],[660,1],[751,2]]},"71":{"position":[[1548,1],[1610,1]]},"73":{"position":[[1018,1],[1138,1]]},"79":{"position":[[752,1],[792,1],[826,1]]},"81":{"position":[[670,3],[674,1],[808,3],[1045,1]]},"85":{"position":[[1346,1],[1348,1],[1401,1],[1403,1]]},"87":{"position":[[297,1],[335,1],[376,1],[399,1],[402,1],[410,3],[621,3],[1285,1],[1293,1],[1296,1],[1307,3],[1441,3],[1703,1],[1711,3],[1791,3],[2009,1],[2061,1],[2087,1]]},"91":{"position":[[426,3],[493,1]]},"93":{"position":[[539,3],[551,1],[553,2],[576,1],[633,1],[680,1],[724,1]]},"95":{"position":[[363,1],[390,1],[438,1],[450,1],[480,1],[501,1],[540,1],[569,1],[617,1],[626,1],[693,1],[707,1],[783,1],[785,2],[799,1],[807,1],[855,1],[863,1],[921,1]]},"97":{"position":[[117,3],[569,3],[1831,1]]},"99":{"position":[[347,1],[355,2],[358,3],[392,3],[1333,1],[1335,1],[1920,1],[1954,1],[2045,1],[2074,3],[2246,2],[2249,1],[2416,1],[2431,1],[2504,1],[2506,1],[2555,1],[2593,1],[2740,1],[2760,1],[2784,1],[4017,1],[4076,1]]},"101":{"position":[[381,3]]},"103":{"position":[[753,1],[756,1],[764,3],[1030,3],[1244,1],[1321,1],[1329,1],[1332,1],[1341,3],[1481,3],[2367,1],[2375,3],[2452,3],[2557,2],[2560,3],[2637,3],[3153,3],[3157,1],[3257,3]]},"109":{"position":[[1188,57],[1273,1],[1277,1],[1279,1],[1281,1],[1307,1],[1309,2],[1315,1],[1321,2],[1324,2],[1327,1],[1329,2],[1332,1],[1334,1],[1338,2],[1344,2],[1347,1],[1349,1],[1351,1],[1355,2],[1363,1],[1365,1],[1375,1],[1377,1],[1379,1],[1381,2],[1384,2],[1387,1],[1397,2],[1400,2],[1403,1],[1409,1],[1462,57],[1653,3],[1711,1],[1747,3],[1771,3],[1803,3],[1984,1],[2008,1],[2059,3],[2179,1],[2215,3],[2387,1],[2411,1],[2563,1],[2599,3],[2771,1],[2795,1]]},"124":{"position":[[840,2],[909,2]]},"126":{"position":[[871,1],[1045,1],[1618,1],[1792,1]]},"128":{"position":[[429,2],[753,1],[766,1],[832,1]]},"135":{"position":[[288,57],[373,1],[377,1],[379,1],[381,1],[407,1],[409,2],[415,1],[421,2],[424,2],[427,1],[429,2],[432,1],[434,1],[438,2],[444,2],[447,1],[449,1],[451,1],[455,2],[463,1],[465,1],[475,1],[477,1],[479,1],[481,2],[484,2],[487,1],[497,2],[500,2],[503,1],[509,1],[562,57],[631,1],[726,1],[773,5],[787,1],[789,3],[805,1],[829,1],[906,1],[970,3],[981,1],[1081,1],[1116,3],[1238,4],[1334,4],[1374,5],[1396,1],[1398,3],[1553,3],[1566,1],[1588,1],[1590,1],[1607,1],[1628,1],[1638,1],[1668,1],[1681,1],[1698,1],[1711,3],[1735,3],[1787,3],[1818,3],[1841,1],[1903,1],[1905,1],[1961,1],[1998,1],[2000,1],[2021,1],[2034,1],[2051,1],[2053,1],[2144,1],[2153,1],[2206,1],[2208,1],[2301,1],[2331,1],[2333,1],[2436,1],[2459,1],[2461,1],[2555,1],[2561,1],[2588,1],[2590,1],[2695,1],[2701,1],[2720,1],[2722,1],[2824,1],[2833,1],[2853,1],[2855,1],[2950,1],[2956,1],[2958,3],[2979,2],[2982,4],[3032,1],[3044,1],[3066,1],[3068,1],[3085,1],[3106,1],[3116,1],[3146,1],[3159,1],[3176,1],[3189,1],[3191,3],[3195,1],[3197,1],[3199,1],[3261,1],[3263,1],[3319,1],[3356,1],[3358,1],[3379,1],[3392,1],[3409,1],[3411,1],[3502,1],[3511,1],[3564,1],[3566,1],[3659,1],[3689,1],[3691,1],[3794,1],[3817,1],[3819,1],[3913,1],[3919,1],[3946,1],[3948,1],[4053,1],[4059,1],[4078,1],[4080,1],[4182,1],[4191,1],[4211,1],[4213,1],[4308,1],[4314,1],[4316,3],[4337,1],[4495,1],[4542,4],[4582,5],[4604,1],[4606,3],[4787,1],[4796,3],[4809,1],[4831,1],[4833,1],[4850,1],[4871,1],[4881,1],[4911,1],[4924,1],[4966,1],[4979,3],[5003,3],[5055,3],[5086,3],[5109,1],[5174,1],[5176,1],[5230,1],[5247,1],[5264,3],[5285,2],[5288,4],[5338,1],[5350,1],[5372,1],[5374,1],[5391,1],[5412,1],[5422,1],[5452,1],[5465,1],[5507,1],[5520,1],[5522,3],[5526,1],[5528,1],[5530,1],[5595,1],[5597,1],[5651,1],[5668,1],[5685,4],[5717,5],[5731,1],[5733,3],[5749,1],[5773,1],[5850,1],[5914,3],[5925,1],[6025,1],[6060,3],[6117,4],[6181,4],[6221,1],[7105,3],[7357,57],[7442,1],[7446,1],[7448,1],[7450,1],[7476,1],[7478,2],[7484,1],[7490,2],[7493,2],[7496,1],[7498,2],[7501,1],[7503,1],[7507,2],[7513,2],[7516,1],[7518,1],[7520,1],[7524,2],[7532,1],[7534,1],[7544,1],[7546,1],[7548,1],[7550,2],[7553,2],[7556,1],[7566,2],[7569,2],[7572,1],[7578,1],[7631,57],[7700,1],[7795,1],[7846,5],[7883,5],[7889,3],[7905,1],[7929,1],[8005,1],[8092,1],[8156,3],[8167,1],[8267,5],[8273,1],[8325,1],[8372,3],[8465,5],[8471,4],[8537,5],[8543,4],[8583,5],[8605,1],[8607,3],[8739,5],[8745,3],[8820,1],[8844,1],[8867,5],[8873,1],[8895,1],[8897,1],[8914,1],[8935,1],[8940,1],[8970,1],[8975,3],[8999,3],[9051,3],[9098,5],[9104,3],[9127,1],[9192,1],[9194,1],[9248,1],[9267,1],[9298,1],[9329,1],[9331,2],[9334,3],[9338,3],[9342,1],[9375,1],[9408,1],[9410,1],[9435,3],[9456,2],[9459,4],[9509,1],[9521,1],[9543,1],[9545,1],[9562,1],[9583,1],[9588,1],[9618,1],[9623,1],[9625,3],[9629,1],[9631,1],[9633,1],[9698,1],[9700,1],[9754,1],[9773,1],[9804,1],[9835,1],[9837,2],[9840,3],[9844,3],[9848,1],[9881,1],[9914,1],[9916,1],[9941,4],[9973,5],[10014,5],[10020,3],[10036,1],[10060,1],[10136,1],[10223,1],[10287,3],[10298,1],[10406,5],[10412,1],[10464,1],[10511,3],[10596,5],[10602,4],[10678,1],[10680,1],[10696,1],[10707,1],[10709,1],[10788,4],[10828,1],[11007,1],[11015,5],[11052,5],[11058,3],[11074,1],[11098,1],[11174,1],[11261,1],[11325,3],[11336,1],[11388,1],[11435,1],[11518,1],[11553,3],[11674,5],[11680,4],[11779,5],[11785,4],[11825,5],[11847,1],[11849,3],[12001,5],[12007,3],[12062,1],[12088,5],[12094,1],[12111,1],[12131,1],[12148,3],[12172,3],[12224,3],[12271,5],[12277,3],[12300,1],[12365,1],[12367,1],[12421,1],[12442,3],[12463,2],[12466,4],[12516,1],[12528,1],[12545,1],[12565,1],[12582,1],[12584,3],[12588,1],[12590,1],[12592,1],[12657,1],[12659,1],[12713,1],[12734,4],[12766,5],[12807,5],[12813,3],[12829,1],[12853,1],[12929,1],[13016,1],[13080,3],[13091,1],[13143,1],[13190,1],[13273,1],[13308,3],[13381,5],[13387,4],[13499,5],[13505,4],[13545,1]]},"139":{"position":[[678,1]]},"177":{"position":[[285,2],[391,1],[1233,1],[1235,1],[1255,1]]},"184":{"position":[[177,1],[216,2],[391,2],[480,1]]},"186":{"position":[[233,1],[272,2],[437,2],[526,1]]},"188":{"position":[[116,1],[233,1]]},"190":{"position":[[135,1],[283,1]]},"192":{"position":[[274,1],[430,1]]},"194":{"position":[[511,3],[813,1],[868,1],[914,1],[958,1],[973,1],[1015,1],[1110,1],[1132,1],[1188,1],[1293,1],[1318,1],[1380,1],[1494,1],[1780,1],[1867,1],[1904,1],[1938,1],[1969,1],[2003,1],[2026,1],[2029,1],[2122,1],[2673,1],[2675,6],[2724,1],[2850,1],[2870,1],[2893,1],[3008,6],[3041,2],[3106,1],[3328,6],[3371,2],[3409,1],[3529,1],[3531,1],[3710,2],[3871,1]]},"196":{"position":[[371,1],[507,1]]},"198":{"position":[[447,1],[590,1]]},"200":{"position":[[1075,1],[1172,1]]},"202":{"position":[[822,1],[833,1],[1010,2],[1022,1],[1114,2],[1117,2]]},"204":{"position":[[253,2],[280,1],[321,1],[326,2],[750,1],[881,1]]},"206":{"position":[[276,1],[357,1]]},"208":{"position":[[105,1],[267,1]]},"214":{"position":[[1522,1],[1573,1],[1653,1],[1699,1]]},"218":{"position":[[793,3],[810,1],[917,1],[936,1],[1007,3],[1020,3],[1040,3],[1194,3],[1211,1],[1321,1],[1340,1],[1411,3],[1424,3],[1444,3]]},"224":{"position":[[469,1],[518,1],[605,1],[630,1],[649,1],[677,1],[690,1],[704,1],[706,1],[1290,1]]},"226":{"position":[[427,1],[581,1],[680,1],[789,1]]},"228":{"position":[[129,57],[214,1],[218,1],[220,1],[222,1],[248,1],[250,2],[256,1],[262,2],[265,2],[268,1],[270,2],[273,1],[275,1],[279,2],[285,2],[288,1],[290,1],[292,1],[296,2],[304,1],[306,1],[316,1],[318,1],[320,1],[322,2],[325,2],[328,1],[338,2],[341,2],[344,1],[350,1],[403,57],[591,3],[647,3],[726,3],[818,3],[848,3],[906,3],[981,3],[994,1],[1078,1],[1117,3],[1141,3],[1162,3],[1302,2],[1305,1],[1307,2],[1310,1],[1312,2],[1315,1],[1317,4],[1322,1],[1324,4],[1329,1],[1331,4],[1336,1],[1338,6],[1345,1],[1347,6],[1354,1],[1356,6],[1363,1],[1365,8],[1374,1],[1388,3],[1392,3],[1396,1],[1398,6],[1412,6],[1451,1],[1453,10],[1464,1],[1466,3],[1470,1],[1478,4],[1483,1],[1485,3],[1489,4],[1494,1],[1496,3],[1500,1],[1502,3],[1506,1],[1508,6],[1515,1],[1517,3],[1521,1],[1523,3],[1527,1],[1550,2],[1559,3],[1635,1],[1719,1],[1885,2],[1888,1],[1890,2],[1893,1],[1895,2],[1898,1],[1900,4],[1905,1],[1907,4],[1912,1],[1914,4],[1919,1],[1921,6],[1928,1],[1930,6],[1937,1],[1939,6],[1946,1],[1948,8],[1957,1],[1971,3],[1975,3],[1979,1],[1981,6],[1995,6],[2034,1],[2036,10],[2047,1],[2049,3],[2053,1],[2061,4],[2066,1],[2068,3],[2072,4],[2077,1],[2079,3],[2083,1],[2085,3],[2089,1],[2091,6],[2098,1],[2100,3],[2104,1],[2106,3],[2110,1],[2133,2],[2142,3],[2198,3],[2277,3],[2334,3],[2353,3],[2425,2],[2428,1],[2430,2],[2433,1],[2435,2],[2438,1],[2440,4],[2445,1],[2447,4],[2452,1],[2454,4],[2459,1],[2461,6],[2468,1],[2470,6],[2477,1],[2479,6],[2486,1],[2488,8],[2497,1],[2511,3],[2515,3],[2519,1],[2521,6],[2535,6],[2574,1],[2576,10],[2587,1],[2589,3],[2593,1],[2601,4],[2606,1],[2608,3],[2612,4],[2617,1],[2619,3],[2623,1],[2625,3],[2629,1],[2631,6],[2638,1],[2640,3],[2644,1],[2646,3],[2650,1],[2673,2],[2682,3],[2760,2],[2763,1],[2765,2],[2768,1],[2770,2],[2773,1],[2775,4],[2780,1],[2782,4],[2787,1],[2789,4],[2794,1],[2796,6],[2803,1],[2805,6],[2812,1],[2814,6],[2821,1],[2823,8],[2832,1],[2846,3],[2850,3],[2854,1],[2856,6],[2870,6],[2909,1],[2911,10],[2922,1],[2924,3],[2928,1],[2936,4],[2941,1],[2943,3],[2947,4],[2952,1],[2954,3],[2958,1],[2960,3],[2964,1],[2966,6],[2973,1],[2975,3],[2979,1],[2981,3],[2985,1],[3008,2],[3087,2],[3090,1],[3092,2],[3095,1],[3097,2],[3100,1],[3102,4],[3107,1],[3109,4],[3114,1],[3116,4],[3121,1],[3123,6],[3130,1],[3132,6],[3139,1],[3141,6],[3148,1],[3150,8],[3159,1],[3173,3],[3177,3],[3181,1],[3183,6],[3197,6],[3236,1],[3238,10],[3249,1],[3251,3],[3255,1],[3263,4],[3268,1],[3270,3],[3274,4],[3279,1],[3281,3],[3285,1],[3287,3],[3291,1],[3293,6],[3300,1],[3302,3],[3306,1],[3308,3],[3312,1],[3335,2]]},"231":{"position":[[565,3]]},"233":{"position":[[254,1],[297,1],[315,1],[317,1]]},"237":{"position":[[251,1],[328,1],[535,57],[620,1],[624,1],[626,1],[628,1],[654,1],[656,2],[662,1],[668,2],[671,2],[674,1],[676,2],[679,1],[681,1],[685,2],[691,2],[694,1],[696,1],[698,1],[702,2],[710,1],[712,1],[722,1],[724,1],[726,1],[728,2],[731,2],[734,1],[744,2],[747,2],[750,1],[756,1],[809,57],[1124,1],[1219,1],[1314,1]]},"239":{"position":[[448,1],[538,1]]},"243":{"position":[[555,3],[1132,3],[1159,1],[1326,1],[1434,1],[1495,1],[1501,1],[1518,1],[1540,1],[1566,1],[1605,1],[1618,1],[1641,1],[1678,1],[1691,2],[1808,1],[1889,1],[1921,1],[1981,1],[2005,1]]},"245":{"position":[[699,1],[780,1],[812,1],[872,1],[896,1]]},"247":{"position":[[1064,1],[1355,1],[1645,1],[2001,1]]},"250":{"position":[[61,1],[129,1],[170,1],[198,1],[289,1]]},"252":{"position":[[306,1],[333,1],[381,1],[393,1],[423,1],[444,1],[483,1],[512,1],[560,1],[569,1],[636,1],[650,1],[726,1],[728,2],[742,1],[750,1],[798,1],[806,1],[864,1]]},"256":{"position":[[0,1],[188,1],[245,1]]},"258":{"position":[[0,1],[75,1],[77,2]]},"260":{"position":[[0,1],[104,1],[316,57],[401,1],[405,1],[407,1],[409,1],[435,1],[437,2],[443,1],[449,2],[452,2],[455,1],[457,2],[460,1],[462,1],[466,2],[472,2],[475,1],[477,1],[479,1],[483,2],[491,1],[493,1],[503,1],[505,1],[507,1],[509,2],[512,2],[515,1],[525,2],[528,2],[531,1],[537,1],[590,57]]},"262":{"position":[[764,1],[824,1]]},"264":{"position":[[134,1],[257,1],[276,1],[317,1],[348,1],[391,1],[981,1],[1098,1],[1100,1],[1241,2],[1244,2],[1247,1],[1683,1],[1685,1],[1792,2],[1795,1],[1897,2],[1900,1],[2015,1],[2017,1],[2019,1],[2021,1],[2023,1]]},"270":{"position":[[618,1],[675,1],[876,1],[903,1],[932,1],[955,1],[1126,1],[1153,1],[1182,1],[1205,1],[1220,1],[1263,1]]},"272":{"position":[[151,1],[178,1],[207,1],[230,1],[232,1],[261,1],[263,1],[306,1],[335,1],[337,1],[462,1]]},"274":{"position":[[143,1],[170,1],[199,1],[222,1],[224,1],[253,1],[255,1],[298,1],[327,1],[329,1],[444,1],[805,1],[900,1],[948,1]]}}}],["0",{"_index":384,"t":{"63":{"position":[[3477,1],[4572,1]]},"135":{"position":[[9269,1],[9775,1]]}}}],["0.0.0.0:4317",{"_index":560,"t":{"69":{"position":[[1200,12]]}}}],["0.0.0.0:4318",{"_index":562,"t":{"69":{"position":[[1229,12]]}}}],["0.0.0.0:9464",{"_index":568,"t":{"69":{"position":[[1352,14]]}}}],["0.1",{"_index":216,"t":{"53":{"position":[[2585,3]]}}}],["0.35677263",{"_index":1003,"t":{"109":{"position":[[2022,11],[2425,11],[2809,11]]}}}],["0.44413814",{"_index":998,"t":{"109":{"position":[[1962,11],[2365,11],[2749,11]]}}}],["0.45719317",{"_index":1004,"t":{"109":{"position":[[2034,11],[2437,11],[2821,11]]}}}],["0.4756623",{"_index":999,"t":{"109":{"position":[[1974,9],[2377,9],[2761,9]]}}}],["0.48302334",{"_index":1000,"t":{"109":{"position":[[1986,11],[2389,11],[2773,11]]}}}],["0.68240194",{"_index":1005,"t":{"109":{"position":[[2046,12],[2449,12],[2833,12]]}}}],["0.68732778",{"_index":997,"t":{"109":{"position":[[1950,11],[2353,11],[2737,11]]}}}],["0.80994359",{"_index":1002,"t":{"109":{"position":[[2010,11],[2413,11],[2797,11]]}}}],["0.8286594",{"_index":1001,"t":{"109":{"position":[[1998,9],[2401,9],[2785,9]]}}}],["002",{"_index":1014,"t":{"111":{"position":[[425,3]]},"135":{"position":[[7090,3]]}}}],["01",{"_index":1061,"t":{"115":{"position":[[794,2]]}}}],["01t00:00:00z",{"_index":1212,"t":{"135":{"position":[[9279,12],[9785,12]]}}}],["01t04:00:00z",{"_index":1214,"t":{"135":{"position":[[9310,12],[9816,12]]}}}],["02",{"_index":1211,"t":{"135":{"position":[[9276,2],[9307,2],[9782,2],[9813,2]]}}}],["023",{"_index":367,"t":{"63":{"position":[[2677,3]]}}}],["043134",{"_index":1753,"t":{"264":{"position":[[1005,6],[1123,6]]}}}],["043141",{"_index":1756,"t":{"264":{"position":[[1270,6],[1708,6],[1818,6],[1923,6]]}}}],["05",{"_index":1217,"t":{"135":{"position":[[9353,2],[9386,2],[9859,2],[9892,2]]}}}],["062343",{"_index":355,"t":{"63":{"position":[[1781,6]]}}}],["07",{"_index":1060,"t":{"115":{"position":[[791,2]]}}}],["073922",{"_index":1189,"t":{"135":{"position":[[6497,6],[7033,6]]}}}],["1",{"_index":361,"t":{"63":{"position":[[2073,2],[2153,2],[2167,2],[2273,2],[3627,1],[4722,1],[5421,2],[5528,2],[5542,2],[5776,2],[6118,2],[6452,2]]},"99":{"position":[[2579,2]]},"120":{"position":[[0,1]]},"124":{"position":[[43,3]]},"126":{"position":[[874,2],[958,2],[1048,2],[1204,2],[1621,2],[1705,2],[1795,2]]},"135":{"position":[[807,2],[903,2],[983,2],[1140,2],[5751,2],[5847,2],[5927,2],[6608,2],[6751,2],[6889,2],[7907,2],[8002,2],[8185,2],[8275,2],[8396,2],[9300,1],[9806,1],[10038,2],[10133,2],[10316,2],[10414,2],[10682,2],[10901,2],[11076,2],[11171,2],[11338,2],[12831,2],[12926,2],[13093,2]]},"139":{"position":[[398,2],[659,1]]},"150":{"position":[[0,2]]},"152":{"position":[[0,2]]},"154":{"position":[[0,2]]},"156":{"position":[[0,2]]},"228":{"position":[[607,2],[658,2],[750,2],[2158,2],[2209,2]]},"264":{"position":[[1758,3],[1863,3],[1981,3]]}}}],["1.1.300",{"_index":1742,"t":{"262":{"position":[[610,7]]}}}],["10",{"_index":599,"t":{"71":{"position":[[1239,2]]},"109":{"position":[[230,3],[1635,2]]},"115":{"position":[[2664,2]]}}}],["100",{"_index":195,"t":{"53":{"position":[[2028,3],[2405,3],[2746,3]]},"126":{"position":[[1364,3],[1515,3],[2774,3],[2925,3]]},"177":{"position":[[1251,3]]},"200":{"position":[[50,4]]}}}],["10eedcca",{"_index":1755,"t":{"264":{"position":[[1130,10]]}}}],["11/30/2023",{"_index":1076,"t":{"115":{"position":[[3044,11]]}}}],["1106",{"_index":1077,"t":{"115":{"position":[[3162,5]]},"184":{"position":[[376,4],[515,5]]},"186":{"position":[[422,4]]},"202":{"position":[[754,6],[957,4],[1722,4]]},"208":{"position":[[395,5]]}}}],["12",{"_index":349,"t":{"63":{"position":[[1534,2],[1600,2],[1661,2],[1736,2],[2681,2],[2799,2],[2902,2]]}}}],["13b",{"_index":1520,"t":{"204":{"position":[[479,3],[525,5]]}}}],["14:23:44,197",{"_index":351,"t":{"63":{"position":[[1540,12]]}}}],["14:24:10,488",{"_index":352,"t":{"63":{"position":[[1606,12]]}}}],["14:24:10,490",{"_index":353,"t":{"63":{"position":[[1667,12],[1742,12]]}}}],["14:24:34,513",{"_index":368,"t":{"63":{"position":[[2687,12]]}}}],["14:24:34,669",{"_index":371,"t":{"63":{"position":[[2805,12],[2908,12]]}}}],["150",{"_index":1475,"t":{"198":{"position":[[68,4],[294,4]]}}}],["16686:16686",{"_index":550,"t":{"69":{"position":[[571,13]]}}}],["172.19.0.0/16",{"_index":736,"t":{"85":{"position":[[1360,16],[2131,14]]}}}],["172.19.0.1",{"_index":738,"t":{"85":{"position":[[1388,12]]}}}],["18",{"_index":350,"t":{"63":{"position":[[1537,2],[1603,2],[1664,2],[1739,2],[2684,2],[2802,2],[2905,2]]}}}],["1].post_list",{"_index":910,"t":{"99":{"position":[[2565,13]]}}}],["1tb",{"_index":397,"t":{"63":{"position":[[3653,3],[3929,3],[4748,3],[5024,3],[5855,3],[5946,3],[6197,3],[6288,3],[6531,3],[6622,3]]}}}],["2",{"_index":186,"t":{"53":{"position":[[1315,2]]},"55":{"position":[[137,2]]},"63":{"position":[[2094,2],[2216,2],[5469,2],[5618,2],[5675,2],[5828,2],[6170,2],[6504,2]]},"111":{"position":[[616,1]]},"115":{"position":[[2824,1]]},"122":{"position":[[0,1]]},"124":{"position":[[68,3]]},"126":{"position":[[896,2],[1020,2],[1136,2],[1643,2],[1767,2],[1883,2],[1951,2]]},"135":{"position":[[831,2],[967,2],[1083,2],[5775,2],[5911,2],[6027,2],[6084,2],[7931,2],[8089,2],[8235,2],[8327,2],[9424,1],[9930,1],[10062,2],[10220,2],[10366,2],[10466,2],[10535,2],[10698,2],[10915,2],[11100,2],[11258,2],[11390,2],[12855,2],[13013,2],[13145,2]]},"192":{"position":[[359,3]]},"198":{"position":[[163,1]]},"204":{"position":[[523,1]]}}}],["2016",{"_index":1457,"t":{"196":{"position":[[20,4]]}}}],["2023",{"_index":348,"t":{"63":{"position":[[1529,4],[1595,4],[1656,4],[1731,4],[2794,4],[2897,4]]},"115":{"position":[[786,4]]},"135":{"position":[[9271,4],[9302,4],[9348,4],[9381,4],[9777,4],[9808,4],[9854,4],[9887,4]]}}}],["20231201",{"_index":1752,"t":{"264":{"position":[[996,8],[1114,8],[1261,8],[1699,8],[1809,8],[1914,8]]}}}],["20231218",{"_index":354,"t":{"63":{"position":[[1772,8]]}}}],["20231228",{"_index":1188,"t":{"135":{"position":[[6488,8]]}}}],["218a2681",{"_index":1754,"t":{"264":{"position":[[1012,10]]}}}],["239.00",{"_index":405,"t":{"63":{"position":[[3825,7],[4920,7],[5911,7],[6253,7],[6587,7]]}}}],["263,51",{"_index":1236,"t":{"135":{"position":[[13492,6]]}}}],["263,514,550.45",{"_index":1237,"t":{"135":{"position":[[13624,14]]}}}],["263,514,550.45a.csv",{"_index":1235,"t":{"135":{"position":[[13469,19]]}}}],["263514550.45479834",{"_index":1233,"t":{"135":{"position":[[12423,18],[12715,18]]}}}],["3",{"_index":189,"t":{"53":{"position":[[1356,2]]},"55":{"position":[[187,3]]},"61":{"position":[[229,2]]},"63":{"position":[[2624,1],[3792,1],[4887,1],[5876,2],[6218,2],[6552,2]]},"69":{"position":[[241,3]]},"109":{"position":[[359,1]]},"115":{"position":[[2545,1],[2892,1]]},"118":{"position":[[0,1]]},"126":{"position":[[961,2],[1708,2],[2488,1],[2982,1]]},"135":{"position":[[908,2],[5852,2],[8007,2],[8153,2],[10138,2],[10284,2],[11176,2],[11322,2],[11437,2],[11577,2],[12931,2],[13077,2],[13192,2]]},"190":{"position":[[275,1]]},"243":{"position":[[1503,1]]},"247":{"position":[[1713,1]]}}}],["3.5",{"_index":1275,"t":{"165":{"position":[[730,3]]},"169":{"position":[[387,3]]},"200":{"position":[[1161,3]]},"202":{"position":[[744,3],[1712,3]]}}}],["3000:3000",{"_index":608,"t":{"71":{"position":[[1536,11]]}}}],["31t16:00:00z",{"_index":1218,"t":{"135":{"position":[[9356,12],[9862,12]]}}}],["31t20:00:00z",{"_index":1221,"t":{"135":{"position":[[9389,12],[9895,12]]}}}],["32768",{"_index":1473,"t":{"196":{"position":[[500,6]]}}}],["349.00",{"_index":398,"t":{"63":{"position":[[3665,7],[4760,7],[5868,7],[6210,7],[6544,7]]}}}],["385.58",{"_index":410,"t":{"63":{"position":[[3955,7],[5050,7],[5985,7],[6327,7],[6661,7]]}}}],["399.00",{"_index":390,"t":{"63":{"position":[[3519,7],[4614,7],[5820,7],[6162,7],[6496,7]]}}}],["4",{"_index":407,"t":{"63":{"position":[[3903,1],[4073,1],[4998,1],[5168,1],[5919,2],[6261,2],[6595,2]]},"67":{"position":[[668,2],[1067,2]]},"115":{"position":[[544,1]]},"126":{"position":[[2140,1]]},"135":{"position":[[8094,2],[10225,2],[11263,2],[11520,2],[13018,2],[13275,2],[13332,2]]},"165":{"position":[[749,2]]},"169":{"position":[[398,2]]},"184":{"position":[[374,1]]},"186":{"position":[[420,1]]},"192":{"position":[[321,3]]},"202":{"position":[[120,1],[955,1],[1459,1]]},"208":{"position":[[226,3]]},"256":{"position":[[185,2]]},"258":{"position":[[72,2]]}}}],["4317",{"_index":557,"t":{"69":{"position":[[1018,5]]}}}],["4317:4317",{"_index":544,"t":{"69":{"position":[[434,11]]}}}],["4o",{"_index":1483,"t":{"198":{"position":[[585,4]]}}}],["5",{"_index":201,"t":{"53":{"position":[[2118,1],[2285,1],[2896,1]]},"63":{"position":[[4063,2],[5158,2]]},"135":{"position":[[2019,1],[3377,1]]}}}],["5s",{"_index":575,"t":{"69":{"position":[[1884,2]]}}}],["6",{"_index":1111,"t":{"128":{"position":[[1483,1]]}}}],["67814",{"_index":1213,"t":{"135":{"position":[[9292,5],[9798,5]]}}}],["6bc4da86",{"_index":1762,"t":{"264":{"position":[[1715,10]]}}}],["6f29f6c9",{"_index":1763,"t":{"264":{"position":[[1825,10]]}}}],["718",{"_index":1216,"t":{"135":{"position":[[9344,3],[9850,3]]}}}],["719",{"_index":1220,"t":{"135":{"position":[[9377,3],[9883,3]]}}}],["720",{"_index":1223,"t":{"135":{"position":[[9412,4],[9918,4]]}}}],["76186c7a",{"_index":1764,"t":{"264":{"position":[[1930,10]]}}}],["78172.75",{"_index":1184,"t":{"135":{"position":[[5238,8],[5659,8],[6172,8],[6273,8]]}}}],["8000:8000",{"_index":1779,"t":{"270":{"position":[[1210,9]]}}}],["84569",{"_index":1215,"t":{"135":{"position":[[9323,5],[9829,5]]}}}],["86a2aaff",{"_index":1757,"t":{"264":{"position":[[1277,10]]}}}],["87249",{"_index":1222,"t":{"135":{"position":[[9402,5],[9908,5]]}}}],["89912",{"_index":1219,"t":{"135":{"position":[[9369,5],[9875,5]]}}}],["8x7b",{"_index":1472,"t":{"196":{"position":[[495,4]]}}}],["9090:9090",{"_index":553,"t":{"69":{"position":[[648,11]]}}}],["9b411afd",{"_index":1190,"t":{"135":{"position":[[6504,8]]}}}],["9b411afd.yaml",{"_index":1198,"t":{"135":{"position":[[7040,13]]}}}],["_",{"_index":333,"t":{"63":{"position":[[969,1],[971,1],[976,2],[983,1],[992,1],[1029,2],[1053,1],[1070,1],[1084,3],[1110,3]]},"109":{"position":[[1252,1],[1254,1],[1259,2],[1266,1],[1275,1],[1312,2],[1336,1],[1353,1],[1367,3],[1393,3]]},"135":{"position":[[352,1],[354,1],[359,2],[366,1],[375,1],[412,2],[436,1],[453,1],[467,3],[493,3],[7421,1],[7423,1],[7428,2],[7435,1],[7444,1],[7481,2],[7505,1],[7522,1],[7536,3],[7562,3]]},"228":{"position":[[193,1],[195,1],[200,2],[207,1],[216,1],[253,2],[277,1],[294,1],[308,3],[334,3]]},"237":{"position":[[599,1],[601,1],[606,2],[613,1],[622,1],[659,2],[683,1],[700,1],[714,3],[740,3]]},"260":{"position":[[380,1],[382,1],[387,2],[394,1],[403,1],[440,2],[464,1],[481,1],[495,3],[521,3]]}}}],["__",{"_index":334,"t":{"63":{"position":[[973,2],[1000,3],[1009,2],[1034,3],[1058,2],[1088,3],[1106,3],[1122,3]]},"109":{"position":[[1256,2],[1283,3],[1292,2],[1317,3],[1341,2],[1371,3],[1389,3],[1405,3]]},"135":{"position":[[356,2],[383,3],[392,2],[417,3],[441,2],[471,3],[489,3],[505,3],[7425,2],[7452,3],[7461,2],[7486,3],[7510,2],[7540,3],[7558,3],[7574,3]]},"228":{"position":[[197,2],[224,3],[233,2],[258,3],[282,2],[312,3],[330,3],[346,3],[1376,11],[1405,6],[1419,6],[1426,6],[1433,6],[1440,10],[1472,5],[1529,7],[1537,6],[1544,5],[1553,5],[1959,11],[1988,6],[2002,6],[2009,6],[2016,6],[2023,10],[2055,5],[2112,7],[2120,6],[2127,5],[2136,5],[2499,11],[2528,6],[2542,6],[2549,6],[2556,6],[2563,10],[2595,5],[2652,7],[2660,6],[2667,5],[2676,5],[2834,11],[2863,6],[2877,6],[2884,6],[2891,6],[2898,10],[2930,5],[2987,7],[2995,6],[3002,5],[3011,5],[3161,11],[3190,6],[3204,6],[3211,6],[3218,6],[3225,10],[3257,5],[3314,7],[3322,6],[3329,5],[3338,5]]},"237":{"position":[[603,2],[630,3],[639,2],[664,3],[688,2],[718,3],[736,3],[752,3]]},"260":{"position":[[384,2],[411,3],[420,2],[445,3],[469,2],[499,3],[517,3],[533,3]]}}}],["___",{"_index":336,"t":{"63":{"position":[[985,4],[1075,4]]},"109":{"position":[[1268,4],[1358,4]]},"135":{"position":[[368,4],[458,4],[7437,4],[7527,4]]},"228":{"position":[[209,4],[299,4],[1290,3],[1294,3],[1298,3],[1873,3],[1877,3],[1881,3],[2413,3],[2417,3],[2421,3],[2748,3],[2752,3],[2756,3],[3075,3],[3079,3],[3083,3]]},"237":{"position":[[615,4],[705,4],[973,3]]},"260":{"position":[[396,4],[486,4],[754,3]]}}}],["___/\\___/_",{"_index":339,"t":{"63":{"position":[[1166,12]]},"109":{"position":[[1449,12]]},"135":{"position":[[549,12],[7618,12]]},"228":{"position":[[390,12]]},"237":{"position":[[796,12]]},"260":{"position":[[577,12]]}}}],["____",{"_index":337,"t":{"63":{"position":[[1004,4]]},"109":{"position":[[1287,4]]},"135":{"position":[[387,4],[7456,4]]},"228":{"position":[[228,4]]},"237":{"position":[[634,4]]},"260":{"position":[[415,4]]}}}],["_____",{"_index":332,"t":{"63":{"position":[[963,5],[1012,5],[1018,5]]},"109":{"position":[[1246,5],[1295,5],[1301,5]]},"135":{"position":[[346,5],[395,5],[401,5],[7415,5],[7464,5],[7470,5]]},"228":{"position":[[187,5],[236,5],[242,5]]},"237":{"position":[[593,5],[642,5],[648,5]]},"260":{"position":[[374,5],[423,5],[429,5]]}}}],["__call__",{"_index":1704,"t":{"243":{"position":[[2361,8]]}}}],["__call__(self",{"_index":967,"t":{"103":{"position":[[3121,14]]},"224":{"position":[[388,14],[1233,14]]},"243":{"position":[[480,14]]}}}],["__import__",{"_index":1065,"t":{"115":{"position":[[1455,14]]}}}],["__import__\",\"ev",{"_index":93,"t":{"49":{"position":[[686,21]]}}}],["__init__",{"_index":773,"t":{"87":{"position":[[258,9]]},"99":{"position":[[198,9],[2108,9]]},"103":{"position":[[576,9]]},"194":{"position":[[2452,8],[2655,8]]}}}],["__init__(self",{"_index":1419,"t":{"194":{"position":[[1722,14],[2789,14]]}}}],["__main__",{"_index":1321,"t":{"177":{"position":[[288,11]]}}}],["__name__",{"_index":1320,"t":{"177":{"position":[[276,8]]}}}],["_configur",{"_index":1395,"t":{"194":{"position":[[610,10]]}}}],["_configure(self",{"_index":895,"t":{"99":{"position":[[1902,17]]},"194":{"position":[[795,16]]}}}],["_reduc",{"_index":1168,"t":{"135":{"position":[[2547,7],[3905,7]]}}}],["_stat_funct",{"_index":1165,"t":{"135":{"position":[[2421,14],[3779,14]]}}}],["_|\\__,_|___/_|\\_\\|__/|__/\\___/\\__,_",{"_index":338,"t":{"63":{"position":[[1128,37]]},"109":{"position":[[1411,37]]},"135":{"position":[[511,37],[7580,37]]},"228":{"position":[[352,37]]},"237":{"position":[[758,37]]},"260":{"position":[[539,37]]}}}],["_|_",{"_index":335,"t":{"63":{"position":[[979,3]]},"109":{"position":[[1262,3]]},"135":{"position":[[362,3],[7431,3]]},"228":{"position":[[203,3]]},"237":{"position":[[609,3]]},"260":{"position":[[390,3]]}}}],["abc",{"_index":1639,"t":{"228":{"position":[[574,3],[626,5],[705,5],[797,5],[885,5],[960,5],[1040,5],[1681,5],[2177,5],[2256,5],[2384,5],[2719,5],[3046,5]]}}}],["abc/def.txt",{"_index":1099,"t":{"128":{"position":[[294,12],[355,12],[477,13],[678,12],[768,14],[1056,12],[1333,14],[1439,14]]}}}],["abov",{"_index":241,"t":{"55":{"position":[[13,6]]},"63":{"position":[[663,5],[3377,5],[3411,5],[4472,5],[4506,5]]},"71":{"position":[[1120,5]]},"99":{"position":[[2900,5]]},"109":{"position":[[1859,5],[1893,5],[2262,5],[2296,5],[2646,5],[2680,5]]},"111":{"position":[[675,5]]},"135":{"position":[[1886,5],[3244,5],[5154,5],[5192,5],[5575,5],[5613,5],[9172,5],[9210,5],[9678,5],[9716,5],[12345,5],[12383,5],[12637,5],[12675,5]]},"194":{"position":[[3663,5]]},"202":{"position":[[1693,5]]},"228":{"position":[[1218,5],[1252,5],[1801,5],[1835,5]]},"239":{"position":[[631,5]]},"243":{"position":[[2728,6]]},"247":{"position":[[1066,6],[1237,5]]}}}],["absolut",{"_index":1661,"t":{"237":{"position":[[1751,8]]}}}],["abstract",{"_index":121,"t":{"51":{"position":[[455,9]]},"73":{"position":[[190,11],[337,11]]}}}],["access",{"_index":520,"t":{"67":{"position":[[1964,6]]},"83":{"position":[[280,6],[437,6]]},"85":{"position":[[79,6],[274,6],[367,6],[901,9],[1177,6]]},"103":{"position":[[3021,6]]},"247":{"position":[[3342,8]]},"262":{"position":[[147,6]]},"270":{"position":[[1328,6]]},"274":{"position":[[509,6]]}}}],["accessories:1",{"_index":394,"t":{"63":{"position":[[3606,13],[3733,13],[4042,13],[4701,13],[4828,13],[5137,13]]}}}],["accomplish",{"_index":1592,"t":{"216":{"position":[[1762,10]]},"239":{"position":[[146,10]]},"264":{"position":[[1567,11]]}}}],["account",{"_index":1256,"t":{"152":{"position":[[13,7]]},"154":{"position":[[83,7]]},"156":{"position":[[96,7]]},"184":{"position":[[10,7]]},"186":{"position":[[10,7],[80,7]]},"188":{"position":[[10,7]]},"190":{"position":[[10,7]]},"192":{"position":[[93,7]]},"196":{"position":[[188,7]]},"206":{"position":[[80,7]]},"208":{"position":[[10,7]]}}}],["accumul",{"_index":586,"t":{"71":{"position":[[633,11]]}}}],["accur",{"_index":1554,"t":{"214":{"position":[[573,11]]}}}],["accuraci",{"_index":1715,"t":{"247":{"position":[[2588,9]]}}}],["achiev",{"_index":1548,"t":{"212":{"position":[[816,7]]},"216":{"position":[[681,7],[1907,7]]}}}],["activ",{"_index":269,"t":{"59":{"position":[[121,9],[323,9]]},"198":{"position":[[994,11]]},"237":{"position":[[1841,6]]},"250":{"position":[[178,8]]}}}],["actual",{"_index":229,"t":{"53":{"position":[[3218,6]]},"85":{"position":[[2049,6]]},"124":{"position":[[358,8]]},"190":{"position":[[939,6]]},"200":{"position":[[1256,6]]}}}],["ad",{"_index":177,"t":{"53":{"position":[[1072,6]]},"81":{"position":[[531,6]]},"99":{"position":[[512,6]]},"194":{"position":[[2617,6]]},"247":{"position":[[2060,5]]}}}],["ada",{"_index":1013,"t":{"111":{"position":[[421,3]]},"135":{"position":[[7086,3]]}}}],["adapt",{"_index":1030,"t":{"113":{"position":[[191,7]]}}}],["add",{"_index":26,"t":{"44":{"position":[[5,3]]},"49":{"position":[[34,3]]},"51":{"position":[[61,3],[238,3]]},"71":{"position":[[286,3],[1357,3]]},"73":{"position":[[175,3],[725,3]]},"81":{"position":[[491,3],[589,3]]},"83":{"position":[[926,3]]},"85":{"position":[[1720,4],[1931,3]]},"99":{"position":[[3707,3]]},"107":{"position":[[175,3]]},"113":{"position":[[809,3]]},"131":{"position":[[25,3],[1041,3]]},"171":{"position":[[1128,3]]},"177":{"position":[[643,3]]},"184":{"position":[[122,3]]},"186":{"position":[[178,3]]},"188":{"position":[[53,3]]},"190":{"position":[[80,3]]},"192":{"position":[[215,3]]},"196":{"position":[[312,3]]},"198":{"position":[[384,3],[1028,3]]},"200":{"position":[[1012,3]]},"204":{"position":[[695,3]]},"206":{"position":[[217,3]]},"208":{"position":[[50,3]]},"224":{"position":[[536,3]]},"231":{"position":[[1009,3]]},"243":{"position":[[655,3],[996,4]]},"247":{"position":[[1454,3]]}}}],["add_artifact",{"_index":1708,"t":{"245":{"position":[[284,12],[493,12]]}}}],["add_prompt_s",{"_index":629,"t":{"73":{"position":[[708,16]]}}}],["addit",{"_index":237,"t":{"53":{"position":[[3490,10]]},"73":{"position":[[761,9]]},"77":{"position":[[527,9]]},"79":{"position":[[269,10]]},"81":{"position":[[73,10],[495,10],[690,10]]},"85":{"position":[[1728,10]]},"87":{"position":[[599,10]]},"91":{"position":[[61,10]]},"97":{"position":[[797,9]]},"99":{"position":[[3869,8]]},"186":{"position":[[604,10]]},"243":{"position":[[1004,10]]},"245":{"position":[[47,10]]},"247":{"position":[[993,8]]},"270":{"position":[[330,10]]},"272":{"position":[[624,9]]}}}],["address",{"_index":18,"t":{"41":{"position":[[201,7]]},"67":{"position":[[2460,8]]},"85":{"position":[[575,7],[680,7],[706,8],[847,9],[1507,7],[1704,10]]},"107":{"position":[[383,7]]},"262":{"position":[[251,7]]}}}],["affect",{"_index":273,"t":{"59":{"position":[[203,6]]}}}],["aforement",{"_index":1559,"t":{"214":{"position":[[1176,14]]}}}],["afterward",{"_index":1132,"t":{"131":{"position":[[1117,10]]}}}],["again",{"_index":331,"t":{"63":{"position":[[677,5],[2569,5]]},"135":{"position":[[4488,6],[7273,6]]}}}],["agent",{"_index":41,"t":{"47":{"position":[[0,5]]},"75":{"position":[[97,5],[387,5]]},"77":{"position":[[702,5]]},"81":{"position":[[1269,5]]},"83":{"position":[[517,5]]},"85":{"position":[[19,5],[151,5]]},"131":{"position":[[4,5],[337,5],[467,5],[821,5]]},"137":{"position":[[292,6]]},"141":{"position":[[295,6],[310,5],[352,5]]},"212":{"position":[[13,5]]},"214":{"position":[[726,5]]},"216":{"position":[[27,5]]}}}],["ago",{"_index":144,"t":{"53":{"position":[[279,4]]}}}],["ai",{"_index":340,"t":{"63":{"position":[[1269,2],[1958,2]]},"109":{"position":[[1552,2]]},"135":{"position":[[653,2],[7722,2]]},"152":{"position":[[31,2]]},"156":{"position":[[45,2]]},"158":{"position":[[25,2]]},"188":{"position":[[28,2]]},"192":{"position":[[42,2]]},"198":{"position":[[14,2],[145,2],[201,2],[259,2],[355,2],[658,2],[850,2]]},"228":{"position":[[493,2]]},"237":{"position":[[899,2],[1241,2]]},"260":{"position":[[680,2]]},"274":{"position":[[827,2]]}}}],["algorithm",{"_index":1583,"t":{"216":{"position":[[526,10],[585,10]]},"247":{"position":[[1721,10]]}}}],["alia",{"_index":888,"t":{"99":{"position":[[1272,6],[1442,6],[1453,5],[4010,6]]},"107":{"position":[[743,5]]}}}],["alibaba",{"_index":1260,"t":{"154":{"position":[[47,8]]},"206":{"position":[[44,8]]}}}],["align",{"_index":1012,"t":{"111":{"position":[[305,7]]}}}],["allow",{"_index":21,"t":{"41":{"position":[[237,6]]},"49":{"position":[[414,7],[590,7],[813,7]]},"51":{"position":[[519,7]]},"65":{"position":[[128,6]]},"71":{"position":[[276,6]]},"85":{"position":[[224,5],[402,8],[606,5]]},"99":{"position":[[506,5]]},"103":{"position":[[233,6]]},"109":{"position":[[604,5],[832,6],[1067,7]]},"115":{"position":[[1183,7],[1359,7]]},"216":{"position":[[361,6],[550,6]]},"218":{"position":[[476,6]]},"231":{"position":[[66,6],[763,8]]},"245":{"position":[[306,6]]}}}],["allowed_modul",{"_index":103,"t":{"49":{"position":[[874,15]]}}}],["alreadi",{"_index":172,"t":{"53":{"position":[[999,7]]},"179":{"position":[[200,7],[261,7]]}}}],["altern",{"_index":1033,"t":{"113":{"position":[[519,11],[633,11]]},"131":{"position":[[81,14]]}}}],["although",{"_index":1653,"t":{"231":{"position":[[1155,8]]}}}],["alway",{"_index":648,"t":{"75":{"position":[[424,6]]},"85":{"position":[[2622,6]]},"97":{"position":[[192,6],[737,6]]},"128":{"position":[[132,6]]}}}],["analysi",{"_index":118,"t":{"51":{"position":[[350,8],[609,8]]}}}],["analyt",{"_index":1576,"t":{"216":{"position":[[86,9],[267,9]]}}}],["analyz",{"_index":442,"t":{"65":{"position":[[538,9]]}}}],["annot",{"_index":588,"t":{"71":{"position":[[709,8]]},"97":{"position":[[1737,10]]},"126":{"position":[[367,10]]}}}],["anomali",{"_index":1285,"t":{"171":{"position":[[241,9],[1070,9],[1226,7]]},"239":{"position":[[356,7],[787,9]]},"243":{"position":[[253,7],[597,9],[749,7],[1105,7],[1694,9],[2765,9]]},"245":{"position":[[407,7]]},"247":{"position":[[1243,7],[1396,9],[1548,7],[1694,9],[2101,7],[2202,7]]},"264":{"position":[[1383,9]]}}}],["anomaly_count",{"_index":1695,"t":{"243":{"position":[[1627,13]]}}}],["anomaly_descript",{"_index":1671,"t":{"239":{"position":[[518,19]]}}}],["anomaly_detect",{"_index":1298,"t":{"171":{"position":[[1013,18],[1032,17]]},"239":{"position":[[674,18],[754,17]]},"243":{"position":[[559,17]]},"247":{"position":[[1275,17],[1358,17],[2367,17],[2630,17]]}}}],["anomaly_detection(df",{"_index":1672,"t":{"239":{"position":[[540,21]]}}}],["anomaly_detection.pi",{"_index":1713,"t":{"247":{"position":[[2411,21]]}}}],["anomaly_detection_cod",{"_index":1717,"t":{"247":{"position":[[2776,22]]}}}],["anomaly_detection_code.pi",{"_index":1716,"t":{"247":{"position":[[2674,26]]}}}],["anomaly_df",{"_index":1670,"t":{"239":{"position":[[506,11]]}}}],["anomalydetectionplugin(plugin",{"_index":1678,"t":{"243":{"position":[[444,31],[2255,32]]}}}],["anonym",{"_index":970,"t":{"103":{"position":[[3244,12]]}}}],["anoth",{"_index":147,"t":{"53":{"position":[[337,7]]},"67":{"position":[[690,7],[1566,7]]},"85":{"position":[[1839,7]]},"124":{"position":[[627,7]]},"126":{"position":[[429,7]]},"131":{"position":[[112,7]]},"204":{"position":[[363,7]]},"214":{"position":[[614,7]]}}}],["answer",{"_index":931,"t":{"99":{"position":[[4185,6]]}}}],["anthrop",{"_index":1372,"t":{"190":{"position":[[21,9],[61,9],[153,12],[390,9],[642,9],[946,9]]},"200":{"position":[[127,10]]}}}],["anthropic'",{"_index":1376,"t":{"190":{"position":[[424,11]]}}}],["anyon",{"_index":1737,"t":{"262":{"position":[[136,6]]}}}],["anyth",{"_index":1503,"t":{"200":{"position":[[1131,11]]}}}],["api",{"_index":482,"t":{"67":{"position":[[229,4]]},"111":{"position":[[151,4],[691,5]]},"113":{"position":[[68,5],[210,4]]},"115":{"position":[[586,4],[633,3],[655,4],[701,4],[781,4],[859,4],[961,3]]},"152":{"position":[[47,3]]},"154":{"position":[[103,3]]},"156":{"position":[[116,3]]},"160":{"position":[[49,3]]},"184":{"position":[[47,3]]},"188":{"position":[[44,3]]},"190":{"position":[[44,3],[400,3],[443,3],[956,3]]},"192":{"position":[[113,3],[477,4]]},"194":{"position":[[49,3],[130,3],[667,3],[2279,3],[2290,3],[2425,4],[3522,6],[3810,3],[3962,4],[4010,4],[4026,3],[4094,4],[4205,3]]},"196":{"position":[[208,3],[559,4]]},"198":{"position":[[110,3],[278,3]]},"200":{"position":[[172,3],[513,3],[660,3],[849,3],[1240,3]]},"204":{"position":[[659,3]]},"206":{"position":[[100,3],[405,4]]},"208":{"position":[[41,3]]},"245":{"position":[[297,3],[506,3]]},"254":{"position":[[59,3]]},"256":{"position":[[131,3]]},"258":{"position":[[22,3],[103,3],[193,4]]}}}],["api_key",{"_index":1403,"t":{"194":{"position":[[931,10]]}}}],["app",{"_index":780,"t":{"87":{"position":[[440,4],[1059,4],[1640,4],[1735,4],[1780,3],[1842,4],[1885,3],[2005,3],[2453,4],[2516,4]]},"93":{"position":[[107,4]]},"101":{"position":[[114,4]]},"103":{"position":[[75,4],[138,4],[187,4],[291,4],[344,3],[885,3],[1531,4],[1605,4],[2331,3]]},"264":{"position":[[272,3]]}}}],["app'",{"_index":836,"t":{"93":{"position":[[848,5]]}}}],["app.get_sess",{"_index":801,"t":{"87":{"position":[[2063,17]]},"264":{"position":[[319,17]]}}}],["app.pi",{"_index":1744,"t":{"262":{"position":[[882,6]]}}}],["app.stop",{"_index":805,"t":{"87":{"position":[[2153,10]]}}}],["app/entrypoint_chainlit.sh",{"_index":1781,"t":{"270":{"position":[[1235,27]]}}}],["app/taskweaver/loc",{"_index":1789,"t":{"274":{"position":[[566,22],[630,22]]}}}],["app/taskweaver/local/example.csv",{"_index":1791,"t":{"274":{"position":[[908,33]]}}}],["app_dir",{"_index":775,"t":{"87":{"position":[[274,8],[452,8],[629,7]]},"264":{"position":[[249,7]]}}}],["app_injector",{"_index":944,"t":{"103":{"position":[[631,13],[867,13]]}}}],["appbasedir",{"_index":1075,"t":{"115":{"position":[[2994,13]]}}}],["appbasedir}/codeinterpreter_exampl",{"_index":1073,"t":{"115":{"position":[[2100,38]]}}}],["appbasedir}/planner_exampl",{"_index":972,"t":{"107":{"position":[[86,31]]},"115":{"position":[[1797,30]]}}}],["appbasedir}/plugin",{"_index":1071,"t":{"115":{"position":[[1711,21]]}}}],["append",{"_index":311,"t":{"59":{"position":[[1391,8]]},"71":{"position":[[1412,9]]},"214":{"position":[[1294,8]]}}}],["appli",{"_index":766,"t":{"85":{"position":[[2702,8]]},"239":{"position":[[350,5]]}}}],["approach",{"_index":716,"t":{"85":{"position":[[309,8],[2365,8]]}}}],["appsessionconfig",{"_index":945,"t":{"103":{"position":[[706,17]]}}}],["arbitrary_str",{"_index":1524,"t":{"204":{"position":[[809,19]]}}}],["architectur",{"_index":500,"t":{"67":{"position":[[1160,12]]}}}],["arg",{"_index":637,"t":{"73":{"position":[[1120,6]]},"91":{"position":[[230,5]]},"93":{"position":[[337,5]]},"97":{"position":[[360,5]]},"101":{"position":[[236,5]]},"224":{"position":[[403,6]]}}}],["argument",{"_index":784,"t":{"87":{"position":[[610,10]]},"171":{"position":[[1258,9],[1405,9],[1693,9]]},"200":{"position":[[818,8]]},"231":{"position":[[670,8]]},"233":{"position":[[179,10],[284,12]]}}}],["argument1",{"_index":968,"t":{"103":{"position":[[3136,10]]}}}],["array",{"_index":221,"t":{"53":{"position":[[2702,7],[2729,5],[2844,7],[2871,5]]}}}],["array([0.09918602",{"_index":996,"t":{"109":{"position":[[1931,18],[2334,18],[2718,18]]}}}],["arrow",{"_index":1557,"t":{"214":{"position":[[1116,6]]}}}],["art",{"_index":1288,"t":{"171":{"position":[[300,4],[1395,3]]},"222":{"position":[[129,4]]},"226":{"position":[[476,3],[556,4],[732,3],[819,4]]},"228":{"position":[[587,3],[643,3],[722,3],[814,3],[902,3],[977,3],[1057,3],[1698,3],[2194,3],[2273,3],[2318,3],[2408,4],[2743,4],[3070,4]]}}}],["artifact",{"_index":783,"t":{"87":{"position":[[535,10],[771,10],[789,9],[941,9]]},"97":{"position":[[1182,8]]},"224":{"position":[[540,8]]},"243":{"position":[[1837,8],[1891,8],[1923,8]]},"245":{"position":[[534,9],[548,9],[728,8],[782,8],[814,8]]}}}],["artifact_path",{"_index":1179,"t":{"135":{"position":[[2962,16],[5268,16],[9439,16],[12446,16]]}}}],["ascii",{"_index":1287,"t":{"171":{"position":[[294,5],[1389,5]]},"222":{"position":[[123,5]]},"226":{"position":[[470,5],[550,5],[726,5],[813,5]]},"228":{"position":[[581,5],[637,5],[716,5],[808,5],[896,5],[971,5],[1051,5],[1692,5],[2188,5],[2267,5],[2312,5],[2402,5],[2737,5],[3064,5]]}}}],["ascii_art_result",{"_index":1640,"t":{"228":{"position":[[1061,16],[1100,16],[1702,16],[1741,16]]}}}],["ascii_art_str",{"_index":1634,"t":{"224":{"position":[[1276,13],[1347,13]]}}}],["ascii_rend",{"_index":1303,"t":{"171":{"position":[[1335,13]]},"224":{"position":[[204,13]]},"226":{"position":[[372,12]]},"231":{"position":[[279,12],[534,12]]},"233":{"position":[[268,15]]}}}],["ascii_render(\"abc",{"_index":1641,"t":{"228":{"position":[[1080,19],[1721,19]]}}}],["ascii_render(text='hello",{"_index":1638,"t":{"226":{"position":[[583,24]]}}}],["ascii_render.pi",{"_index":1310,"t":{"173":{"position":[[139,15]]},"177":{"position":[[245,15]]},"224":{"position":[[27,15]]}}}],["ascii_render.yaml",{"_index":1311,"t":{"173":{"position":[[159,18]]},"226":{"position":[[308,17]]}}}],["asciirenderplugin(name=\"ascii_rend",{"_index":1325,"t":{"177":{"position":[[393,38]]}}}],["asciirenderplugin(plugin",{"_index":1632,"t":{"224":{"position":[[1202,26]]}}}],["ask",{"_index":199,"t":{"53":{"position":[[2096,5],[2465,5]]},"63":{"position":[[1815,3]]},"83":{"position":[[509,3]]},"131":{"position":[[197,4],[406,4]]},"135":{"position":[[7288,3]]},"169":{"position":[[114,5]]},"171":{"position":[[65,3]]},"214":{"position":[[220,3]]}}}],["assembl",{"_index":1656,"t":{"233":{"position":[[345,8]]}}}],["assign",{"_index":1349,"t":{"186":{"position":[[38,6],[1579,8]]}}}],["assist",{"_index":203,"t":{"53":{"position":[[2175,9]]},"63":{"position":[[1272,10],[1961,10]]},"109":{"position":[[1555,10]]},"113":{"position":[[821,9]]},"135":{"position":[[656,10],[7725,10]]},"171":{"position":[[187,6],[478,6]]},"228":{"position":[[496,10]]},"237":{"position":[[902,10],[1244,10]]},"260":{"position":[[683,10]]},"274":{"position":[[830,10]]}}}],["associ",{"_index":837,"t":{"93":{"position":[[988,10]]},"95":{"position":[[142,10]]}}}],["assum",{"_index":525,"t":{"67":{"position":[[2089,6]]},"237":{"position":[[253,6]]},"260":{"position":[[2,6]]},"262":{"position":[[766,6]]}}}],["ast",{"_index":120,"t":{"51":{"position":[[451,3],[498,3]]}}}],["atta",{"_index":1761,"t":{"264":{"position":[[1693,5],[1803,5],[1908,5]]}}}],["attach",{"_index":812,"t":{"89":{"position":[[217,8]]},"91":{"position":[[3,10],[135,11],[147,13],[200,8],[258,11],[563,11]]},"97":{"position":[[295,11],[544,11],[1052,11],[1081,10],[1205,10]]},"124":{"position":[[665,12]]},"126":{"position":[[2013,11],[2463,10],[2490,12],[2513,10],[2556,10],[2596,10],[2957,10],[2984,12]]},"128":{"position":[[1153,11],[1458,10],[1485,12],[1508,10],[1569,10],[1633,10],[1721,10],[1777,10],[1859,10]]},"214":{"position":[[1275,10],[1363,10],[2173,10],[2341,11]]}}}],["attachment_list",{"_index":854,"t":{"97":{"position":[[517,16],[632,16],[1023,15]]},"124":{"position":[[823,16],[892,16]]},"126":{"position":[[676,16],[827,16],[1434,16],[1574,16]]},"128":{"position":[[412,16],[577,16]]},"264":{"position":[[1222,18],[1664,18]]}}}],["attachmenttyp",{"_index":823,"t":{"91":{"position":[[444,14],[500,14]]}}}],["attempt",{"_index":1125,"t":{"131":{"position":[[287,8]]},"135":{"position":[[249,9]]}}}],["attribut",{"_index":383,"t":{"63":{"position":[[3466,10],[4160,11],[4176,10],[4561,10],[5255,11],[5271,10]]},"65":{"position":[[1332,11]]},"71":{"position":[[290,10],[359,11],[747,9]]},"73":{"position":[[634,9]]},"99":{"position":[[3524,11]]}}}],["authent",{"_index":1356,"t":{"186":{"position":[[672,14],[707,14],[818,12],[1113,14],[1136,14],[1310,14],[1457,15],[1743,14],[1895,15]]},"262":{"position":[[286,14]]}}}],["author",{"_index":1740,"t":{"262":{"position":[[305,14]]}}}],["auto",{"_index":247,"t":{"57":{"position":[[29,4]]},"59":{"position":[[38,4],[677,4]]},"61":{"position":[[63,4],[171,4]]},"63":{"position":[[17,4],[314,4],[720,4],[762,4],[856,4],[1420,4],[2481,4],[2586,4]]},"111":{"position":[[78,4]]},"115":{"position":[[2300,4],[2508,4]]}}}],["autom",{"_index":1580,"t":{"216":{"position":[[289,10]]}}}],["automat",{"_index":268,"t":{"59":{"position":[[76,9],[294,9],[1332,9]]},"63":{"position":[[375,13]]},"200":{"position":[[891,13]]},"216":{"position":[[1253,13]]},"262":{"position":[[952,14]]}}}],["avail",{"_index":422,"t":{"63":{"position":[[6049,13],[6391,13],[6725,13]]},"67":{"position":[[804,9]]},"79":{"position":[[423,9],[983,10]]},"83":{"position":[[585,9],[877,9]]},"89":{"position":[[195,9]]},"93":{"position":[[904,9]]},"103":{"position":[[2764,9]]},"115":{"position":[[34,9]]},"171":{"position":[[143,9],[1515,9]]},"186":{"position":[[874,12],[1236,9]]},"190":{"position":[[359,9]]},"237":{"position":[[1078,9],[1188,9]]},"264":{"position":[[1771,9],[1876,9],[1994,9]]}}}],["avoid",{"_index":1246,"t":{"139":{"position":[[508,5]]}}}],["awar",{"_index":1280,"t":{"167":{"position":[[387,5]]}}}],["az",{"_index":1361,"t":{"186":{"position":[[1230,2],[1301,2]]}}}],["azur",{"_index":1058,"t":{"115":{"position":[[725,6]]},"184":{"position":[[21,5],[430,5]]},"186":{"position":[[21,5],[56,5],[476,5],[568,5],[778,5],[1364,5],[1417,6],[1513,5]]},"194":{"position":[[2942,8],[3263,8],[3440,6]]},"254":{"position":[[177,5]]},"256":{"position":[[98,8],[193,5]]}}}],["azure_ad",{"_index":1440,"t":{"194":{"position":[[2951,12],[3272,12]]}}}],["azure_client_id=\"your_client_id",{"_index":1364,"t":{"186":{"position":[[1710,32]]}}}],["azure_ml",{"_index":1447,"t":{"194":{"position":[[3374,11]]}}}],["azurecli",{"_index":1359,"t":{"186":{"position":[[1156,8],[1210,8]]}}}],["b",{"_index":1598,"t":{"218":{"position":[[244,2],[664,1],[1144,2],[1244,2],[1260,1]]}}}],["back",{"_index":366,"t":{"63":{"position":[[2447,4]]},"99":{"position":[[766,4],[3042,4]]},"165":{"position":[[304,4],[505,4]]}}}],["backend",{"_index":510,"t":{"67":{"position":[[1589,8],[1671,7],[1711,8]]}}}],["background",{"_index":943,"t":{"103":{"position":[[482,11]]}}}],["backup",{"_index":1396,"t":{"194":{"position":[[688,6]]}}}],["backup_model",{"_index":1411,"t":{"194":{"position":[[1205,15]]}}}],["bar",{"_index":453,"t":{"65":{"position":[[931,4]]}}}],["base",{"_index":175,"t":{"53":{"position":[[1042,5],[1404,5],[1717,5]]},"79":{"position":[[754,5]]},"95":{"position":[[1285,4]]},"99":{"position":[[366,4]]},"111":{"position":[[498,4],[521,4]]},"115":{"position":[[563,4],[1049,4]]},"165":{"position":[[173,5]]},"194":{"position":[[3932,5]]},"204":{"position":[[663,4]]},"214":{"position":[[262,5],[2424,5]]},"233":{"position":[[36,5]]},"237":{"position":[[2325,4]]},"243":{"position":[[1035,5]]},"260":{"position":[[865,5]]}}}],["bash",{"_index":16,"t":{"41":{"position":[[179,4]]},"63":{"position":[[897,7]]}}}],["basic",{"_index":481,"t":{"67":{"position":[[177,9]]},"101":{"position":[[161,5]]},"131":{"position":[[650,5]]},"216":{"position":[[1420,5]]}}}],["be",{"_index":727,"t":{"85":{"position":[[688,5]]},"87":{"position":[[902,5]]}}}],["becom",{"_index":129,"t":{"53":{"position":[[54,6]]}}}],["befor",{"_index":46,"t":{"47":{"position":[[55,6],[391,6]]},"49":{"position":[[202,6]]},"63":{"position":[[0,6]]},"85":{"position":[[2695,6]]},"87":{"position":[[1769,6],[1874,6]]},"103":{"position":[[2426,6]]},"171":{"position":[[989,6]]},"204":{"position":[[1033,7]]},"216":{"position":[[1178,6]]},"228":{"position":[[3410,6]]},"245":{"position":[[131,6]]},"254":{"position":[[0,6]]}}}],["begin",{"_index":181,"t":{"53":{"position":[[1208,10]]}}}],["below",{"_index":194,"t":{"53":{"position":[[1958,6]]},"59":{"position":[[0,5]]},"65":{"position":[[1359,5]]},"87":{"position":[[1953,6]]},"103":{"position":[[1972,6]]},"111":{"position":[[392,6]]},"135":{"position":[[6473,6]]},"212":{"position":[[404,6]]},"214":{"position":[[502,6]]},"262":{"position":[[1021,5]]},"264":{"position":[[899,6]]}}}],["best",{"_index":251,"t":{"57":{"position":[[87,4]]},"171":{"position":[[470,4]]}}}],["better",{"_index":641,"t":{"75":{"position":[[160,6]]},"126":{"position":[[1991,6]]},"128":{"position":[[1131,6]]},"158":{"position":[[37,6]]},"198":{"position":[[194,6],[889,6]]},"264":{"position":[[909,6]]}}}],["between",{"_index":290,"t":{"59":{"position":[[865,7]]},"65":{"position":[[176,7],[1608,7]]},"77":{"position":[[129,7]]},"93":{"position":[[71,7]]},"97":{"position":[[163,7],[708,7]]},"101":{"position":[[78,7]]},"109":{"position":[[80,7]]},"113":{"position":[[842,8]]},"115":{"position":[[2626,7]]},"124":{"position":[[384,7]]},"126":{"position":[[244,7],[398,7]]},"210":{"position":[[480,7],[603,7]]},"214":{"position":[[161,7]]},"218":{"position":[[1515,7]]},"224":{"position":[[800,7]]},"264":{"position":[[794,7]]}}}],["beyond",{"_index":1593,"t":{"216":{"position":[[1793,6]]}}}],["bin",{"_index":213,"t":{"53":{"position":[[2513,3],[2551,3],[2589,3]]}}}],["black",{"_index":388,"t":{"63":{"position":[[3505,5],[3659,5],[4600,5],[4754,5],[5805,5],[5861,6],[6147,5],[6203,6],[6481,5],[6537,6]]},"65":{"position":[[943,5]]}}}],["blk.reduce(func",{"_index":1173,"t":{"135":{"position":[[2703,16],[4061,16]]}}}],["blk_func",{"_index":1177,"t":{"135":{"position":[[2941,8],[4299,8]]}}}],["block",{"_index":92,"t":{"49":{"position":[[658,5],[833,7]]},"51":{"position":[[557,7]]},"85":{"position":[[882,8],[1632,5],[1880,8],[2285,5]]},"115":{"position":[[1427,5]]},"210":{"position":[[307,6]]}}}],["blocked_funct",{"_index":104,"t":{"49":{"position":[[962,17]]}}}],["bool",{"_index":834,"t":{"93":{"position":[[719,4]]},"194":{"position":[[1862,4]]}}}],["boolean",{"_index":785,"t":{"87":{"position":[[718,7]]},"115":{"position":[[217,7]]},"231":{"position":[[706,8]]}}}],["both",{"_index":528,"t":{"69":{"position":[[0,4]]},"99":{"position":[[4525,4]]},"124":{"position":[[331,4]]},"133":{"position":[[302,4]]},"202":{"position":[[1744,4]]},"218":{"position":[[138,4]]}}}],["bottleneck",{"_index":459,"t":{"65":{"position":[[1094,10]]}}}],["break",{"_index":446,"t":{"65":{"position":[[636,6]]},"124":{"position":[[926,5]]}}}],["bridg",{"_index":1493,"t":{"200":{"position":[[206,7]]}}}],["brief",{"_index":1699,"t":{"243":{"position":[[1812,5]]},"245":{"position":[[703,5]]},"247":{"position":[[422,5]]}}}],["briefli",{"_index":1533,"t":{"210":{"position":[[642,7]]}}}],["browser",{"_index":1745,"t":{"262":{"position":[[898,7]]},"270":{"position":[[1403,8]]}}}],["build",{"_index":670,"t":{"79":{"position":[[639,5]]},"81":{"position":[[1207,8]]},"198":{"position":[[188,5]]},"210":{"position":[[298,8]]}}}],["build_executor.ps1",{"_index":672,"t":{"79":{"position":[[771,20]]},"81":{"position":[[1050,20]]}}}],["build_executor.sh",{"_index":673,"t":{"79":{"position":[[806,19]]},"81":{"position":[[870,17],[1025,19]]}}}],["built",{"_index":667,"t":{"79":{"position":[[413,5],[873,6]]}}}],["bunch",{"_index":517,"t":{"67":{"position":[[1841,5]]}}}],["bundl",{"_index":404,"t":{"63":{"position":[[3818,6],[4913,6],[5903,7],[6245,7],[6579,7]]}}}],["button",{"_index":706,"t":{"83":{"position":[[718,6]]}}}],["c18494b1",{"_index":356,"t":{"63":{"position":[[1788,8]]}}}],["cach",{"_index":691,"t":{"81":{"position":[[743,5]]}}}],["calcu",{"_index":1203,"t":{"135":{"position":[[8261,5]]}}}],["calcul",{"_index":287,"t":{"59":{"position":[[833,9]]},"135":{"position":[[57,10],[179,11],[728,9],[834,9],[1037,9],[1194,9],[1290,9],[1495,9],[4703,9],[5778,9],[5981,9],[6666,9],[6817,9],[6912,9],[7132,10],[7327,9],[7797,9],[7957,9],[8010,9],[8353,9],[10088,9],[10141,9],[10392,9],[10492,9],[10561,9],[10580,9],[10760,9],[10973,9],[11126,9],[11179,9],[11416,9],[11468,9],[11608,9],[11692,9],[11906,9],[12881,9],[12934,9],[13171,9],[13223,9]]}}}],["call",{"_index":235,"t":{"53":{"position":[[3464,4]]},"63":{"position":[[3111,4]]},"65":{"position":[[1203,5],[1703,4],[1736,4],[1777,4]]},"71":{"position":[[426,6],[757,6],[978,6]]},"73":{"position":[[890,6]]},"87":{"position":[[177,7],[1762,6],[1867,6],[2486,6]]},"103":{"position":[[416,7],[2419,6],[3298,6]]},"131":{"position":[[612,6]]},"133":{"position":[[1078,4]]},"135":{"position":[[1986,4],[3344,4]]},"165":{"position":[[623,7]]},"171":{"position":[[1737,4]]},"175":{"position":[[52,6]]},"177":{"position":[[549,4]]},"198":{"position":[[63,4],[289,4]]},"200":{"position":[[45,4],[1244,5]]},"228":{"position":[[55,4],[996,4],[1637,4]]},"231":{"position":[[210,5],[269,5],[942,6],[1311,4]]},"233":{"position":[[58,7],[366,4]]},"239":{"position":[[247,6],[637,5]]},"264":{"position":[[603,7],[2158,7]]}}}],["capabl",{"_index":809,"t":{"89":{"position":[[80,13]]}}}],["care",{"_index":949,"t":{"103":{"position":[[1081,4]]},"212":{"position":[[1182,5]]}}}],["carefulli",{"_index":1309,"t":{"173":{"position":[[73,10]]}}}],["carri",{"_index":1538,"t":{"212":{"position":[[360,5]]}}}],["case",{"_index":57,"t":{"47":{"position":[[217,5]]},"63":{"position":[[601,5]]},"67":{"position":[[1605,5]]},"85":{"position":[[8,6]]},"97":{"position":[[920,6],[1327,6],[1711,5]]},"162":{"position":[[8,6]]},"165":{"position":[[460,6],[798,4],[1078,4]]},"175":{"position":[[11,5]]},"198":{"position":[[1014,5]]},"202":{"position":[[8,6]]},"214":{"position":[[67,5],[127,4],[324,5],[626,4],[949,5]]},"218":{"position":[[255,5]]},"243":{"position":[[2798,5]]},"247":{"position":[[2436,5]]}}}],["caught",{"_index":1319,"t":{"175":{"position":[[935,6]]}}}],["caus",{"_index":134,"t":{"53":{"position":[[140,5]]},"57":{"position":[[205,5]]},"169":{"position":[[259,5]]},"173":{"position":[[230,5]]},"175":{"position":[[638,5],[688,6],[845,6]]},"179":{"position":[[296,6]]},"262":{"position":[[627,5]]}}}],["caution",{"_index":1380,"t":{"190":{"position":[[634,7]]}}}],["cautiou",{"_index":665,"t":{"77":{"position":[[633,8]]},"262":{"position":[[99,8]]},"266":{"position":[[368,8]]}}}],["cd",{"_index":318,"t":{"63":{"position":[[138,2]]},"67":{"position":[[1784,2]]},"79":{"position":[[741,2]]},"81":{"position":[[1003,2]]},"194":{"position":[[4099,2]]},"250":{"position":[[275,2]]},"262":{"position":[[806,2]]}}}],["ce",{"_index":846,"t":{"95":{"position":[[801,5],[1030,5]]},"252":{"position":[[744,5]]}}}],["cell",{"_index":1155,"t":{"135":{"position":[[2002,4],[3360,4]]}}}],["center",{"_index":1536,"t":{"212":{"position":[[186,6]]}}}],["certain",{"_index":892,"t":{"99":{"position":[[1752,7]]},"231":{"position":[[1318,7]]},"239":{"position":[[157,7]]}}}],["chainlit",{"_index":1734,"t":{"260":{"position":[[802,8]]},"262":{"position":[[470,8],[571,8],[869,8]]}}}],["chainlit<1.1.300",{"_index":1741,"t":{"262":{"position":[[505,18]]}}}],["chang",{"_index":330,"t":{"63":{"position":[[584,8],[6038,6],[6380,6],[6714,6]]},"67":{"position":[[2440,6]]},"71":{"position":[[1623,6]]},"133":{"position":[[1465,6]]},"177":{"position":[[604,6]]},"204":{"position":[[182,6]]},"224":{"position":[[784,6],[1075,7]]}}}],["charact",{"_index":1659,"t":{"237":{"position":[[1126,10]]}}}],["chart",{"_index":595,"t":{"71":{"position":[[1126,5]]}}}],["chart/df/file/txt/svg",{"_index":1701,"t":{"243":{"position":[[1951,21]]},"245":{"position":[[842,21]]}}}],["chat",{"_index":25,"t":{"41":{"position":[[283,8]]},"53":{"position":[[6,8],[37,4],[253,4],[323,4],[390,4],[552,4],[805,4],[842,4],[962,4],[1151,4],[1262,4],[1491,4],[1567,4],[1599,4],[1854,4],[1900,4],[3027,4],[3073,4],[3138,4],[3428,4],[3535,4]]},"55":{"position":[[64,4],[205,4]]},"97":{"position":[[1385,4]]},"101":{"position":[[73,4]]},"103":{"position":[[1469,4]]},"107":{"position":[[423,4],[667,4]]},"109":{"position":[[68,4],[144,4]]},"115":{"position":[[1879,4],[1989,4],[2197,4],[2414,4],[2614,4]]},"131":{"position":[[711,4]]},"133":{"position":[[105,4],[576,4],[619,4],[704,4],[1137,4]]},"135":{"position":[[6330,4],[6357,4],[6457,4]]},"184":{"position":[[712,4]]},"186":{"position":[[1932,4]]},"188":{"position":[[256,4]]},"190":{"position":[[810,4]]},"192":{"position":[[554,4]]},"196":{"position":[[641,4]]},"198":{"position":[[771,5]]},"200":{"position":[[1454,5]]},"204":{"position":[[1062,4]]},"206":{"position":[[487,4]]},"208":{"position":[[591,4]]},"212":{"position":[[1133,4]]},"214":{"position":[[2666,4]]},"216":{"position":[[1093,4],[1681,4]]},"237":{"position":[[1333,4],[1516,4],[1576,4],[1982,4],[2039,4]]}}}],["chat_complet",{"_index":1416,"t":{"194":{"position":[[1607,15],[1798,16],[2187,16]]}}}],["chatglm",{"_index":1263,"t":{"156":{"position":[[7,9]]},"192":{"position":[[4,9]]}}}],["chatmessagetyp",{"_index":1393,"t":{"194":{"position":[[495,15]]}}}],["check",{"_index":65,"t":{"47":{"position":[[366,5]]},"49":{"position":[[800,8]]},"51":{"position":[[384,5],[485,5]]},"63":{"position":[[1355,5],[2534,5]]},"67":{"position":[[114,5]]},"79":{"position":[[909,5],[1128,5]]},"81":{"position":[[1155,5]]},"113":{"position":[[719,5]]},"135":{"position":[[6778,5]]},"165":{"position":[[1060,5]]},"171":{"position":[[19,5],[601,5],[713,5],[1770,5]]},"173":{"position":[[281,5],[757,7],[845,5]]},"175":{"position":[[195,5],[592,8]]},"186":{"position":[[1481,5]]},"226":{"position":[[239,5]]},"228":{"position":[[3349,5]]}}}],["chief",{"_index":1458,"t":{"196":{"position":[[28,5]]}}}],["chines",{"_index":1262,"t":{"154":{"position":[[147,9]]},"206":{"position":[[144,9]]}}}],["choos",{"_index":164,"t":{"53":{"position":[[723,6]]},"71":{"position":[[1661,8]]},"75":{"position":[[594,6]]},"99":{"position":[[1730,8]]}}}],["chosen",{"_index":310,"t":{"59":{"position":[[1372,6]]}}}],["clariti",{"_index":1714,"t":{"247":{"position":[[2576,7]]}}}],["class",{"_index":622,"t":{"73":{"position":[[459,6],[523,5],[825,5]]},"87":{"position":[[30,5],[225,5],[1203,5],[1674,5]]},"91":{"position":[[129,5],[526,5]]},"93":{"position":[[170,5]]},"97":{"position":[[105,5]]},"99":{"position":[[174,5],[371,5],[496,6],[570,5],[1576,6],[1642,6],[1812,6],[1861,6],[1868,5],[2078,5],[2280,6],[2858,5],[3397,5]]},"101":{"position":[[130,5]]},"103":{"position":[[468,6],[549,5],[1128,5],[1979,5],[2193,5],[3090,5]]},"186":{"position":[[763,5]]},"194":{"position":[[528,5],[745,5],[1509,5],[1651,5],[2328,6],[2488,6],[2755,5]]},"214":{"position":[[1478,5]]},"224":{"position":[[354,5],[1196,5]]},"243":{"position":[[438,5],[2207,5],[2242,5],[2391,6]]},"264":{"position":[[2137,5]]}}}],["claud",{"_index":1374,"t":{"190":{"position":[[267,7],[369,6],[436,6],[561,6],[837,7]]}}}],["clear",{"_index":1305,"t":{"171":{"position":[[1612,6]]},"237":{"position":[[1474,7],[1482,5],[1934,6],[1941,5]]}}}],["clearli",{"_index":460,"t":{"65":{"position":[[1135,7]]}}}],["cli",{"_index":1,"t":{"41":{"position":[[13,3],[101,5],[157,3]]},"109":{"position":[[672,5]]},"260":{"position":[[239,5]]},"274":{"position":[[681,3]]}}}],["cli_only_mod",{"_index":989,"t":{"109":{"position":[[715,13]]}}}],["click",{"_index":462,"t":{"65":{"position":[[1228,5]]}}}],["client",{"_index":1363,"t":{"186":{"position":[[1668,6]]}}}],["clone",{"_index":669,"t":{"79":{"position":[[601,6]]},"237":{"position":[[149,5]]},"250":{"position":[[200,5],[225,5]]},"260":{"position":[[42,6]]},"262":{"position":[[395,5]]}}}],["close",{"_index":941,"t":{"103":{"position":[[214,7]]}}}],["co",{"_index":1026,"t":{"111":{"position":[[591,3]]}}}],["code",{"_index":45,"t":{"47":{"position":[[50,4],[134,4],[179,4],[237,4],[345,4],[386,4],[417,4],[522,5]]},"49":{"position":[[7,4],[180,4],[236,4],[280,4],[443,4],[669,4],[932,5],[1021,5]]},"51":{"position":[[4,4],[121,4],[200,4],[376,4],[428,4]]},"53":{"position":[[97,4],[527,4],[612,4],[674,4],[1934,4],[2196,4],[3225,4],[3385,4],[3593,4]]},"57":{"position":[[280,5]]},"59":{"position":[[142,4],[173,4],[655,4],[1085,4],[1172,5],[1249,4]]},"63":{"position":[[355,4],[1887,4],[2459,4],[3013,4],[3048,4],[3372,4],[3424,4],[4305,4],[4467,4],[4519,4]]},"65":{"position":[[749,4],[824,4],[1592,5]]},"67":{"position":[[837,5],[1353,4]]},"73":{"position":[[151,5],[314,5],[1025,4],[1145,4]]},"75":{"position":[[48,4],[376,4],[462,4],[484,4],[585,5]]},"77":{"position":[[33,4],[191,4],[268,4],[318,4],[498,4],[573,5]]},"79":{"position":[[17,4],[457,4],[582,4],[724,4],[1290,5]]},"81":{"position":[[47,4],[175,4]]},"83":{"position":[[402,4]]},"85":{"position":[[189,4],[266,4]]},"91":{"position":[[294,7],[599,7],[707,4]]},"95":{"position":[[591,4],[832,4],[916,4],[1007,4],[1109,4]]},"97":{"position":[[1163,4]]},"99":{"position":[[4374,5]]},"103":{"position":[[3172,4]]},"109":{"position":[[100,4],[361,4],[422,4],[478,4],[1854,4],[1906,4],[2111,4],[2257,4],[2309,4],[2495,4],[2641,4],[2693,4]]},"115":{"position":[[1113,4],[1212,4],[1438,4],[2073,4],[2214,4],[2430,4],[2646,4],[2940,4]]},"124":{"position":[[204,4],[275,4]]},"128":{"position":[[64,4],[648,4],[936,4],[1112,4],[1180,4],[1597,5],[1984,4],[2056,5],[2069,4],[2109,4],[2262,4],[2401,4],[2687,4]]},"131":{"position":[[64,4],[924,4]]},"133":{"position":[[388,4]]},"135":{"position":[[1439,4],[1755,4],[1881,4],[3008,4],[3239,4],[4379,4],[4450,5],[4472,4],[4647,4],[5023,4],[5149,4],[5205,4],[5314,4],[5570,4],[5626,4],[6623,4],[6758,4],[8648,4],[9019,4],[9093,4],[9167,4],[9223,4],[9485,4],[9673,4],[9729,4],[11890,4],[12192,4],[12266,4],[12340,4],[12396,4],[12492,4],[12632,4],[12688,4]]},"165":{"position":[[949,4]]},"167":{"position":[[213,4]]},"173":{"position":[[713,5]]},"175":{"position":[[43,4]]},"179":{"position":[[42,4],[131,5]]},"198":{"position":[[174,5]]},"210":{"position":[[163,4]]},"214":{"position":[[228,4],[257,4],[376,4],[464,4]]},"216":{"position":[[16,4],[162,5],[880,4],[1106,4],[1173,4],[1244,4],[1330,4],[1385,4]]},"218":{"position":[[287,4],[413,4],[773,5],[1174,5],[1742,4],[1914,4],[1946,4],[2044,5],[2054,4],[2143,4],[2681,5]]},"220":{"position":[[134,4],[160,4]]},"224":{"position":[[232,4],[600,4],[795,4],[1090,4]]},"228":{"position":[[1213,4],[1265,4],[1611,4],[1796,4],[1848,4]]},"231":{"position":[[187,4],[259,4],[336,5],[1303,4],[1422,4]]},"233":{"position":[[358,4],[443,4],[501,4]]},"237":{"position":[[2136,5],[2287,5]]},"239":{"position":[[275,4],[389,4],[618,4]]},"243":{"position":[[186,4],[295,5]]},"247":{"position":[[92,5],[315,5],[325,4],[2257,4],[2319,4],[2393,4],[2487,4],[2523,4],[2533,5],[2656,4],[2727,4],[2770,5],[2813,4],[2854,4],[3021,4]]},"252":{"position":[[534,4],[775,4],[859,4]]},"260":{"position":[[977,5]]},"264":{"position":[[75,4]]},"266":{"position":[[261,4],[316,4]]},"270":{"position":[[214,4]]}}}],["code_error",{"_index":1108,"t":{"128":{"position":[[913,10]]},"135":{"position":[[1739,12],[5007,12],[9003,12],[12176,12]]}}}],["code_gener",{"_index":295,"t":{"59":{"position":[[1042,14],[1106,14]]}}}],["code_generator.auto_plugin_selection_topk",{"_index":316,"t":{"61":{"position":[[114,42]]},"115":{"position":[[2452,41]]}}}],["code_generator.enable_auto_plugin_select",{"_index":312,"t":{"61":{"position":[[0,44]]},"115":{"position":[[2238,43]]}}}],["code_generator.example_base_path",{"_index":1072,"t":{"115":{"position":[[2020,32]]}}}],["code_generator.llm_alia",{"_index":1513,"t":{"202":{"position":[[1558,27]]}}}],["code_generator.prompt_compress",{"_index":246,"t":{"55":{"position":[[280,33]]},"115":{"position":[[2139,33],[3338,34]]}}}],["code_generator.use_experi",{"_index":1074,"t":{"115":{"position":[[2329,29]]},"133":{"position":[[223,29]]},"141":{"position":[[122,29]]}}}],["code_interpret",{"_index":928,"t":{"99":{"position":[[4056,19]]},"109":{"position":[[323,20],[380,17],[899,17]]},"115":{"position":[[2734,19]]}}}],["code_interpreter.allowed_modul",{"_index":78,"t":{"49":{"position":[[369,32]]},"115":{"position":[[1138,32]]}}}],["code_interpreter.blocked_funct",{"_index":90,"t":{"49":{"position":[[598,34]]},"115":{"position":[[1367,34]]}}}],["code_interpreter.code_verification_on",{"_index":71,"t":{"49":{"position":[[56,40]]},"115":{"position":[[1057,37]]}}}],["code_interpreter_cli_onli",{"_index":34,"t":{"44":{"position":[[114,29]]},"109":{"position":[[577,26]]}}}],["code_interpreter_plugin_onli",{"_index":986,"t":{"109":{"position":[[496,29]]},"231":{"position":[[1060,31]]}}}],["codeexecutor",{"_index":451,"t":{"65":{"position":[[837,12]]}}}],["codegener",{"_index":69,"t":{"47":{"position":[[489,13]]},"51":{"position":[[279,13]]},"65":{"position":[[796,13]]}}}],["codegenerator'",{"_index":110,"t":{"51":{"position":[[81,15]]}}}],["codeinterpret",{"_index":13,"t":{"41":{"position":[[131,15]]},"63":{"position":[[1689,15],[2179,15],[2285,15],[2336,15],[2404,17],[2725,16],[4257,16],[5554,15]]},"65":{"position":[[214,16]]},"93":{"position":[[1209,16]]},"97":{"position":[[1599,15]]},"99":{"position":[[117,15],[3897,15],[4164,16],[4617,16]]},"109":{"position":[[967,15],[1013,16],[2063,16]]},"124":{"position":[[72,15],[250,15],[454,16]]},"126":{"position":[[90,16],[145,16],[283,16],[811,15],[1060,15],[1216,15],[1401,15],[1807,15],[2345,16],[2665,15]]},"128":{"position":[[2,15],[32,15],[197,15],[396,15],[544,15],[1283,16],[1381,15],[1541,16]]},"133":{"position":[[323,15],[1301,17]]},"135":{"position":[[995,15],[1152,15],[1358,15],[1380,15],[4566,15],[4588,15],[5939,15],[8197,15],[8287,15],[8408,15],[8567,15],[8589,15],[9987,17],[10328,15],[10426,15],[11350,15],[11449,15],[11589,15],[11809,15],[11831,15],[12780,17],[13105,15],[13204,15]]},"165":{"position":[[218,16],[239,15],[482,15],[880,15]]},"171":{"position":[[888,15]]},"202":{"position":[[172,16],[1511,16],[1769,16]]},"218":{"position":[[1722,15],[2609,15],[2797,15]]},"220":{"position":[[353,15]]},"228":{"position":[[670,15],[762,15],[832,15],[919,17],[1563,16],[2221,15]]},"239":{"position":[[65,16]]},"270":{"position":[[155,15]]}}}],["codeinterpreter'",{"_index":808,"t":{"89":{"position":[[62,17]]}}}],["codeinterpreter][python",{"_index":1207,"t":{"135":{"position":[[8759,25],[12021,25]]}}}],["codeinterpreter_exampl",{"_index":845,"t":{"95":{"position":[[542,26]]},"252":{"position":[[485,26]]}}}],["coher",{"_index":1491,"t":{"200":{"position":[[144,7],[589,6],[755,7]]}}}],["cohere_api_key=mi",{"_index":1498,"t":{"200":{"position":[[642,17]]}}}],["col",{"_index":1228,"t":{"135":{"position":[[11670,3]]}}}],["collect",{"_index":811,"t":{"89":{"position":[[181,10]]},"93":{"position":[[258,10],[751,10]]},"101":{"position":[[215,10]]},"124":{"position":[[394,10]]}}}],["collector",{"_index":509,"t":{"67":{"position":[[1412,10],[1440,9],[1574,9],[1628,9],[2275,9]]},"69":{"position":[[260,10],[374,11],[486,9],[819,9],[897,9],[941,10],[998,10],[1028,9],[1060,9],[1577,10],[1857,9],[1988,10]]}}}],["collector:0.96.0",{"_index":538,"t":{"69":{"position":[[297,16]]}}}],["collector:9464",{"_index":577,"t":{"69":{"position":[[1921,16]]}}}],["column",{"_index":413,"t":{"63":{"position":[[4075,9],[4133,8],[4187,6],[5170,9],[5228,8],[5282,6]]},"135":{"position":[[227,7],[6698,8],[6729,8],[6800,7],[6854,8],[6952,6],[7312,6],[7946,7],[8056,7],[8250,7],[8342,7],[9426,8],[9932,8],[10077,7],[10187,7],[10381,7],[10481,7],[10550,7],[10653,7],[10876,7],[11115,7],[11225,7],[11405,7],[11511,6],[11735,6],[11949,6],[11976,6],[12870,7],[12980,7],[13160,7],[13266,6],[13425,6],[13580,6]]},"171":{"position":[[1138,6]]},"243":{"position":[[665,6],[860,6],[929,6],[1028,6],[1225,6],[1393,6]]},"247":{"position":[[1464,6],[1804,6],[1911,6],[2066,6]]},"274":{"position":[[962,6]]}}}],["column(",{"_index":1226,"t":{"135":{"position":[[10732,9],[10945,9]]}}}],["columnor",{"_index":1227,"t":{"135":{"position":[[11651,8]]}}}],["com.docker.network.bridge.enable_ip_masquerade=fals",{"_index":730,"t":{"85":{"position":[[1026,52]]}}}],["come",{"_index":1127,"t":{"131":{"position":[[490,4]]}}}],["command",{"_index":7,"t":{"41":{"position":[[78,7],[161,9],[301,7]]},"63":{"position":[[79,7],[669,7]]},"67":{"position":[[1746,7]]},"69":{"position":[[314,8],[742,8]]},"79":{"position":[[687,7]]},"81":{"position":[[560,8]]},"83":{"position":[[681,7]]},"85":{"position":[[989,8]]},"109":{"position":[[649,7]]},"131":{"position":[[681,7]]},"133":{"position":[[675,7]]},"135":{"position":[[6305,7]]},"173":{"position":[[327,7]]},"175":{"position":[[241,7]]},"186":{"position":[[1283,7]]},"194":{"position":[[3985,7],[4232,8]]},"200":{"position":[[785,7]]},"237":{"position":[[12,7],[230,7],[451,7],[1003,8],[1088,9],[1102,8],[1198,9],[1651,8],[1699,7]]},"250":{"position":[[52,8]]},"260":{"position":[[226,7]]},"262":{"position":[[755,8]]},"270":{"position":[[516,7],[825,8],[1075,8]]},"272":{"position":[[100,8]]},"274":{"position":[[92,8],[700,8],[785,8]]}}}],["common",{"_index":717,"t":{"85":{"position":[[323,6]]},"137":{"position":[[200,6]]},"214":{"position":[[120,6]]},"247":{"position":[[3014,6]]}}}],["commun",{"_index":6,"t":{"41":{"position":[[57,11]]},"85":{"position":[[626,11],[2583,13]]},"97":{"position":[[151,11],[696,11],[992,13]]},"109":{"position":[[628,11],[857,11]]}}}],["compar",{"_index":1289,"t":{"171":{"position":[[321,9],[1463,7]]},"231":{"position":[[93,8]]}}}],["compat",{"_index":570,"t":{"69":{"position":[[1543,10]]},"113":{"position":[[57,10]]},"200":{"position":[[853,14]]},"235":{"position":[[111,10]]},"262":{"position":[[633,13]]}}}],["compil",{"_index":96,"t":{"49":{"position":[[728,10]]},"115":{"position":[[1498,10]]}}}],["complet",{"_index":297,"t":{"59":{"position":[[1070,10]]},"198":{"position":[[218,8]]}}}],["completionservic",{"_index":1388,"t":{"194":{"position":[[236,18],[409,18],[1549,17]]}}}],["complex",{"_index":1547,"t":{"212":{"position":[[778,7]]},"216":{"position":[[689,7],[1778,7],[1920,7]]}}}],["complic",{"_index":579,"t":{"71":{"position":[[142,11]]},"85":{"position":[[2534,10]]}}}],["compon",{"_index":435,"t":{"65":{"position":[[290,10]]},"67":{"position":[[1455,9]]},"162":{"position":[[64,11]]},"173":{"position":[[466,9]]},"202":{"position":[[64,11],[255,11],[512,11],[1274,11],[1378,10],[1634,10]]}}}],["compos",{"_index":515,"t":{"67":{"position":[[1814,7]]},"69":{"position":[[97,7]]},"93":{"position":[[1162,8]]},"212":{"position":[[22,8]]},"247":{"position":[[21,8]]}}}],["compose.yaml",{"_index":532,"t":{"69":{"position":[[179,13]]},"71":{"position":[[1458,12]]}}}],["compress",{"_index":168,"t":{"53":{"position":[[892,9]]},"107":{"position":[[410,8]]},"115":{"position":[[1866,8],[2184,8],[2814,9]]}}}],["comput",{"_index":654,"t":{"75":{"position":[[670,10]]}}}],["concept",{"_index":813,"t":{"91":{"position":[[24,7]]},"93":{"position":[[25,7]]},"97":{"position":[[19,7]]},"99":{"position":[[14,7]]},"101":{"position":[[18,7]]},"210":{"position":[[227,8],[266,8]]},"214":{"position":[[1218,7]]},"264":{"position":[[963,8]]}}}],["concern",{"_index":1739,"t":{"262":{"position":[[268,9]]}}}],["concret",{"_index":1666,"t":{"239":{"position":[[293,8]]}}}],["conda",{"_index":1726,"t":{"250":{"position":[[83,5],[131,5],[172,5]]}}}],["conduct",{"_index":116,"t":{"51":{"position":[[333,7]]}}}],["config",{"_index":734,"t":{"85":{"position":[[1336,9]]},"87":{"position":[[343,7],[553,7],[977,6],[1084,6]]},"99":{"position":[[214,7],[2124,7]]},"103":{"position":[[698,7],[962,7]]},"115":{"position":[[51,6]]},"177":{"position":[[446,10],[918,6],[1076,6],[1197,6],[1226,6],[1272,6]]},"194":{"position":[[1737,7],[1782,6],[2804,7],[2872,6]]}}}],["config.file=/etc/prometheus/prometheus.yml",{"_index":555,"t":{"69":{"position":[[755,44]]}}}],["config.yaml",{"_index":540,"t":{"69":{"position":[[349,13],[413,11],[1070,12]]}}}],["config.yaml:/etc/collector",{"_index":542,"t":{"69":{"position":[[386,26]]}}}],["config.yml",{"_index":571,"t":{"69":{"position":[[1745,10]]}}}],["config.yml:/etc/prometheus/prometheus.yml",{"_index":554,"t":{"69":{"position":[[700,41]]}}}],["config=/etc/collector",{"_index":539,"t":{"69":{"position":[[327,21]]}}}],["configur",{"_index":28,"t":{"44":{"position":[[23,13],[52,13]]},"49":{"position":[[42,13],[117,13],[319,13]]},"59":{"position":[[490,10]]},"67":{"position":[[606,13],[767,13],[853,13],[894,13],[1614,9],[2231,9],[2303,13],[2418,13]]},"69":{"position":[[1038,13],[1122,13],[1768,13]]},"79":{"position":[[3,9]]},"85":{"position":[[2658,14]]},"87":{"position":[[565,14],[1028,13],[1140,13]]},"95":{"position":[[48,13],[404,13]]},"99":{"position":[[1192,14],[1257,14],[1392,13],[1922,13],[1963,10],[1989,13],[2251,13],[3720,13],[3852,13]]},"103":{"position":[[974,14]]},"105":{"position":[[29,15]]},"113":{"position":[[119,15],[159,14],[1208,10]]},"115":{"position":[[19,14],[142,9],[172,13],[431,13],[3395,14],[3463,13]]},"133":{"position":[[270,13],[1565,13]]},"141":{"position":[[182,13]]},"177":{"position":[[830,14],[896,14],[1036,14],[1121,13],[1376,13]]},"186":{"position":[[594,9]]},"190":{"position":[[735,9]]},"192":{"position":[[233,13]]},"194":{"position":[[2243,13],[3490,9],[3873,11]]},"196":{"position":[[330,13]]},"198":{"position":[[604,13]]},"200":{"position":[[320,14],[361,9],[1291,13]]},"202":{"position":[[561,9]]},"204":{"position":[[131,9],[709,13]]},"206":{"position":[[235,13]]},"218":{"position":[[320,13],[511,14],[595,13],[684,13],[1024,15],[1085,13],[1428,15],[1531,15],[2209,14],[2328,15],[2414,14]]},"220":{"position":[[67,14],[188,14],[224,15]]},"226":{"position":[[17,9]]},"228":{"position":[[36,11]]},"231":{"position":[[1017,13],[1107,13]]},"237":{"position":[[196,15]]},"247":{"position":[[882,15],[902,13],[3045,13],[3139,13],[3190,13],[3262,15],[3310,13]]},"252":{"position":[[90,13],[347,13]]},"258":{"position":[[286,13],[328,13]]},"262":{"position":[[442,15]]},"272":{"position":[[599,9]]}}}],["confirm",{"_index":1201,"t":{"135":{"position":[[7300,7],[7934,7],[8238,7],[8330,7],[10065,7],[10369,7],[10469,7],[10538,7],[11103,7],[11393,7],[12858,7],[13148,7]]},"171":{"position":[[1619,7]]}}}],["conflict",{"_index":1247,"t":{"139":{"position":[[514,9]]}}}],["confus",{"_index":254,"t":{"57":{"position":[[211,9]]}}}],["connect",{"_index":719,"t":{"85":{"position":[[419,11],[1117,9],[1465,9]]},"167":{"position":[[92,7]]}}}],["consecut",{"_index":1035,"t":{"113":{"position":[[725,11]]}}}],["consid",{"_index":757,"t":{"85":{"position":[[2381,10]]},"135":{"position":[[4761,11]]},"231":{"position":[[788,8]]}}}],["consider",{"_index":1589,"t":{"216":{"position":[[1286,13]]}}}],["consist",{"_index":1087,"t":{"124":{"position":[[489,8]]},"243":{"position":[[132,8]]}}}],["consol",{"_index":408,"t":{"63":{"position":[[3933,7],[5028,7],[5950,7],[6292,7],[6626,7]]},"83":{"position":[[696,7]]},"103":{"position":[[2271,8]]},"133":{"position":[[696,7]]},"135":{"position":[[6322,7]]},"173":{"position":[[291,7],[358,7]]},"175":{"position":[[205,7],[272,7],[605,7]]},"177":{"position":[[798,7]]},"190":{"position":[[71,8]]},"237":{"position":[[1338,7],[1492,7],[1521,7],[1951,7],[1987,7]]}}}],["consoleeventhandl",{"_index":961,"t":{"103":{"position":[[2146,22],[2173,19]]}}}],["consoleeventhandler(sessioneventhandl",{"_index":956,"t":{"103":{"position":[[1985,41]]}}}],["constrain",{"_index":1038,"t":{"113":{"position":[[913,11],[1045,11],[1295,11]]}}}],["constraint",{"_index":1117,"t":{"128":{"position":[[2127,12]]}}}],["construct",{"_index":829,"t":{"93":{"position":[[313,9]]}}}],["constructor",{"_index":771,"t":{"87":{"position":[[212,12]]},"177":{"position":[[949,12],[1293,12]]}}}],["consum",{"_index":433,"t":{"65":{"position":[[258,8],[458,8],[1510,8]]},"67":{"position":[[365,8]]},"214":{"position":[[2546,8]]},"231":{"position":[[864,8]]}}}],["consumpt",{"_index":598,"t":{"71":{"position":[[1215,11]]}}}],["contact",{"_index":1543,"t":{"212":{"position":[[638,8]]}}}],["contain",{"_index":222,"t":{"53":{"position":[[2735,10],[2877,10]]},"67":{"position":[[1864,11],[2116,10],[2185,10]]},"69":{"position":[[1107,10]]},"75":{"position":[[18,9]]},"77":{"position":[[59,10],[74,9],[163,9],[212,10]]},"79":{"position":[[179,10],[211,10],[307,9],[527,9],[1056,9],[1104,9],[1141,9],[1201,9]]},"83":{"position":[[4,9],[113,9],[194,10],[254,10],[384,10],[423,9],[602,10]]},"85":{"position":[[201,9],[612,10],[799,10],[1107,9],[1454,10],[1823,9],[2482,9],[2573,9]]},"87":{"position":[[1015,8]]},"91":{"position":[[52,8],[537,8]]},"93":{"position":[[53,8]]},"95":{"position":[[222,8]]},"97":{"position":[[47,8]]},"99":{"position":[[1411,8]]},"101":{"position":[[46,8]]},"115":{"position":[[2973,10]]},"124":{"position":[[557,8],[652,7]]},"126":{"position":[[2479,8],[2973,8]]},"128":{"position":[[1474,8]]},"139":{"position":[[72,8]]},"167":{"position":[[66,9],[146,9],[247,9]]},"169":{"position":[[159,8]]},"181":{"position":[[74,9],[227,10]]},"212":{"position":[[1105,10]]},"218":{"position":[[861,8],[1262,8]]},"231":{"position":[[197,8],[312,7]]},"233":{"position":[[144,8]]},"243":{"position":[[872,8],[941,8]]},"247":{"position":[[1816,8],[1923,8],[2086,10]]},"252":{"position":[[254,8]]},"260":{"position":[[1043,8]]},"264":{"position":[[160,8],[723,8],[833,8]]},"266":{"position":[[295,10],[344,10]]},"270":{"position":[[200,9],[795,9]]},"272":{"position":[[50,10]]},"274":{"position":[[42,10],[540,9]]}}}],["container'",{"_index":710,"t":{"85":{"position":[[67,11],[355,11]]}}}],["content",{"_index":59,"t":{"47":{"position":[[251,7]]},"69":{"position":[[197,7]]},"71":{"position":[[1436,7]]},"81":{"position":[[470,8]]},"91":{"position":[[337,8],[350,7],[459,8],[642,7],[657,7]]},"103":{"position":[[1302,11]]},"126":{"position":[[862,8],[1036,8],[1195,8],[1609,8],[1783,8],[1942,8]]},"128":{"position":[[610,8],[707,7],[744,8],[888,8],[924,8],[973,8],[1015,8]]},"139":{"position":[[202,7],[592,7]]},"188":{"position":[[71,7]]},"198":{"position":[[402,7]]},"200":{"position":[[1030,7]]},"214":{"position":[[1560,8],[1579,7]]},"226":{"position":[[349,7]]},"237":{"position":[[1959,7]]},"264":{"position":[[1747,10],[1852,10],[1970,10]]}}}],["context",{"_index":137,"t":{"53":{"position":[[175,7]]},"73":{"position":[[923,7]]},"177":{"position":[[537,7]]},"210":{"position":[[102,7]]},"212":{"position":[[997,7]]}}}],["context_summari",{"_index":171,"t":{"53":{"position":[[983,15]]}}}],["contrast",{"_index":933,"t":{"99":{"position":[[4413,9]]}}}],["contribut",{"_index":1385,"t":{"194":{"position":[[110,10]]}}}],["control",{"_index":192,"t":{"53":{"position":[[1825,7]]},"55":{"position":[[48,11]]},"93":{"position":[[1254,7]]},"186":{"position":[[1101,7]]},"214":{"position":[[663,7]]}}}],["convent",{"_index":880,"t":{"99":{"position":[[964,10]]}}}],["convers",{"_index":793,"t":{"87":{"position":[[1580,12],[2397,12]]},"89":{"position":[[233,12]]},"93":{"position":[[2,12],[145,13],[176,13],[195,12],[284,12],[368,13],[456,13],[491,12],[733,12],[921,13],[972,12],[1024,12],[1124,13],[1270,12]]},"97":{"position":[[80,13]]},"99":{"position":[[80,12],[1526,13]]},"101":{"position":[[175,12]]},"103":{"position":[[15,12],[1683,13],[1907,13]]},"107":{"position":[[298,13]]},"109":{"position":[[276,13]]},"113":{"position":[[285,13],[544,13],[658,13],[758,12],[943,13]]},"115":{"position":[[2708,13]]},"124":{"position":[[371,12],[476,12]]},"126":{"position":[[231,12]]},"128":{"position":[[1208,12]]},"133":{"position":[[417,12],[853,13],[1379,13]]},"135":{"position":[[12,12]]},"137":{"position":[[170,13]]},"210":{"position":[[117,13],[402,12],[442,12]]},"212":{"position":[[76,12],[838,12],[958,12],[1012,13]]},"214":{"position":[[1637,15],[1987,13],[2051,13],[2692,14]]},"216":{"position":[[952,12],[1010,12]]},"228":{"position":[[78,13],[101,12]]},"247":{"position":[[168,14]]},"264":{"position":[[775,12],[2079,13]]}}}],["conversationsummari",{"_index":182,"t":{"53":{"position":[[1223,19],[1371,19],[1684,19],[1773,20],[1967,22],[2987,20],[3187,19]]}}}],["convert",{"_index":649,"t":{"75":{"position":[[431,8]]}}}],["coordin",{"_index":1579,"t":{"216":{"position":[[193,11]]},"243":{"position":[[61,11]]}}}],["copi",{"_index":1600,"t":{"218":{"position":[[374,4]]},"226":{"position":[[330,4]]},"252":{"position":[[181,4]]}}}],["correct",{"_index":257,"t":{"57":{"position":[[272,7]]},"128":{"position":[[897,7],[1681,8],[1992,7]]},"177":{"position":[[1393,8]]},"262":{"position":[[685,7]]}}}],["correctli",{"_index":162,"t":{"53":{"position":[[651,9]]},"165":{"position":[[861,10]]},"177":{"position":[[1059,9]]}}}],["correspond",{"_index":684,"t":{"81":{"position":[[542,13]]},"93":{"position":[[131,13]]}}}],["cosin",{"_index":288,"t":{"59":{"position":[[847,6],[994,6]]},"63":{"position":[[2651,6]]}}}],["cost",{"_index":239,"t":{"53":{"position":[[3513,5]]}}}],["count",{"_index":211,"t":{"53":{"position":[[2474,5]]},"67":{"position":[[338,5]]},"126":{"position":[[540,5],[610,5],[749,5],[899,5],[1102,5],[1258,5],[1646,5],[1849,5],[2217,6],[2423,5]]},"135":{"position":[[5232,5],[5653,5],[6944,7],[9261,5],[9767,5],[10701,5],[10918,5],[11009,5],[11505,5],[11645,5],[11664,5],[11729,5],[11943,5],[13260,5],[13419,5],[13574,5]]},"264":{"position":[[1343,8]]}}}],["creat",{"_index":280,"t":{"59":{"position":[[446,7]]},"73":{"position":[[914,6]]},"85":{"position":[[450,8],[928,6],[1013,6],[2232,6]]},"87":{"position":[[116,6],[166,7],[1556,8],[1910,8],[2209,7],[2289,7]]},"95":{"position":[[198,7]]},"99":{"position":[[3352,6],[3406,6],[4111,6],[4391,6]]},"101":{"position":[[574,10],[603,8],[625,10]]},"103":{"position":[[97,7],[264,7],[405,7],[517,7]]},"107":{"position":[[133,6]]},"124":{"position":[[755,7]]},"126":{"position":[[580,7]]},"133":{"position":[[485,7],[781,7],[1423,7]]},"139":{"position":[[3,6],[48,6]]},"152":{"position":[[3,6]]},"177":{"position":[[518,6]]},"184":{"position":[[0,6],[56,6]]},"186":{"position":[[0,6],[112,6]]},"188":{"position":[[0,6]]},"190":{"position":[[0,6]]},"194":{"position":[[149,6],[515,6],[1496,6]]},"208":{"position":[[0,6]]},"216":{"position":[[1821,6]]},"224":{"position":[[0,6]]},"226":{"position":[[283,6]]},"243":{"position":[[2188,6]]},"250":{"position":[[74,6],[137,6]]},"252":{"position":[[42,6]]},"264":{"position":[[483,6]]}}}],["critic",{"_index":455,"t":{"65":{"position":[[968,8]]}}}],["crucial",{"_index":1565,"t":{"214":{"position":[[1768,7]]}}}],["csv",{"_index":1705,"t":{"243":{"position":[[2822,3]]},"245":{"position":[[463,3]]}}}],["ctx=temp_ctx",{"_index":1326,"t":{"177":{"position":[[432,13]]}}}],["cumbersom",{"_index":1599,"t":{"218":{"position":[[360,10]]}}}],["curl",{"_index":1515,"t":{"204":{"position":[[287,4]]}}}],["current",{"_index":101,"t":{"49":{"position":[[782,9]]},"53":{"position":[[481,7],[687,7],[3112,7]]},"65":{"position":[[1153,10]]},"71":{"position":[[378,7]]},"75":{"position":[[522,7]]},"81":{"position":[[150,7]]},"95":{"position":[[869,7],[1051,7]]},"97":{"position":[[1476,7],[1688,7],[1803,7],[1964,7]]},"113":{"position":[[1069,10]]},"124":{"position":[[10,9]]},"126":{"position":[[2614,7]]},"133":{"position":[[611,7]]},"137":{"position":[[162,7]]},"177":{"position":[[965,9]]},"186":{"position":[[890,7]]},"212":{"position":[[1153,7]]},"214":{"position":[[791,7],[1945,7],[2658,7]]},"235":{"position":[[0,10]]},"237":{"position":[[1432,7],[1596,7],[1861,7],[1894,7],[2059,7],[2150,8]]},"252":{"position":[[812,7]]}}}],["current_plan_step",{"_index":364,"t":{"63":{"position":[[2253,19],[5655,19]]},"126":{"position":[[1177,17],[1924,17],[2056,18]]},"135":{"position":[[1120,19],[6064,19],[8376,19],[10515,19],[11557,19],[13312,19]]},"169":{"position":[[207,18]]},"228":{"position":[[730,19],[2281,19]]},"264":{"position":[[1949,20]]}}}],["custom",{"_index":616,"t":{"73":{"position":[[94,9]]},"81":{"position":[[16,9],[275,9]]},"85":{"position":[[764,6]]},"103":{"position":[[1864,9]]},"160":{"position":[[34,10]]},"194":{"position":[[34,10]]},"200":{"position":[[161,6]]},"216":{"position":[[515,10]]},"218":{"position":[[1289,8]]},"272":{"position":[[647,9]]}}}],["customer_identifi",{"_index":1487,"t":{"198":{"position":[[1068,19]]}}}],["cutoff",{"_index":1690,"t":{"243":{"position":[[1488,6],[1527,7],[1542,6]]}}}],["cwd",{"_index":847,"t":{"95":{"position":[[857,5],[1077,5],[1173,3],[1274,3]]},"237":{"position":[[2146,3],[2297,3]]},"252":{"position":[[800,5]]}}}],["d:/demo_dat",{"_index":1205,"t":{"135":{"position":[[8525,11]]}}}],["d:/demo_data.csv",{"_index":1146,"t":{"135":{"position":[[756,16],[1269,16],[1474,16],[1609,18],[3087,18],[4682,16],[4852,18],[5393,18],[6152,16],[6253,16],[6565,16],[7829,16],[8683,16],[8822,18],[8916,18],[9564,18],[10621,16],[10844,16],[13449,16],[13604,16]]}}}],["d:/demo_data.csva",{"_index":1204,"t":{"135":{"position":[[8502,17]]}}}],["d:\\project\\experience\\raw_exp_20231228",{"_index":1197,"t":{"135":{"position":[[6994,38]]}}}],["d:\\python_project\\octopus\\venv\\lib\\sit",{"_index":1157,"t":{"135":{"position":[[2060,39],[2215,39],[2340,39],[2468,39],[2597,39],[2729,39],[2862,39],[3418,39],[3573,39],[3698,39],[3826,39],[3955,39],[4087,39],[4220,39]]}}}],["daemon",{"_index":1278,"t":{"167":{"position":[[114,7]]}}}],["danger",{"_index":62,"t":{"47":{"position":[[306,10]]},"77":{"position":[[616,6]]},"266":{"position":[[92,6]]}}}],["dashscop",{"_index":1384,"t":{"192":{"position":[[184,10]]},"194":{"position":[[2517,9]]},"206":{"position":[[184,10],[207,9]]}}}],["dat",{"_index":1230,"t":{"135":{"position":[[11997,3]]}}}],["data",{"_index":502,"t":{"67":{"position":[[1225,4]]},"71":{"position":[[218,4],[1379,4]]},"91":{"position":[[19,4],[72,4]]},"93":{"position":[[20,4]]},"95":{"position":[[108,5],[738,5],[937,4],[982,5]]},"97":{"position":[[14,4],[261,4],[1117,4]]},"101":{"position":[[13,4]]},"126":{"position":[[720,4],[778,4],[886,4],[928,4],[1088,4],[1131,4],[1244,4],[1287,4],[1312,4],[1380,4],[1466,4],[1531,4],[1633,4],[1675,4],[1835,4],[1878,4],[2394,4],[2452,6],[2722,4],[2790,4],[2876,4],[2941,4]]},"135":{"position":[[819,4],[873,4],[1023,4],[1076,4],[1180,4],[1233,4],[1259,4],[1329,4],[1464,4],[1534,4],[4672,4],[4742,4],[5763,4],[5817,4],[5967,4],[6020,4],[6144,4],[6245,4],[6966,6],[7919,4],[8225,4],[8315,4],[8436,4],[8455,4],[8492,4],[8673,4],[10050,4],[10356,4],[10454,4],[10611,4],[10668,4],[10834,4],[10891,4],[11088,4],[11378,4],[11970,5],[12843,4],[13133,4],[13439,4],[13594,4]]},"171":{"position":[[266,5]]},"214":{"position":[[295,4],[2142,4]]},"216":{"position":[[81,4],[262,4],[333,4],[390,4],[1062,4],[1470,4]]},"218":{"position":[[148,4],[184,4],[225,4],[639,4],[724,4],[818,4],[965,4],[1125,4],[1219,4],[1369,4]]},"239":{"position":[[327,4],[476,4],[724,4],[804,5]]},"243":{"position":[[800,5],[1932,4],[2893,5]]},"245":{"position":[[203,5],[823,4]]},"247":{"position":[[1658,4]]},"252":{"position":[[681,5],[880,4]]},"264":{"position":[[1362,4],[1482,4]]}}}],["data\".format(anomaly_count",{"_index":1697,"t":{"243":{"position":[[1723,27]]}}}],["data_descript",{"_index":1668,"t":{"239":{"position":[[431,16]]}}}],["data_df",{"_index":1149,"t":{"135":{"position":[[1630,7],[3108,7],[4873,7],[5414,7]]}}}],["data_df.mean",{"_index":1152,"t":{"135":{"position":[[1683,14],[2036,14],[3161,14],[3394,14]]}}}],["data_df.mean(axis=0",{"_index":1182,"t":{"135":{"position":[[4926,20],[5467,20]]}}}],["data_file_path",{"_index":1148,"t":{"135":{"position":[[1592,14],[3070,14],[4835,14],[5376,14],[8805,14],[8899,14],[9547,14]]}}}],["databas",{"_index":149,"t":{"53":{"position":[[368,8]]},"214":{"position":[[2504,8]]},"218":{"position":[[160,9],[194,8],[235,8],[649,8],[734,8],[834,8],[850,8],[1135,8],[1235,8],[1251,8]]},"239":{"position":[[337,8],[736,9]]},"264":{"position":[[1498,9]]}}}],["dataclass",{"_index":815,"t":{"91":{"position":[[118,10]]},"93":{"position":[[159,10]]},"97":{"position":[[94,10]]},"101":{"position":[[119,10]]}}}],["datafram",{"_index":414,"t":{"63":{"position":[[4104,9],[5199,9]]},"171":{"position":[[1094,9],[1282,10]]},"216":{"position":[[456,11]]},"224":{"position":[[995,11]]},"231":{"position":[[745,9]]},"243":{"position":[[621,9],[816,9]]},"247":{"position":[[1420,9],[1607,9],[1978,9],[2009,9],[2037,9]]}}}],["datalumn",{"_index":1229,"t":{"135":{"position":[[11756,8]]}}}],["dataset",{"_index":1758,"t":{"264":{"position":[[1398,8]]}}}],["datetim",{"_index":87,"t":{"49":{"position":[[525,11]]},"115":{"position":[[1294,11]]},"243":{"position":[[885,8],[1239,10]]},"247":{"position":[[1829,8]]}}}],["debug",{"_index":563,"t":{"69":{"position":[[1253,6],[1517,7]]},"177":{"position":[[23,9],[50,5],[94,5]]},"216":{"position":[[1493,5],[1538,6]]}}}],["decid",{"_index":449,"t":{"65":{"position":[[707,7]]}}}],["decis",{"_index":1613,"t":{"218":{"position":[[2658,9],[2847,10]]},"220":{"position":[[380,10]]}}}],["decor",{"_index":630,"t":{"73":{"position":[[785,9]]},"99":{"position":[[419,9],[3073,11]]},"243":{"position":[[209,9],[2124,9],[2297,9]]}}}],["def",{"_index":635,"t":{"73":{"position":[[1096,3]]},"87":{"position":[[254,3],[1236,3],[1687,3]]},"99":{"position":[[194,3],[1898,3],[2104,3],[2373,3]]},"103":{"position":[[572,3],[1161,3],[2027,3],[2351,3],[2501,3],[3117,3]]},"194":{"position":[[791,3],[1718,3],[1794,3],[2076,3],[2785,3]]},"224":{"position":[[384,3],[1229,3]]},"243":{"position":[[476,3]]}}}],["default",{"_index":77,"t":{"49":{"position":[[361,7]]},"53":{"position":[[1306,8],[1347,8]]},"55":{"position":[[128,8],[178,8]]},"61":{"position":[[90,7],[212,7]]},"67":{"position":[[14,7],[630,7],[2327,7]]},"75":{"position":[[36,7]]},"77":{"position":[[96,7]]},"79":{"position":[[194,7]]},"85":{"position":[[519,8]]},"107":{"position":[[69,7],[470,7],[696,7],[860,8]]},"109":{"position":[[213,7],[294,7],[470,7]]},"113":{"position":[[303,7],[562,7],[961,7]]},"115":{"position":[[473,7]]},"165":{"position":[[10,7]]},"167":{"position":[[164,7]]},"194":{"position":[[2176,7]]},"202":{"position":[[1677,8]]},"204":{"position":[[577,7]]},"231":{"position":[[605,7]]},"247":{"position":[[187,7],[291,7],[359,7],[947,7],[3538,7],[3640,7]]},"264":{"position":[[224,8]]}}}],["defaultazurecredenti",{"_index":1357,"t":{"186":{"position":[[740,22]]}}}],["defin",{"_index":621,"t":{"73":{"position":[[440,6],[774,6]]},"89":{"position":[[21,7]]},"99":{"position":[[1174,6],[1796,6]]},"103":{"position":[[1705,7]]},"177":{"position":[[118,6],[219,6],[1149,7]]},"216":{"position":[[1841,6]]},"224":{"position":[[138,7]]},"241":{"position":[[71,7],[125,7]]}}}],["delet",{"_index":860,"t":{"97":{"position":[[1530,7]]}}}],["delimiter=promptutil.delimiter_tempor",{"_index":863,"t":{"97":{"position":[[1878,40]]}}}],["demonstr",{"_index":918,"t":{"99":{"position":[[2914,12]]},"124":{"position":[[128,11]]}}}],["denot",{"_index":828,"t":{"93":{"position":[[208,7]]},"97":{"position":[[222,6],[767,6],[976,6]]}}}],["depend",{"_index":363,"t":{"63":{"position":[[2142,7],[5517,7]]},"81":{"position":[[208,12],[967,9]]},"99":{"position":[[469,12],[4192,7]]},"103":{"position":[[1094,10]]},"126":{"position":[[385,12],[947,7],[1009,7],[1694,7],[1756,7]]},"135":{"position":[[892,7],[956,7],[5836,7],[5900,7],[7991,7],[8078,7],[8142,7],[10122,7],[10209,7],[10273,7],[11160,7],[11247,7],[11311,7],[12915,7],[13002,7],[13066,7]]},"186":{"position":[[542,13],[640,12],[857,9]]},"224":{"position":[[1385,7]]},"245":{"position":[[36,7]]},"250":{"position":[[116,12]]},"260":{"position":[[1060,12]]},"270":{"position":[[413,12]]}}}],["depends_on",{"_index":547,"t":{"69":{"position":[[496,11],[800,11]]},"71":{"position":[[1742,11]]}}}],["deploy",{"_index":1338,"t":{"184":{"position":[[69,10],[105,10]]},"186":{"position":[[125,10],[161,10]]},"204":{"position":[[428,9]]},"262":{"position":[[207,6]]}}}],["deployment_nam",{"_index":1347,"t":{"184":{"position":[[411,15]]},"186":{"position":[[457,15]]},"256":{"position":[[229,15]]}}}],["descend",{"_index":207,"t":{"53":{"position":[[2249,10]]}}}],["describ",{"_index":1631,"t":{"224":{"position":[[1038,8]]},"247":{"position":[[2187,10]]}}}],["descript",{"_index":76,"t":{"49":{"position":[[349,11]]},"53":{"position":[[2710,14],[2852,14]]},"59":{"position":[[406,13]]},"63":{"position":[[3206,11],[3264,11],[4355,11],[4413,11]]},"115":{"position":[[461,11]]},"218":{"position":[[797,12],[924,11],[1198,12],[1328,11],[2495,11],[2535,12],[2638,11],[2695,12]]},"220":{"position":[[299,11]]},"224":{"position":[[457,11],[723,11],[905,12],[1011,11]]},"226":{"position":[[195,12],[414,12],[667,12],[776,12]]},"237":{"position":[[1707,11]]},"243":{"position":[[1066,12],[1083,11],[1666,11],[1818,11],[2018,11],[2535,11],[2739,11],[2839,11],[2904,11]]},"245":{"position":[[709,11]]},"247":{"position":[[405,14],[428,11],[628,11],[794,11],[1342,12],[1632,12],[1779,12],[1886,12],[1988,12],[2135,11],[2157,12]]}}}],["design",{"_index":1571,"t":{"214":{"position":[[2472,9]]},"216":{"position":[[760,8],[981,8],[1140,8],[1515,8],[1728,8],[1963,8]]}}}],["desir",{"_index":300,"t":{"59":{"position":[[1164,7]]}}}],["desktop",{"_index":1767,"t":{"268":{"position":[[99,8]]}}}],["detail",{"_index":40,"t":{"44":{"position":[[197,8]]},"65":{"position":[[1284,7],[1375,7]]},"69":{"position":[[1271,8]]},"71":{"position":[[1071,7]]},"73":{"position":[[261,7]]},"89":{"position":[[99,7]]},"105":{"position":[[5,7]]},"107":{"position":[[205,7],[516,7]]},"109":{"position":[[568,8],[738,8]]},"154":{"position":[[117,7]]},"156":{"position":[[130,7]]},"181":{"position":[[157,8]]},"184":{"position":[[776,8]]},"186":{"position":[[1028,8]]},"188":{"position":[[320,8]]},"190":{"position":[[887,8]]},"192":{"position":[[127,7],[618,8]]},"196":{"position":[[232,7],[705,8]]},"198":{"position":[[819,8]]},"200":{"position":[[1502,8]]},"204":{"position":[[1126,8]]},"206":{"position":[[114,7],[551,8]]},"208":{"position":[[655,8]]},"214":{"position":[[3066,7]]},"216":{"position":[[1553,8]]},"226":{"position":[[274,8]]},"247":{"position":[[655,7]]}}}],["detect",{"_index":1284,"t":{"171":{"position":[[231,9]]},"216":{"position":[[1203,6]]},"239":{"position":[[364,10],[779,7]]},"243":{"position":[[261,9],[1113,9],[2779,9]]},"245":{"position":[[415,9]]},"247":{"position":[[1251,9],[2109,9],[2210,9]]},"264":{"position":[[1373,9]]}}}],["determin",{"_index":930,"t":{"99":{"position":[[4089,9]]},"214":{"position":[[820,10],[969,10],[1825,10]]},"247":{"position":[[107,9],[223,9]]}}}],["develop",{"_index":42,"t":{"47":{"position":[[6,10]]},"81":{"position":[[127,9]]},"85":{"position":[[25,9],[157,9]]},"131":{"position":[[10,10]]},"154":{"position":[[34,9]]},"156":{"position":[[26,9]]},"160":{"position":[[11,10]]},"186":{"position":[[1188,13]]},"192":{"position":[[23,9]]},"194":{"position":[[11,10]]},"198":{"position":[[30,9]]},"206":{"position":[[31,9]]},"222":{"position":[[43,7]]},"228":{"position":[[3390,10]]},"231":{"position":[[921,9]]},"243":{"position":[[2431,10]]},"262":{"position":[[57,11]]},"266":{"position":[[151,11]]}}}],["df",{"_index":1208,"t":{"135":{"position":[[8841,2],[8937,2],[8972,2],[9585,2],[9620,2]]},"171":{"position":[[1278,3]]},"218":{"position":[[920,3],[1324,3]]},"239":{"position":[[427,3]]},"243":{"position":[[495,3],[786,3],[978,3],[988,2],[1054,3],[2014,3]]},"247":{"position":[[1598,2],[1969,2]]}}}],["df._mgr.reduce(blk_func",{"_index":1169,"t":{"135":{"position":[[2563,24],[3921,24]]}}}],["df[\"is_anomali",{"_index":1693,"t":{"243":{"position":[[1549,16]]}}}],["df[\"is_anomaly\"].sum",{"_index":1696,"t":{"243":{"position":[[1643,22]]}}}],["df['count'].var",{"_index":1232,"t":{"135":{"position":[[12064,17],[12113,17],[12547,17]]}}}],["df[time_col_nam",{"_index":1680,"t":{"243":{"position":[[1141,17]]}}}],["df[value_col_nam",{"_index":1684,"t":{"243":{"position":[[1307,18]]}}}],["df[value_col_name].apply(lambda",{"_index":1694,"t":{"243":{"position":[[1568,31]]}}}],["df[value_col_name].astype(float",{"_index":1685,"t":{"243":{"position":[[1328,32]]}}}],["df[value_col_name].mean",{"_index":1688,"t":{"243":{"position":[[1436,26]]}}}],["df[value_col_name].std",{"_index":1689,"t":{"243":{"position":[[1463,24]]}}}],["diablo",{"_index":409,"t":{"63":{"position":[[3943,6],[5038,6],[5960,6],[6302,6],[6636,6]]}}}],["diagram",{"_index":499,"t":{"67":{"position":[[1142,7]]}}}],["dialog",{"_index":827,"t":{"93":{"position":[[64,6]]}}}],["dict",{"_index":1512,"t":{"202":{"position":[[1241,4]]}}}],["dict[str",{"_index":963,"t":{"103":{"position":[[2542,9]]}}}],["dictionari",{"_index":787,"t":{"87":{"position":[[999,10]]},"216":{"position":[[432,13]]},"247":{"position":[[973,11]]}}}],["differ",{"_index":472,"t":{"65":{"position":[[1616,9]]},"67":{"position":[[2199,9]]},"77":{"position":[[118,10]]},"99":{"position":[[57,9]]},"103":{"position":[[368,9],[2923,9],[2972,9]]},"113":{"position":[[83,9],[109,9]]},"162":{"position":[[35,9],[54,9]]},"186":{"position":[[1066,9]]},"190":{"position":[[747,9]]},"194":{"position":[[3502,9]]},"202":{"position":[[35,9],[54,9],[226,9],[245,9],[502,9],[1264,9],[1368,9]]},"216":{"position":[[1453,9]]},"218":{"position":[[337,10],[425,9],[1503,11],[1589,10],[1618,9],[2233,10],[2270,10],[2318,9],[2516,10],[2552,10]]},"247":{"position":[[3087,9]]}}}],["dir",{"_index":692,"t":{"81":{"position":[[749,3]]},"194":{"position":[[3928,3],[4168,3]]}}}],["direct",{"_index":589,"t":{"71":{"position":[[764,10]]}}}],["directli",{"_index":988,"t":{"109":{"position":[[619,8],[848,8],[1158,9]]},"165":{"position":[[954,8]]},"167":{"position":[[444,8]]},"231":{"position":[[855,8],[1383,9]]},"233":{"position":[[513,8]]}}}],["directori",{"_index":325,"t":{"63":{"position":[[215,9]]},"79":{"position":[[707,9]]},"83":{"position":[[367,9]]},"87":{"position":[[473,10],[674,10],[2234,9]]},"95":{"position":[[22,9],[332,9],[713,9],[885,9],[1067,9],[1290,9]]},"115":{"position":[[3023,10]]},"133":{"position":[[472,9],[509,10],[807,10],[1446,10]]},"139":{"position":[[293,10]]},"237":{"position":[[360,9],[2167,10],[2225,10],[2301,9]]},"245":{"position":[[631,10]]},"252":{"position":[[59,9],[140,9],[234,9],[656,9],[828,9]]},"260":{"position":[[136,9]]},"272":{"position":[[33,9],[586,9],[704,10],[744,9],[796,10]]},"274":{"position":[[25,9],[589,10],[653,9]]}}}],["disabl",{"_index":476,"t":{"67":{"position":[[22,9]]},"85":{"position":[[1195,8]]}}}],["discuss",{"_index":794,"t":{"87":{"position":[[1654,7]]},"210":{"position":[[650,7]]},"218":{"position":[[1491,7]]}}}],["display",{"_index":927,"t":{"99":{"position":[[3629,7]]},"103":{"position":[[1878,7]]},"274":{"position":[[950,7]]}}}],["distilroberta",{"_index":1022,"t":{"111":{"position":[[537,13]]}}}],["distinguish",{"_index":1616,"t":{"218":{"position":[[2737,11]]},"220":{"position":[[266,11]]}}}],["distribut",{"_index":210,"t":{"53":{"position":[[2385,12]]},"268":{"position":[[313,13]]}}}],["divid",{"_index":167,"t":{"53":{"position":[[858,7]]}}}],["doc",{"_index":1365,"t":{"186":{"position":[[1801,4]]}}}],["docker",{"_index":514,"t":{"67":{"position":[[1807,6]]},"69":{"position":[[90,6]]},"71":{"position":[[1451,6]]},"75":{"position":[[140,6],[209,7]]},"77":{"position":[[205,6]]},"79":{"position":[[354,6],[397,6],[649,6],[857,6],[892,6],[920,6],[1173,6]]},"81":{"position":[[30,6],[158,6],[289,6],[399,6],[634,6],[842,6],[1133,6],[1186,6],[1220,6],[1290,6]]},"83":{"position":[[187,6],[247,6],[790,6],[894,6],[1017,6]]},"85":{"position":[[60,6],[348,6],[461,6],[528,6],[771,6],[953,7],[998,6],[1236,6],[1434,6],[1664,6],[2076,6],[2317,6]]},"167":{"position":[[107,6]]},"216":{"position":[[2095,6]]},"260":{"position":[[998,6],[1025,6]]},"266":{"position":[[78,6],[131,6],[405,6]]},"268":{"position":[[17,6],[92,6]]},"270":{"position":[[52,6],[556,6],[677,6],[834,6],[1084,6]]},"272":{"position":[[109,6]]},"274":{"position":[[101,6]]}}}],["docker'",{"_index":1769,"t":{"268":{"position":[[133,8],[227,8]]}}}],["docker_network_subnet",{"_index":751,"t":{"85":{"position":[[1976,23],[2016,23]]}}}],["dockerfil",{"_index":681,"t":{"81":{"position":[[326,10],[431,11]]},"83":{"position":[[949,10]]}}}],["document",{"_index":38,"t":{"44":{"position":[[174,13]]},"59":{"position":[[600,14]]},"71":{"position":[[1049,13]]},"186":{"position":[[1005,13],[1491,8],[1822,13]]},"190":{"position":[[404,14]]},"198":{"position":[[661,9]]},"200":{"position":[[1344,9]]},"258":{"position":[[342,14]]},"266":{"position":[[8,9]]}}}],["doesn't",{"_index":1377,"t":{"190":{"position":[[447,7],[652,7]]},"262":{"position":[[939,7]]}}}],["domain",{"_index":1586,"t":{"216":{"position":[[718,6],[796,6]]}}}],["domin",{"_index":461,"t":{"65":{"position":[[1186,9]]}}}],["don't",{"_index":113,"t":{"51":{"position":[[175,5]]},"99":{"position":[[4321,5]]},"218":{"position":[[2089,5]]},"262":{"position":[[531,5]]}}}],["done",{"_index":605,"t":{"71":{"position":[[1404,4]]},"73":{"position":[[37,4]]},"214":{"position":[[417,4]]},"266":{"position":[[278,4]]}}}],["dot",{"_index":1021,"t":{"111":{"position":[[526,3]]},"115":{"position":[[3510,3]]}}}],["doubl",{"_index":1050,"t":{"115":{"position":[[368,6]]}}}],["download",{"_index":1768,"t":{"268":{"position":[[116,8]]}}}],["drop",{"_index":753,"t":{"85":{"position":[[2003,4],[2156,5]]},"200":{"position":[[806,4]]}}}],["drop_param",{"_index":1500,"t":{"200":{"position":[[726,12]]}}}],["dtype",{"_index":1185,"t":{"135":{"position":[[5249,6],[5670,6]]}}}],["due",{"_index":732,"t":{"85":{"position":[[1184,3]]},"165":{"position":[[601,3]]},"169":{"position":[[21,3]]},"173":{"position":[[524,3]]}}}],["dummi",{"_index":1036,"t":{"113":{"position":[[815,5]]}}}],["dump",{"_index":1703,"t":{"243":{"position":[[1998,6]]},"245":{"position":[[889,6]]}}}],["dure",{"_index":270,"t":{"59":{"position":[[131,6],[1310,6]]},"67":{"position":[[374,6]]},"103":{"position":[[1672,6],[1896,6]]},"135":{"position":[[1907,6],[3265,6]]},"175":{"position":[[942,6],[991,6]]},"247":{"position":[[161,6]]}}}],["dynam",{"_index":250,"t":{"57":{"position":[[64,11]]}}}],["e",{"_index":1774,"t":{"270":{"position":[[850,1],[879,1],[906,1],[935,1],[1100,1],[1129,1],[1156,1],[1185,1]]},"272":{"position":[[125,1],[154,1],[181,1],[210,1],[235,1],[309,1]]},"274":{"position":[[117,1],[146,1],[173,1],[202,1],[227,1],[301,1]]}}}],["e.g",{"_index":713,"t":{"85":{"position":[[111,5]]},"173":{"position":[[133,5],[689,6]]},"190":{"position":[[600,6]]},"194":{"position":[[2283,6]]},"214":{"position":[[843,6]]},"224":{"position":[[986,6]]},"237":{"position":[[1766,5]]},"243":{"position":[[2248,6]]},"256":{"position":[[175,5]]},"258":{"position":[[62,5]]}}}],["each",{"_index":212,"t":{"53":{"position":[[2508,4]]},"57":{"position":[[103,4]]},"61":{"position":[[196,4]]},"65":{"position":[[270,4],[470,4]]},"71":{"position":[[157,4]]},"93":{"position":[[112,4],[779,4]]},"103":{"position":[[1775,4]]},"115":{"position":[[2533,4]]},"124":{"position":[[471,4],[525,4],[1047,4]]},"171":{"position":[[1167,4]]},"212":{"position":[[53,4],[503,4],[862,4]]},"239":{"position":[[187,4]]},"243":{"position":[[692,4]]},"247":{"position":[[1491,4]]},"264":{"position":[[552,4]]}}}],["earlier",{"_index":1348,"t":{"184":{"position":[[585,7]]},"208":{"position":[[465,7]]}}}],["easi",{"_index":1314,"t":{"173":{"position":[[636,4]]},"175":{"position":[[566,4]]},"216":{"position":[[1485,4],[1530,4],[1697,4],[1935,4],[1978,4]]}}}],["easier",{"_index":618,"t":{"73":{"position":[[242,6]]},"124":{"position":[[980,6]]}}}],["easili",{"_index":1570,"t":{"214":{"position":[[2383,6]]},"216":{"position":[[775,6],[1743,6]]}}}],["echo",{"_index":876,"t":{"99":{"position":[[724,4],[740,6],[1247,4],[1279,4],[1340,4],[1364,7],[1851,4],[1944,4],[2995,4],[3015,7],[3842,4],[4048,7]]}}}],["echo(rol",{"_index":899,"t":{"99":{"position":[[2084,11]]}}}],["echo.decor",{"_index":896,"t":{"99":{"position":[[2013,16]]}}}],["echo.pi",{"_index":893,"t":{"99":{"position":[[1836,7]]}}}],["echo.role.yaml",{"_index":887,"t":{"99":{"position":[[1225,14]]}}}],["echoconfig",{"_index":900,"t":{"99":{"position":[[2132,11]]}}}],["echoconfig(roleconfig",{"_index":894,"t":{"99":{"position":[[1874,23]]}}}],["edit",{"_index":389,"t":{"63":{"position":[[3511,7],[4606,7],[5811,8],[5976,8],[6153,8],[6318,8],[6487,8],[6652,8]]},"115":{"position":[[124,4]]},"254":{"position":[[119,7]]},"272":{"position":[[527,4]]}}}],["effect",{"_index":729,"t":{"85":{"position":[[870,11]]},"169":{"position":[[293,9]]},"214":{"position":[[1927,9],[2027,9],[2640,9],[2812,10]]}}}],["effici",{"_index":1578,"t":{"216":{"position":[[181,11]]}}}],["effortlessli",{"_index":5,"t":{"41":{"position":[[44,12]]}}}],["element",{"_index":820,"t":{"91":{"position":[[374,8],[417,8],[681,8]]}}}],["elif",{"_index":1442,"t":{"194":{"position":[[3015,4],[3335,4],[3674,4]]}}}],["embed",{"_index":278,"t":{"59":{"position":[[345,9],[424,9],[474,9],[579,9],[754,9],[802,9],[885,9],[910,9]]},"63":{"position":[[126,11],[421,11],[495,9],[565,9],[1488,10],[1635,10]]},"111":{"position":[[34,9],[63,10],[141,9],[258,9],[360,9],[411,9],[439,9],[606,9],[641,9],[681,9]]},"115":{"position":[[951,9],[1023,9]]},"135":{"position":[[7076,9],[7094,10]]},"190":{"position":[[677,9],[708,11]]},"192":{"position":[[348,10]]},"194":{"position":[[711,9],[3467,10],[3512,9],[3547,9],[3586,9]]}}}],["embedding_model",{"_index":1199,"t":{"135":{"position":[[7054,16]]},"194":{"position":[[1397,18]]}}}],["embeddingservic",{"_index":1390,"t":{"194":{"position":[[276,16],[428,17],[1571,16],[1691,18]]}}}],["emitt",{"_index":921,"t":{"99":{"position":[[3258,8],[3584,7]]}}}],["employ",{"_index":298,"t":{"59":{"position":[[1121,7]]}}}],["empti",{"_index":89,"t":{"49":{"position":[[563,6]]},"53":{"position":[[1246,6]]},"115":{"position":[[1332,6]]},"133":{"position":[[536,5]]},"247":{"position":[[967,5]]}}}],["enabl",{"_index":3,"t":{"41":{"position":[[27,7]]},"49":{"position":[[227,8]]},"55":{"position":[[194,6]]},"61":{"position":[[56,6]]},"63":{"position":[[346,8],[888,8]]},"67":{"position":[[35,6],[540,6]]},"85":{"position":[[1805,7]]},"93":{"position":[[470,8],[507,8],[710,8],[1230,7]]},"99":{"position":[[3665,6]]},"115":{"position":[[1106,6],[2293,6]]},"124":{"position":[[707,8]]},"126":{"position":[[504,8]]},"128":{"position":[[248,8]]},"133":{"position":[[62,6],[145,6]]},"186":{"position":[[1538,6]]},"226":{"position":[[176,8],[385,8]]},"231":{"position":[[972,6]]},"247":{"position":[[98,8],[139,7],[251,7],[1293,8],[3465,7]]}}}],["enable_ip_masquerad",{"_index":721,"t":{"85":{"position":[[481,20],[728,20]]}}}],["encapsul",{"_index":1584,"t":{"216":{"position":[[564,11]]}}}],["encount",{"_index":439,"t":{"65":{"position":[[424,12]]}}}],["end",{"_index":835,"t":{"93":{"position":[[823,4]]},"177":{"position":[[672,3]]},"224":{"position":[[510,7],[849,5]]}}}],["endpoint",{"_index":527,"t":{"67":{"position":[[2245,8],[2335,8],[2451,8]]},"69":{"position":[[1190,9],[1219,9],[1286,9],[1342,9]]}}}],["enforc",{"_index":1046,"t":{"113":{"position":[[1358,8]]}}}],["engin",{"_index":1464,"t":{"196":{"position":[[87,8]]}}}],["enhanc",{"_index":1521,"t":{"204":{"position":[[487,8]]}}}],["enough",{"_index":1615,"t":{"218":{"position":[[2727,6]]}}}],["ensur",{"_index":746,"t":{"85":{"position":[[1760,6],[2629,6]]},"186":{"position":[[1223,6]]},"200":{"position":[[838,6]]},"245":{"position":[[100,6]]},"247":{"position":[[2569,6]]}}}],["enter",{"_index":341,"t":{"63":{"position":[[1316,5],[2005,5]]},"109":{"position":[[800,5],[1599,5]]},"135":{"position":[[700,5],[7769,5]]},"228":{"position":[[540,5]]},"237":{"position":[[946,5],[1288,5]]},"260":{"position":[[727,5]]},"274":{"position":[[874,5]]}}}],["enterprise:latest",{"_index":607,"t":{"71":{"position":[[1509,17]]}}}],["entir",{"_index":807,"t":{"87":{"position":[[2390,6]]}}}],["entri",{"_index":151,"t":{"53":{"position":[[403,8]]},"87":{"position":[[73,5]]},"171":{"position":[[1172,5]]},"214":{"position":[[1554,5],[1729,5],[2624,7],[2761,7],[2859,7]]},"243":{"position":[[697,5]]},"247":{"position":[[1496,5]]}}}],["entrypoint",{"_index":1780,"t":{"270":{"position":[[1224,10]]}}}],["enum",{"_index":826,"t":{"91":{"position":[[521,4]]}}}],["environ",{"_index":609,"t":{"71":{"position":[[1561,12]]},"77":{"position":[[252,11]]},"85":{"position":[[2683,11]]},"87":{"position":[[1162,11]]},"115":{"position":[[3414,11]]},"150":{"position":[[79,12]]},"167":{"position":[[197,11]]},"177":{"position":[[185,12],[736,12]]},"179":{"position":[[310,11]]},"186":{"position":[[615,11],[906,11],[927,11],[1076,11],[1370,13],[1632,11],[1851,11]]},"200":{"position":[[541,11]]},"204":{"position":[[76,12]]},"216":{"position":[[1352,11]]},"250":{"position":[[89,11]]},"262":{"position":[[553,12]]}}}],["envis",{"_index":932,"t":{"99":{"position":[[4327,8]]}}}],["equal",{"_index":1526,"t":{"208":{"position":[[380,5]]}}}],["error",{"_index":67,"t":{"47":{"position":[[458,6]]},"65":{"position":[[417,6]]},"67":{"position":[[1924,7],[1938,6]]},"128":{"position":[[227,6],[941,6],[1752,5],[2191,5],[2612,5]]},"135":{"position":[[4789,6],[6582,5],[6602,5]]},"167":{"position":[[8,5]]},"169":{"position":[[277,6]]},"173":{"position":[[256,6],[433,5],[545,5],[659,6]]},"175":{"position":[[111,5],[347,5],[469,5],[582,6],[657,6],[741,6],[763,7],[832,5],[919,6]]},"177":{"position":[[766,7]]},"179":{"position":[[152,5]]},"181":{"position":[[8,5]]}}}],["especi",{"_index":132,"t":{"53":{"position":[[73,10]]},"75":{"position":[[64,10]]},"77":{"position":[[669,10]]},"81":{"position":[[107,10]]}}}],["essenti",{"_index":1651,"t":{"231":{"position":[[772,12]]},"245":{"position":[[87,9]]},"264":{"position":[[458,12]]}}}],["establish",{"_index":301,"t":{"59":{"position":[[1186,11]]},"75":{"position":[[637,11]]},"85":{"position":[[1531,12]]}}}],["etc",{"_index":473,"t":{"65":{"position":[[1633,4]]},"115":{"position":[[3626,4]]},"186":{"position":[[968,6]]}}}],["eval",{"_index":1066,"t":{"115":{"position":[[1470,7]]}}}],["even",{"_index":747,"t":{"85":{"position":[[1772,4]]},"131":{"position":[[432,4]]},"200":{"position":[[156,4]]},"212":{"position":[[558,4]]}}}],["event",{"_index":920,"t":{"99":{"position":[[3252,5],[3578,5],[3607,5],[3641,5]]},"103":{"position":[[1416,5],[1665,6],[1726,6],[1760,5],[1780,5],[1841,5],[1889,6],[1949,5],[2044,6],[2211,5],[2241,5]]},"179":{"position":[[89,5],[186,5],[247,5]]},"264":{"position":[[2266,5]]}}}],["event.msg",{"_index":960,"t":{"103":{"position":[[2084,10]]}}}],["event_emitt",{"_index":868,"t":{"99":{"position":[[279,14],[2187,14],[2346,14]]}}}],["event_emitter.create_post_proxi",{"_index":922,"t":{"99":{"position":[[3300,31]]}}}],["event_handl",{"_index":951,"t":{"103":{"position":[[1199,14],[1397,14],[1614,13]]}}}],["event_handler=your_event_handl",{"_index":1766,"t":{"264":{"position":[[2199,34]]}}}],["everyth",{"_index":1658,"t":{"237":{"position":[[478,10]]},"260":{"position":[[259,10]]}}}],["exactli",{"_index":881,"t":{"99":{"position":[[1002,7]]},"113":{"position":[[625,7]]},"131":{"position":[[437,7]]}}}],["exampl",{"_index":48,"t":{"47":{"position":[[91,7]]},"51":{"position":[[160,8]]},"53":{"position":[[1885,7]]},"63":{"position":[[742,7],[811,8]]},"65":{"position":[[1691,7]]},"81":{"position":[[577,8]]},"85":{"position":[[2108,8]]},"87":{"position":[[1899,7],[2172,8]]},"93":{"position":[[327,9],[525,7],[1063,9],[1077,8]]},"95":{"position":[[78,9],[531,8],[608,8]]},"97":{"position":[[1586,8]]},"99":{"position":[[141,8],[654,8],[709,7],[2906,7],[3287,8],[3790,7]]},"103":{"position":[[1935,7],[2900,8]]},"107":{"position":[[55,9],[157,9],[219,7],[243,8]]},"109":{"position":[[1179,8]]},"115":{"position":[[1787,9],[2090,9],[3535,8]]},"124":{"position":[[33,9],[55,8],[88,9],[107,8],[220,8],[345,8],[682,7],[936,8],[1076,8],[1128,8]]},"126":{"position":[[11,7],[218,7],[328,7],[2121,8]]},"128":{"position":[[18,7],[177,7],[1172,7],[1931,8],[2344,8]]},"131":{"position":[[29,8]]},"139":{"position":[[372,8],[642,8]]},"177":{"position":[[202,8],[1098,8]]},"179":{"position":[[355,8]]},"186":{"position":[[1041,8]]},"194":{"position":[[2549,8]]},"200":{"position":[[602,8],[743,8]]},"202":{"position":[[80,8],[1424,8],[1699,8]]},"204":{"position":[[108,7]]},"214":{"position":[[195,8],[713,8]]},"218":{"position":[[91,8],[573,7],[907,9],[1311,9],[1787,8]]},"224":{"position":[[176,8]]},"226":{"position":[[565,8]]},"231":{"position":[[236,8],[458,8],[1242,8]]},"233":{"position":[[194,8]]},"237":{"position":[[1141,8]]},"239":{"position":[[302,7]]},"243":{"position":[[238,7],[2412,7],[2705,7]]},"245":{"position":[[365,7]]},"247":{"position":[[1222,7],[2339,8],[2602,8]]},"252":{"position":[[474,8],[551,8]]},"264":{"position":[[80,8],[862,7]]},"272":{"position":[[65,8],[673,8]]},"274":{"position":[[57,8],[713,8]]}}}],["example.csv",{"_index":1790,"t":{"274":{"position":[[748,11]]}}}],["exce",{"_index":974,"t":{"107":{"position":[[333,6]]},"109":{"position":[[156,7]]}}}],["exceed",{"_index":136,"t":{"53":{"position":[[161,9]]},"57":{"position":[[361,9]]},"204":{"position":[[469,9]]}}}],["except",{"_index":628,"t":{"73":{"position":[[685,9]]},"99":{"position":[[1052,9]]},"243":{"position":[[1195,6],[1202,10],[1361,6]]}}}],["excess",{"_index":253,"t":{"57":{"position":[[173,9]]}}}],["exec",{"_index":94,"t":{"49":{"position":[[708,7]]},"115":{"position":[[1478,7]]}}}],["exec(cod",{"_index":56,"t":{"47":{"position":[[198,10]]}}}],["execfil",{"_index":95,"t":{"49":{"position":[[716,11]]},"115":{"position":[[1486,11]]}}}],["execut",{"_index":60,"t":{"47":{"position":[[273,7]]},"53":{"position":[[106,9],[621,9],[2071,9],[2332,9],[2441,9],[2628,11]]},"63":{"position":[[3338,9],[3435,9],[4319,9],[4433,9],[4530,9]]},"65":{"position":[[619,10],[735,9],[769,9],[850,8],[994,10],[1048,10],[1117,10],[1173,9]]},"67":{"position":[[386,10]]},"75":{"position":[[53,10],[471,8],[573,7]]},"77":{"position":[[38,10],[178,8],[273,10],[305,8],[482,7]]},"79":{"position":[[22,9],[462,10],[1275,9]]},"81":{"position":[[52,9],[180,9]]},"83":{"position":[[407,8]]},"91":{"position":[[747,9]]},"95":{"position":[[837,9],[1012,9],[1114,9]]},"97":{"position":[[1635,9]]},"109":{"position":[[1820,9],[1917,9],[2125,9],[2223,9],[2320,9],[2509,9],[2607,9],[2704,9]]},"126":{"position":[[119,9],[180,9]]},"128":{"position":[[237,10],[1795,9],[1877,9],[2413,8],[2450,9],[2479,9],[2520,9],[2570,9],[2705,9]]},"135":{"position":[[1847,9],[1914,10],[3022,9],[3205,9],[3272,10],[4343,9],[4777,9],[5115,9],[5216,9],[5328,9],[5536,9],[5637,9],[6638,7],[9083,9],[9133,9],[9234,9],[9499,9],[9639,9],[9740,9],[12256,9],[12306,9],[12407,9],[12506,9],[12598,9],[12699,9]]},"165":{"position":[[255,8],[287,9],[352,9]]},"167":{"position":[[218,10]]},"171":{"position":[[1000,10]]},"175":{"position":[[88,9],[953,9]]},"179":{"position":[[30,7],[114,9]]},"196":{"position":[[34,9]]},"216":{"position":[[71,9],[254,7],[932,10],[1185,10],[1390,10]]},"224":{"position":[[558,9]]},"228":{"position":[[1179,9],[1276,9],[1625,9],[1762,9],[1859,9]]},"233":{"position":[[431,7]]},"243":{"position":[[2677,9]]},"252":{"position":[[780,9]]},"266":{"position":[[244,9],[328,8]]},"270":{"position":[[234,9]]}}}],["execution_result",{"_index":819,"t":{"91":{"position":[[317,19],[622,19]]},"128":{"position":[[998,16]]},"135":{"position":[[1822,18],[5090,18],[9108,18],[12281,18]]}}}],["execution_service.kernel_mod",{"_index":647,"t":{"75":{"position":[[275,29]]},"79":{"position":[[58,29],[477,29]]},"115":{"position":[[2894,29]]},"167":{"position":[[279,29]]}}}],["execution_statu",{"_index":1109,"t":{"128":{"position":[[956,16],[2353,16],[2647,16]]},"135":{"position":[[1791,18],[5059,18],[9055,18],[12228,18]]}}}],["executor",{"_index":432,"t":{"65":{"position":[[239,9]]},"79":{"position":[[971,8],[1252,8]]},"115":{"position":[[2945,9]]}}}],["exhibit",{"_index":1675,"t":{"243":{"position":[[227,7]]}}}],["exist",{"_index":173,"t":{"53":{"position":[[1007,7]]},"59":{"position":[[1407,8]]},"87":{"position":[[1115,8]]},"128":{"position":[[1078,6]]},"212":{"position":[[569,10]]}}}],["exit",{"_index":798,"t":{"87":{"position":[[1784,6],[1889,6]]},"103":{"position":[[2445,6]]},"237":{"position":[[1500,6],[1507,4],[1967,5],[1973,4]]}}}],["exp_id",{"_index":1187,"t":{"135":{"position":[[6480,7]]},"139":{"position":[[148,7],[388,6],[483,6],[651,7]]}}}],["exp_{session_id}.yaml",{"_index":1139,"t":{"133":{"position":[[997,22]]}}}],["experi",{"_index":978,"t":{"107":{"position":[[627,10]]},"115":{"position":[[1949,10],[2374,10]]},"131":{"position":[[139,11],[564,12],[619,10],[741,10],[788,10],[871,10],[944,10],[1059,11]]},"133":{"position":[[73,10],[125,10],[156,10],[351,10],[461,10],[796,10],[1112,10],[1238,10],[1336,10],[1402,10],[1492,10]]},"135":{"position":[[6421,10]]},"137":{"position":[[41,10],[62,11],[129,11],[247,10]]},"139":{"position":[[24,11],[85,11],[170,10],[217,10],[260,10],[607,10]]},"141":{"position":[[24,10],[74,11],[241,10],[382,11]]},"165":{"position":[[773,10]]},"216":{"position":[[848,10]]},"237":{"position":[[1616,10],[2079,10]]}}}],["experience_text",{"_index":1191,"t":{"135":{"position":[[6513,16]]},"139":{"position":[[181,16],[551,15],[661,16]]}}}],["experiment",{"_index":1735,"t":{"260":{"position":[[848,12]]}}}],["expertis",{"_index":1545,"t":{"212":{"position":[[701,10]]}}}],["explain",{"_index":240,"t":{"55":{"position":[[3,9]]},"71":{"position":[[30,9]]},"135":{"position":[[4515,7]]}}}],["explicit",{"_index":1614,"t":{"218":{"position":[[2718,8]]}}}],["explicitli",{"_index":646,"t":{"75":{"position":[[256,10]]},"124":{"position":[[915,10]]},"184":{"position":[[636,11]]},"208":{"position":[[515,11]]}}}],["export",{"_index":484,"t":{"67":{"position":[[267,8],[1550,7],[1641,6]]},"69":{"position":[[1242,10],[1413,10],[1458,10],[1506,10],[1595,6],[1643,9],[1661,6],[1720,9]]},"186":{"position":[[1703,6]]},"200":{"position":[[635,6]]}}}],["expos",{"_index":545,"t":{"69":{"position":[[448,6],[960,6]]}}}],["ext_llms.llm_config",{"_index":1508,"t":{"202":{"position":[[416,20],[798,23],[1199,20]]}}}],["extend",{"_index":263,"t":{"57":{"position":[[399,8]]},"89":{"position":[[44,6]]},"216":{"position":[[1705,6],[1750,8]]},"247":{"position":[[2019,7]]}}}],["extens",{"_index":1611,"t":{"218":{"position":[[1663,10],[2170,10]]},"247":{"position":[[2880,10]]}}}],["extern",{"_index":711,"t":{"85":{"position":[[93,8],[643,8],[1695,8]]}}}],["extra",{"_index":824,"t":{"91":{"position":[[472,6]]},"99":{"position":[[519,5]]},"186":{"position":[[536,5]]},"202":{"position":[[487,5],[1249,5]]},"214":{"position":[[1417,5]]},"216":{"position":[[1828,5]]},"247":{"position":[[1009,5]]}}}],["extra_bodi",{"_index":1488,"t":{"198":{"position":[[1095,10]]}}}],["extract",{"_index":1131,"t":{"131":{"position":[[733,7]]},"133":{"position":[[1100,7]]},"137":{"position":[[121,7]]},"141":{"position":[[64,9]]},"237":{"position":[[1627,10],[2090,10]]}}}],["f\"embed",{"_index":1453,"t":{"194":{"position":[[3798,11]]}}}],["facil",{"_index":919,"t":{"99":{"position":[[3191,10]]}}}],["fail",{"_index":940,"t":{"101":{"position":[[564,9],[720,7],[741,9]]},"135":{"position":[[1896,6],[3254,6],[4388,7],[6628,6]]},"169":{"position":[[41,6]]},"173":{"position":[[448,6],[517,6]]},"175":{"position":[[376,6],[406,6],[426,6]]},"198":{"position":[[962,4]]},"214":{"position":[[548,4],[2225,6]]}}}],["failur",{"_index":1110,"t":{"128":{"position":[[982,7],[1831,8],[2595,7]]},"135":{"position":[[1810,7]]},"247":{"position":[[1102,7]]}}}],["fallback",{"_index":1485,"t":{"198":{"position":[[926,8]]}}}],["fallback_model",{"_index":1486,"t":{"198":{"position":[[1048,15]]}}}],["fals",{"_index":315,"t":{"61":{"position":[[107,6]]},"85":{"position":[[509,6],[752,5]]},"107":{"position":[[504,6],[713,6]]},"113":{"position":[[400,6],[579,6],[978,6]]},"115":{"position":[[245,5],[270,6],[1132,5],[1905,5],[2014,5],[2232,5],[2323,5],[2446,5]]},"171":{"position":[[1237,9]]},"231":{"position":[[622,6]]},"243":{"position":[[760,7]]},"247":{"position":[[308,6],[1320,5],[1336,5],[1559,7],[3555,6]]}}}],["faq",{"_index":1642,"t":{"228":{"position":[[3359,4]]}}}],["far",{"_index":1529,"t":{"210":{"position":[[476,3]]}}}],["faster",{"_index":1276,"t":{"165":{"position":[[997,6]]}}}],["featur",{"_index":643,"t":{"75":{"position":[[197,8]]},"113":{"position":[[1126,8]]},"133":{"position":[[84,7],[167,8]]},"216":{"position":[[319,8]]},"247":{"position":[[2989,8]]}}}],["few",{"_index":126,"t":{"53":{"position":[[21,3],[268,3],[439,3]]},"79":{"position":[[335,3]]},"200":{"position":[[445,3]]}}}],["field",{"_index":227,"t":{"53":{"position":[[2979,7],[3207,6]]},"99":{"position":[[1434,7]]},"124":{"position":[[1115,5]]},"139":{"position":[[490,5],[567,6]]},"169":{"position":[[247,6]]},"173":{"position":[[898,6],[940,7]]},"202":{"position":[[1171,6]]},"214":{"position":[[1423,6],[1470,7],[1759,5],[1819,5]]},"218":{"position":[[1580,5],[1796,6],[1919,5],[2059,5],[2224,5],[2507,5]]},"220":{"position":[[139,5],[203,5],[249,5],[311,5]]},"226":{"position":[[130,6]]},"231":{"position":[[577,5]]},"247":{"position":[[1015,6],[1046,6],[2262,6],[3519,5]]}}}],["field(default_factory=list",{"_index":831,"t":{"93":{"position":[[578,27],[635,27],[682,27]]}}}],["fifth",{"_index":1113,"t":{"128":{"position":[[1771,5]]}}}],["figur",{"_index":50,"t":{"47":{"position":[[112,7]]},"53":{"position":[[780,6]]},"212":{"position":[[397,6]]},"214":{"position":[[495,6]]},"245":{"position":[[209,8]]}}}],["file",{"_index":30,"t":{"44":{"position":[[66,4]]},"47":{"position":[[152,4],[264,4]]},"49":{"position":[[131,4],[333,5]]},"59":{"position":[[531,5]]},"63":{"position":[[115,5],[410,5],[447,5],[710,6],[1369,4],[2548,4]]},"65":{"position":[[560,5]]},"67":{"position":[[620,5],[781,5],[908,4],[2317,5],[2432,4]]},"69":{"position":[[105,4],[212,4],[845,5],[1052,4],[1136,4],[1756,4],[1782,4]]},"71":{"position":[[1471,5]]},"75":{"position":[[345,4]]},"79":{"position":[[128,5],[567,5]]},"81":{"position":[[266,5]]},"83":{"position":[[448,5],[533,4],[573,4],[651,4]]},"87":{"position":[[1154,4]]},"95":{"position":[[62,6],[249,5],[418,4],[1139,6],[1235,5],[1257,4],[1312,5]]},"97":{"position":[[1191,4]]},"99":{"position":[[816,6],[865,5],[1165,5],[1406,4],[1787,5],[2003,4],[3764,5],[3828,4]]},"103":{"position":[[1252,6],[1438,6],[1449,6],[2284,5],[2318,5]]},"115":{"position":[[58,5],[134,4],[186,4],[445,5],[1586,5],[1654,5]]},"126":{"position":[[725,4],[891,4],[1093,4],[1249,4],[1317,4],[1385,4],[1471,4],[1536,4],[1638,4],[1840,4],[2399,4],[2727,4],[2795,6],[2881,4],[2946,6]]},"128":{"position":[[289,4],[350,4],[472,4],[673,4],[812,5],[1051,4],[1328,4],[1434,4]]},"133":{"position":[[284,4],[744,4],[947,4],[986,4],[1579,5]]},"135":{"position":[[824,4],[1028,4],[1185,4],[1264,4],[1469,4],[2055,4],[2210,4],[2335,4],[2463,4],[2592,4],[2724,4],[2857,4],[3413,4],[3568,4],[3693,4],[3821,4],[3950,4],[4082,4],[4215,4],[4677,4],[5768,4],[5972,4],[7924,4],[8230,4],[8320,4],[8441,4],[8460,4],[8497,4],[8520,4],[8678,4],[10055,4],[10361,4],[10459,4],[10616,4],[10839,4],[11093,4],[11383,4],[12848,4],[13138,4],[13444,4],[13599,4]]},"139":{"position":[[62,4],[106,4],[232,4],[308,4],[405,4],[533,4]]},"141":{"position":[[196,4]]},"167":{"position":[[358,5]]},"173":{"position":[[104,5],[275,5],[597,4],[788,4],[863,4]]},"175":{"position":[[678,4]]},"177":{"position":[[155,4],[690,5],[717,4],[865,5],[996,5],[1169,5]]},"184":{"position":[[171,5]]},"186":{"position":[[227,5]]},"188":{"position":[[110,5]]},"190":{"position":[[129,5]]},"194":{"position":[[3908,4]]},"198":{"position":[[441,5]]},"200":{"position":[[1069,5]]},"202":{"position":[[366,5],[467,4],[598,4]]},"208":{"position":[[99,5]]},"218":{"position":[[435,6],[1644,4],[1951,4],[2148,4]]},"220":{"position":[[165,4]]},"224":{"position":[[16,4],[70,4]]},"226":{"position":[[297,4]]},"231":{"position":[[433,4],[1121,4]]},"237":{"position":[[1376,7],[1391,4],[1725,6],[1739,4]]},"241":{"position":[[22,6],[61,4],[107,4]]},"243":{"position":[[127,4],[1900,4],[2826,5]]},"245":{"position":[[467,5],[523,4],[791,4]]},"247":{"position":[[330,4],[2324,4],[2398,4],[2492,4],[2539,5],[2661,4],[2818,4],[2914,5]]},"252":{"position":[[104,6],[277,5],[361,4]]},"254":{"position":[[154,5],[262,5]]},"258":{"position":[[275,5]]},"262":{"position":[[997,5]]},"264":{"position":[[196,4],[1367,5]]},"272":{"position":[[559,4]]},"274":{"position":[[527,5],[615,4],[737,4],[989,4]]}}}],["file.read",{"_index":55,"t":{"47":{"position":[[186,11]]},"128":{"position":[[834,11]]}}}],["file_cont",{"_index":1106,"t":{"128":{"position":[[818,13]]}}}],["file_name=\"anomaly_detection_results.csv",{"_index":1700,"t":{"243":{"position":[[1846,42]]},"245":{"position":[[737,42]]}}}],["file_name=\"artifact.csv",{"_index":1627,"t":{"224":{"position":[[651,25]]}}}],["file_path",{"_index":1104,"t":{"128":{"position":[[756,9]]}}}],["filenotfoundexcept",{"_index":1102,"t":{"128":{"position":[[494,21],[1024,22]]}}}],["fill",{"_index":1637,"t":{"226":{"position":[[152,7]]},"237":{"position":[[174,4]]},"262":{"position":[[420,4]]}}}],["filter",{"_index":304,"t":{"59":{"position":[[1279,9]]},"71":{"position":[[333,6]]},"214":{"position":[[2390,6]]}}}],["final",{"_index":418,"t":{"63":{"position":[[5348,8]]},"87":{"position":[[2458,8]]},"126":{"position":[[2574,5]]},"131":{"position":[[347,7]]},"218":{"position":[[2465,8]]}}}],["find",{"_index":324,"t":{"63":{"position":[[200,4]]},"67":{"position":[[795,4]]},"73":{"position":[[328,4]]},"85":{"position":[[1833,5]]},"128":{"position":[[463,4]]},"133":{"position":[[456,4],[733,4]]},"135":{"position":[[147,4],[7226,4]]},"171":{"position":[[754,4]]},"190":{"position":[[342,4]]},"192":{"position":[[490,4]]},"196":{"position":[[572,4]]},"206":{"position":[[418,4]]},"208":{"position":[[326,4]]},"210":{"position":[[139,4]]},"264":{"position":[[2234,4]]},"268":{"position":[[261,4]]}}}],["finish",{"_index":939,"t":{"101":{"position":[[552,11],[654,8],[690,11]]},"103":{"position":[[157,8]]},"128":{"position":[[314,8]]},"135":{"position":[[10005,8],[12798,8]]},"264":{"position":[[1073,11]]}}}],["firewal",{"_index":740,"t":{"85":{"position":[[1565,8],[2273,8]]}}}],["first",{"_index":108,"t":{"51":{"position":[[51,6]]},"53":{"position":[[734,5]]},"59":{"position":[[736,5]]},"63":{"position":[[820,6]]},"71":{"position":[[7,5]]},"75":{"position":[[381,5]]},"126":{"position":[[2153,5],[2507,5]]},"128":{"position":[[1240,5],[1502,5]]},"131":{"position":[[253,5],[525,5]]},"173":{"position":[[0,6]]},"216":{"position":[[21,5]]},"218":{"position":[[1547,6]]}}}],["fix",{"_index":1145,"t":{"135":{"position":[[270,5],[4417,3]]},"173":{"position":[[644,3]]},"175":{"position":[[574,3]]},"181":{"position":[[170,3]]},"212":{"position":[[423,5]]},"216":{"position":[[1267,3]]}}}],["flag",{"_index":839,"t":{"93":{"position":[[1238,4]]}}}],["float",{"_index":1650,"t":{"231":{"position":[[718,6]]}}}],["float64",{"_index":1186,"t":{"135":{"position":[[5256,7],[5677,7]]}}}],["flow",{"_index":1558,"t":{"214":{"position":[[1162,5]]}}}],["focus",{"_index":1544,"t":{"212":{"position":[[682,7]]}}}],["folder",{"_index":326,"t":{"63":{"position":[[253,7],[1402,6]]},"93":{"position":[[1101,6]]},"95":{"position":[[10,6],[168,7],[188,6],[259,7],[456,6],[507,6],[575,6],[632,6],[813,6],[956,6],[1036,6],[1083,7],[1177,7]]},"99":{"position":[[934,7],[1026,6],[3977,6]]},"107":{"position":[[31,6],[192,7]]},"115":{"position":[[1630,6],[1686,6],[1763,6],[2057,6]]},"133":{"position":[[1413,6],[1503,6]]},"139":{"position":[[271,6]]},"173":{"position":[[125,7]]},"194":{"position":[[217,7]]},"224":{"position":[[58,7]]},"237":{"position":[[286,6]]},"245":{"position":[[609,6]]},"252":{"position":[[165,7],[198,6],[287,8],[399,6],[450,6],[518,6],[575,6],[756,6]]},"260":{"position":[[35,6]]},"262":{"position":[[799,6],[862,6]]},"264":{"position":[[148,6]]}}}],["follow",{"_index":27,"t":{"44":{"position":[[13,9]]},"47":{"position":[[81,9]]},"51":{"position":[[126,9],[396,7]]},"53":{"position":[[770,9]]},"57":{"position":[[146,9]]},"63":{"position":[[69,9],[801,9],[4123,9],[4288,9],[5218,9]]},"65":{"position":[[152,10],[485,9]]},"67":{"position":[[919,8],[1132,9],[1736,9]]},"69":{"position":[[223,8],[1147,8],[1815,8]]},"71":{"position":[[1426,9]]},"73":{"position":[[542,9]]},"79":{"position":[[677,9]]},"81":{"position":[[460,9]]},"85":{"position":[[299,9],[979,9],[1325,10]]},"87":{"position":[[1217,9]]},"95":{"position":[[301,9]]},"99":{"position":[[953,6],[1212,9],[1424,9],[1823,9],[3774,9]]},"103":{"position":[[1142,9]]},"109":{"position":[[2094,9],[2478,9]]},"111":{"position":[[171,9]]},"115":{"position":[[387,9]]},"126":{"position":[[202,9],[472,6]]},"135":{"position":[[1929,9],[2991,9],[3287,9],[5297,9],[9468,9],[12475,9]]},"139":{"position":[[127,9]]},"150":{"position":[[20,6]]},"165":{"position":[[65,9],[682,10]]},"169":{"position":[[71,6]]},"171":{"position":[[170,10],[879,8],[912,9]]},"173":{"position":[[423,9]]},"175":{"position":[[337,9]]},"177":{"position":[[264,8],[1217,8]]},"184":{"position":[[130,9]]},"186":{"position":[[186,9],[1273,9],[1622,9],[1790,6]]},"188":{"position":[[61,9]]},"190":{"position":[[88,9]]},"192":{"position":[[223,9]]},"194":{"position":[[3975,9],[4222,9]]},"196":{"position":[[320,9]]},"198":{"position":[[392,9]]},"200":{"position":[[389,9],[1020,9]]},"202":{"position":[[531,10]]},"204":{"position":[[17,6],[159,10],[699,9]]},"206":{"position":[[225,9]]},"208":{"position":[[58,9]]},"214":{"position":[[1460,9]]},"224":{"position":[[222,9],[590,9],[965,6],[1116,8]]},"226":{"position":[[339,9]]},"228":{"position":[[120,8],[1594,9]]},"231":{"position":[[149,9],[249,9],[471,9]]},"233":{"position":[[207,9]]},"237":{"position":[[108,6],[220,9],[517,9],[1690,8]]},"239":{"position":[[418,8]]},"243":{"position":[[285,9],[2057,9]]},"247":{"position":[[2761,8],[3253,8],[3383,8]]},"250":{"position":[[42,9]]},"252":{"position":[[267,9]]},"254":{"position":[[211,9]]},"260":{"position":[[298,9]]},"262":{"position":[[354,6],[745,9]]},"264":{"position":[[65,9]]},"268":{"position":[[193,9]]},"270":{"position":[[506,9],[815,9],[1065,9]]},"272":{"position":[[90,9]]},"274":{"position":[[82,9],[775,9]]}}}],["font='isometric1",{"_index":1636,"t":{"224":{"position":[[1321,18]]}}}],["form",{"_index":724,"t":{"85":{"position":[[559,4]]},"171":{"position":[[1399,5]]},"216":{"position":[[233,4],[630,4]]},"226":{"position":[[480,5],[736,5]]},"231":{"position":[[330,5]]},"245":{"position":[[453,4]]}}}],["format",{"_index":416,"t":{"63":{"position":[[4233,6],[5328,6]]},"97":{"position":[[266,7]]},"99":{"position":[[4511,7],[4567,7]]},"113":{"position":[[1351,6]]},"115":{"position":[[202,7],[838,6]]},"124":{"position":[[1174,7]]},"126":{"position":[[496,7]]},"139":{"position":[[630,7]]},"184":{"position":[[226,6]]},"186":{"position":[[282,6]]},"190":{"position":[[593,6]]},"198":{"position":[[94,6]]},"200":{"position":[[88,7]]},"247":{"position":[[1188,7]]},"258":{"position":[[141,7]]}}}],["former",{"_index":1462,"t":{"196":{"position":[[69,6]]}}}],["forth",{"_index":1271,"t":{"165":{"position":[[514,5]]}}}],["forward",{"_index":750,"t":{"85":{"position":[[1965,7],[2166,10]]}}}],["found",{"_index":124,"t":{"51":{"position":[[625,5]]},"53":{"position":[[3571,5]]},"63":{"position":[[5769,6],[6111,6],[6445,6]]},"67":{"position":[[1949,6]]},"89":{"position":[[128,5]]},"154":{"position":[[132,5]]},"156":{"position":[[145,5]]},"192":{"position":[[142,5]]},"196":{"position":[[9,7],[247,5]]},"198":{"position":[[365,5]]},"200":{"position":[[993,5]]},"206":{"position":[[129,5]]},"214":{"position":[[521,5]]},"258":{"position":[[315,5]]}}}],["fourth",{"_index":1098,"t":{"126":{"position":[[2806,6]]},"128":{"position":[[1714,6]]}}}],["framework",{"_index":429,"t":{"65":{"position":[[111,11]]},"75":{"position":[[393,10]]},"113":{"position":[[31,10],[1002,10]]},"216":{"position":[[33,9],[119,9]]}}}],["free",{"_index":1645,"t":{"231":{"position":[[324,5]]}}}],["frequenc",{"_index":193,"t":{"53":{"position":[[1837,9],[2484,9]]}}}],["frontend",{"_index":521,"t":{"67":{"position":[[1986,8],[2035,8]]},"71":{"position":[[77,9],[125,8],[946,9]]},"99":{"position":[[3652,9]]}}}],["fulfil",{"_index":985,"t":{"109":{"position":[[430,7]]}}}],["full",{"_index":1478,"t":{"198":{"position":[[313,4]]},"200":{"position":[[945,4]]},"228":{"position":[[96,4]]},"231":{"position":[[109,4]]}}}],["func(self.valu",{"_index":1175,"t":{"135":{"position":[[2835,17],[4193,17]]}}}],["function",{"_index":91,"t":{"49":{"position":[[645,9],[841,10],[943,8]]},"51":{"position":[[565,10]]},"63":{"position":[[3141,8]]},"65":{"position":[[1414,9]]},"73":{"position":[[881,8],[1055,9]]},"87":{"position":[[1745,8]]},"89":{"position":[[29,9]]},"99":{"position":[[2979,8],[3095,8],[3332,8],[4207,13],[4251,13],[4430,13]]},"103":{"position":[[1643,8],[2402,8]]},"115":{"position":[[1414,9]]},"171":{"position":[[929,9],[1050,8]]},"175":{"position":[[70,9],[148,8],[523,8],[706,8],[894,9],[977,9],[1024,9]]},"177":{"position":[[132,8],[233,8],[505,9],[565,8],[656,8]]},"190":{"position":[[774,14]]},"194":{"position":[[2461,8],[2664,8]]},"216":{"position":[[241,9],[599,9],[645,11]]},"218":{"position":[[1807,8]]},"224":{"position":[[1376,8]]},"226":{"position":[[73,8]]},"228":{"position":[[1012,8],[1653,8]]},"233":{"position":[[49,8],[157,8],[256,11]]},"239":{"position":[[226,8]]},"243":{"position":[[11,8],[162,8],[577,8],[2349,8]]},"245":{"position":[[7,13]]},"247":{"position":[[64,8],[467,9],[872,9],[1376,8]]},"264":{"position":[[1781,10],[1886,10],[2004,10]]}}}],["futur",{"_index":232,"t":{"53":{"position":[[3378,6]]},"133":{"position":[[1372,6]]}}}],["g",{"_index":1785,"t":{"272":{"position":[[332,2]]},"274":{"position":[[324,2]]}}}],["gam",{"_index":395,"t":{"63":{"position":[[3620,6],[4056,6],[4715,6],[5151,6]]}}}],["gamepad",{"_index":400,"t":{"63":{"position":[[3747,8],[4842,8]]}}}],["gateway",{"_index":737,"t":{"85":{"position":[[1377,10]]}}}],["gemini",{"_index":1370,"t":{"188":{"position":[[220,7]]},"202":{"position":[[153,6],[1100,7],[1492,6]]}}}],["gener",{"_index":14,"t":{"41":{"position":[[147,9]]},"47":{"position":[[40,9],[124,9],[227,9],[376,9],[509,8]]},"49":{"position":[[170,9],[448,11],[674,11],[922,9],[1011,9]]},"51":{"position":[[111,9],[190,9],[366,9]]},"53":{"position":[[661,8],[1032,9],[1394,9],[1707,9],[1939,9],[2014,10],[2145,9],[2221,9],[2765,9],[2923,9],[3230,9],[3390,11],[3598,10]]},"57":{"position":[[257,10]]},"59":{"position":[[147,10],[336,8],[742,8],[1090,11],[1254,10]]},"63":{"position":[[90,8],[228,9],[360,9],[519,10],[1499,9],[1646,9],[3035,8],[3355,9],[4450,9]]},"65":{"position":[[754,10],[810,9],[1582,9]]},"75":{"position":[[492,8]]},"77":{"position":[[556,8]]},"85":{"position":[[256,9]]},"87":{"position":[[2425,9]]},"95":{"position":[[662,9],[752,9],[906,9]]},"97":{"position":[[1619,8]]},"109":{"position":[[406,8],[1626,8],[1837,9],[2240,9],[2624,9]]},"111":{"position":[[54,8]]},"113":{"position":[[925,10],[1057,11],[1307,11]]},"115":{"position":[[1217,11],[1443,11],[2435,10]]},"124":{"position":[[209,10],[266,8]]},"128":{"position":[[55,8],[637,8],[1117,10],[1185,9],[1587,9],[1974,9],[2046,9],[2391,9]]},"131":{"position":[[69,11],[929,11]]},"133":{"position":[[393,11]]},"135":{"position":[[1428,8],[1864,9],[3222,9],[4369,9],[4463,8],[4636,8],[5132,9],[5553,9],[8637,8],[9150,9],[9656,9],[11879,8],[12323,9],[12615,9]]},"165":{"position":[[84,8],[156,9],[538,8],[841,8],[935,9]]},"169":{"position":[[51,8],[131,8]]},"171":{"position":[[665,9]]},"175":{"position":[[33,9]]},"198":{"position":[[266,8]]},"200":{"position":[[424,8]]},"214":{"position":[[248,8]]},"216":{"position":[[885,11],[1163,9],[1234,9]]},"218":{"position":[[1747,11],[2672,8]]},"228":{"position":[[1196,9],[1779,9]]},"231":{"position":[[177,9],[1290,8],[1401,10]]},"233":{"position":[[116,8],[232,9],[522,9]]},"237":{"position":[[2126,9],[2277,9]]},"239":{"position":[[265,9],[379,9],[608,9]]},"252":{"position":[[605,9],[695,9],[849,9]]},"270":{"position":[[219,10]]}}}],["generator[chatmessagetyp",{"_index":1429,"t":{"194":{"position":[[2031,26]]}}}],["get_embed",{"_index":1417,"t":{"194":{"position":[[1627,14],[2339,14]]}}}],["get_embeddings(self",{"_index":1430,"t":{"194":{"position":[[2080,20]]}}}],["get_sess",{"_index":789,"t":{"87":{"position":[[1240,12],[1449,11],[2307,11]]},"103":{"position":[[428,11],[498,11]]}}}],["get_tracer().start_as_current_span(\"span_nam",{"_index":634,"t":{"73":{"position":[[961,47]]}}}],["gf_security_admin_password=secret",{"_index":610,"t":{"71":{"position":[[1576,33]]}}}],["gf_users_allow_sign_up=fals",{"_index":613,"t":{"71":{"position":[[1672,28]]}}}],["giant'",{"_index":1466,"t":{"196":{"position":[[120,7]]}}}],["git",{"_index":1729,"t":{"250":{"position":[[221,3]]}}}],["github",{"_index":1644,"t":{"228":{"position":[[3440,7]]}}}],["give",{"_index":1126,"t":{"131":{"position":[[308,5]]}}}],["given",{"_index":155,"t":{"53":{"position":[[471,5]]},"99":{"position":[[4293,5]]}}}],["glm",{"_index":1010,"t":{"111":{"position":[[229,3]]},"156":{"position":[[3,3]]},"192":{"position":[[0,3],[316,4],[517,3]]}}}],["go",{"_index":1122,"t":{"131":{"position":[[259,2]]},"133":{"position":[[37,5]]},"150":{"position":[[3,2]]},"154":{"position":[[56,2]]},"156":{"position":[[66,2]]},"165":{"position":[[502,2]]},"192":{"position":[[63,2]]},"196":{"position":[[161,2]]},"204":{"position":[[0,2]]},"206":{"position":[[53,2]]},"216":{"position":[[1655,5]]},"243":{"position":[[2042,2]]}}}],["goal",{"_index":1549,"t":{"212":{"position":[[828,5]]}}}],["goe",{"_index":1269,"t":{"165":{"position":[[48,4]]},"237":{"position":[[489,4]]},"260":{"position":[[270,4]]}}}],["good",{"_index":758,"t":{"85":{"position":[[2392,4]]},"243":{"position":[[2479,4],[2834,4]]}}}],["googl",{"_index":1257,"t":{"152":{"position":[[24,6]]},"188":{"position":[[21,6]]},"196":{"position":[[76,6]]},"202":{"position":[[146,6],[1485,6]]}}}],["google_genai",{"_index":1366,"t":{"188":{"position":[[134,15]]},"202":{"position":[[1040,15]]}}}],["gpt",{"_index":490,"t":{"67":{"position":[[664,3],[1062,4]]},"115":{"position":[[540,3]]},"165":{"position":[[726,3],[745,3]]},"169":{"position":[[383,3],[394,3]]},"198":{"position":[[580,4]]},"200":{"position":[[1156,4]]},"202":{"position":[[116,3],[739,4],[950,4],[1455,3],[1708,3]]},"208":{"position":[[221,4]]},"256":{"position":[[181,3]]},"258":{"position":[[68,3]]}}}],["grafana",{"_index":602,"t":{"71":{"position":[[1285,7],[1336,7],[1477,8],[1550,7]]}}}],["grafana/grafana",{"_index":606,"t":{"71":{"position":[[1493,15]]}}}],["grafana_data",{"_index":615,"t":{"71":{"position":[[1776,13]]}}}],["grafana_data:/var/lib/grafana",{"_index":614,"t":{"71":{"position":[[1712,29]]}}}],["graph",{"_index":474,"t":{"65":{"position":[[1708,5],[1782,5]]}}}],["groq",{"_index":1456,"t":{"196":{"position":[[0,4],[167,4],[289,5],[307,4],[465,7],[550,4],[599,4]]}}}],["grpc",{"_index":546,"t":{"69":{"position":[[459,4],[971,4],[1184,5]]}}}],["guid",{"_index":480,"t":{"67":{"position":[[167,6]]},"131":{"position":[[41,5],[901,5]]},"133":{"position":[[365,5],[1362,5]]},"137":{"position":[[93,6],[282,5]]},"214":{"position":[[275,5],[361,5],[451,5],[567,5]]},"264":{"position":[[1588,5]]},"268":{"position":[[283,5]]}}}],["handcraft",{"_index":1241,"t":{"137":{"position":[[235,11]]},"139":{"position":[[12,11]]},"141":{"position":[[12,11],[229,11],[370,11]]}}}],["handcrafted_exp_1.yaml",{"_index":1245,"t":{"139":{"position":[[425,23]]}}}],["handcrafted_exp_{exp_id",{"_index":1244,"t":{"139":{"position":[[342,25]]}}}],["handl",{"_index":954,"t":{"103":{"position":[[1657,7],[1745,7]]},"128":{"position":[[220,6]]},"186":{"position":[[725,7]]},"214":{"position":[[741,6]]}}}],["handle(self",{"_index":957,"t":{"103":{"position":[[2031,12]]}}}],["handler",{"_index":926,"t":{"99":{"position":[[3618,7]]},"103":{"position":[[1422,8],[1766,8],[1847,8],[1955,7],[2217,7]]},"264":{"position":[[2272,7]]}}}],["happen",{"_index":1277,"t":{"167":{"position":[[24,7]]},"175":{"position":[[179,8]]},"181":{"position":[[32,7]]},"210":{"position":[[464,8]]}}}],["hard",{"_index":1121,"t":{"131":{"position":[[224,4],[482,4]]}}}],["harm",{"_index":662,"t":{"77":{"position":[[490,7],[565,7]]}}}],["have",{"_index":728,"t":{"85":{"position":[[831,6]]},"198":{"position":[[919,6]]},"216":{"position":[[479,6]]}}}],["hear",{"_index":1249,"t":{"139":{"position":[[702,4],[737,4]]}}}],["hello",{"_index":1250,"t":{"139":{"position":[[707,8]]},"194":{"position":[[4302,7]]},"233":{"position":[[307,7]]},"264":{"position":[[350,7],[1037,7],[1152,7]]}}}],["help",{"_index":803,"t":{"87":{"position":[[2128,4]]},"99":{"position":[[3205,4]]},"103":{"position":[[2134,4]]},"124":{"position":[[241,4]]},"177":{"position":[[41,4]]},"216":{"position":[[1627,4],[2044,4],[2111,4]]},"220":{"position":[[328,4]]},"237":{"position":[[1054,4],[1163,5],[1316,5],[1529,6],[1547,4],[1995,5],[2011,4]]},"264":{"position":[[1306,4]]}}}],["helper",{"_index":924,"t":{"99":{"position":[[3390,6]]}}}],["here",{"_index":419,"t":{"63":{"position":[[5741,4],[6083,4],[6417,4]]},"65":{"position":[[1765,4]]},"109":{"position":[[1168,4]]},"113":{"position":[[135,4]]},"131":{"position":[[638,4]]},"154":{"position":[[138,4]]},"156":{"position":[[151,5]]},"192":{"position":[[148,5]]},"194":{"position":[[2750,4],[3134,4],[3565,5]]},"196":{"position":[[221,5],[253,5]]},"200":{"position":[[256,4],[415,5]]},"206":{"position":[[135,4]]},"208":{"position":[[350,5]]},"218":{"position":[[562,4]]},"228":{"position":[[2367,4],[2702,4],[3029,4]]},"243":{"position":[[219,4]]},"247":{"position":[[1196,4]]}}}],["hide",{"_index":619,"t":{"73":{"position":[[252,4]]}}}],["hierarchi",{"_index":475,"t":{"65":{"position":[[1741,9]]}}}],["highest",{"_index":292,"t":{"59":{"position":[[986,7]]},"63":{"position":[[2643,7]]}}}],["highlight",{"_index":1581,"t":{"216":{"position":[[307,11]]}}}],["histogram",{"_index":214,"t":{"53":{"position":[[2524,9]]}}}],["histori",{"_index":128,"t":{"53":{"position":[[42,7],[258,7],[328,8],[395,7],[557,8],[810,7],[847,7],[967,8],[1156,7],[1267,7],[1496,8],[1572,8],[1604,7],[1859,7],[1905,7],[3032,8],[3078,7],[3143,7],[3433,7],[3540,7]]},"55":{"position":[[69,7],[210,7]]},"107":{"position":[[428,7],[672,7]]},"113":{"position":[[771,8]]},"115":{"position":[[1884,7],[1994,7],[2202,7],[2419,7]]},"131":{"position":[[716,7]]},"133":{"position":[[110,7],[581,7],[624,7],[1142,8]]},"135":{"position":[[6362,8],[6462,7]]},"210":{"position":[[415,8]]},"212":{"position":[[89,8],[851,7],[971,7]]},"237":{"position":[[1581,7],[2044,7]]}}}],["home/data.csv",{"_index":1095,"t":{"126":{"position":[[558,14],[628,14],[730,14],[1322,14],[1476,14],[2236,16],[2404,14],[2732,14],[2886,14]]}}}],["home/taskweaver/sample.csv",{"_index":1662,"t":{"237":{"position":[[1778,27]]}}}],["host",{"_index":663,"t":{"77":{"position":[[510,4]]},"79":{"position":[[381,4],[440,4]]},"83":{"position":[[294,4],[547,4]]},"85":{"position":[[698,4],[1900,4],[2216,5]]},"167":{"position":[[431,4]]},"272":{"position":[[283,4],[357,4]]},"274":{"position":[[275,4],[349,4]]}}}],["host'",{"_index":739,"t":{"85":{"position":[[1558,6]]}}}],["http",{"_index":561,"t":{"69":{"position":[[1213,5]]}}}],["http://0.0.0.0:8000",{"_index":1502,"t":{"200":{"position":[[916,20],[1093,22]]}}}],["http://127.0.0.1:4317",{"_index":496,"t":{"67":{"position":[[1003,24],[2347,22]]}}}],["http://localhost:11434",{"_index":1523,"t":{"204":{"position":[[603,23],[768,25]]}}}],["http://localhost:16686",{"_index":523,"t":{"67":{"position":[[2047,23]]}}}],["http://localhost:8000",{"_index":1746,"t":{"262":{"position":[[911,21]]},"270":{"position":[[1369,21]]}}}],["http://localhost:9090",{"_index":522,"t":{"67":{"position":[[1998,21]]}}}],["https://.yaml",{"_index":1312,"t":{"173":{"position":[[481,12]]}}}],["nat",{"_index":726,"t":{"85":{"position":[[598,4]]}}}],["nativ",{"_index":1381,"t":{"190":{"position":[[670,6]]}}}],["natur",{"_index":11,"t":{"41":{"position":[[113,7],[317,7]]},"109":{"position":[[681,7]]},"243":{"position":[[2564,7],[2606,7]]}}}],["nb",{"_index":1172,"t":{"135":{"position":[[2697,3],[4055,3]]}}}],["necessari",{"_index":842,"t":{"95":{"position":[[239,9]]},"194":{"position":[[328,9]]},"200":{"position":[[531,9]]},"237":{"position":[[186,9]]},"254":{"position":[[77,9]]},"262":{"position":[[432,9]]}}}],["need",{"_index":20,"t":{"41":{"position":[[220,6]]},"55":{"position":[[237,4]]},"63":{"position":[[53,4],[647,4]]},"67":{"position":[[55,4],[406,4],[1081,4],[1278,4],[2223,4]]},"73":{"position":[[121,4],[906,4],[1039,4]]},"75":{"position":[[248,4]]},"79":{"position":[[42,4]]},"81":{"position":[[307,4],[822,4],[1238,4]]},"83":{"position":[[170,5],[631,5],[842,5],[917,5]]},"85":{"position":[[2461,4]]},"97":{"position":[[1664,5]]},"99":{"position":[[945,4],[3699,4],[4340,4]]},"115":{"position":[[3223,4],[3441,4]]},"133":{"position":[[180,4],[1069,5]]},"139":{"position":[[40,4]]},"141":{"position":[[332,4]]},"165":{"position":[[765,4],[1083,5]]},"171":{"position":[[969,4]]},"177":{"position":[[595,4],[1009,4],[1337,4]]},"190":{"position":[[517,4],[703,4],[727,4]]},"194":{"position":[[2208,4],[2381,4]]},"202":{"position":[[274,4],[379,4],[403,4]]},"212":{"position":[[522,4],[909,5]]},"214":{"position":[[89,4],[342,5],[641,7],[732,5],[894,4],[2235,4]]},"224":{"position":[[1424,4]]},"226":{"position":[[9,4]]},"237":{"position":[[2243,4]]},"243":{"position":[[20,5],[2034,4]]},"252":{"position":[[34,4]]},"254":{"position":[[31,4],[195,4]]},"258":{"position":[[202,4]]},"262":{"position":[[243,4]]},"264":{"position":[[475,4],[2036,4],[2097,4]]},"268":{"position":[[4,4]]}}}],["network",{"_index":712,"t":{"85":{"position":[[102,8],[468,7],[567,7],[652,8],[778,8],[818,7],[942,7],[1005,7],[1243,7],[1441,8],[1483,7],[2083,8],[2545,7]]}}}],["network'",{"_index":745,"t":{"85":{"position":[[1671,9],[2324,9]]}}}],["new",{"_index":174,"t":{"53":{"position":[[1017,3]]},"63":{"position":[[282,3]]},"81":{"position":[[1165,3],[1286,3]]},"87":{"position":[[1337,3],[1541,3]]},"99":{"position":[[685,3],[3492,3],[4120,3],[4145,3],[4400,3],[4598,3]]},"103":{"position":[[82,3],[390,3],[527,3]]},"133":{"position":[[413,3],[740,3],[849,3],[982,3]]},"135":{"position":[[8,3]]},"171":{"position":[[1134,3]]},"184":{"position":[[65,3]]},"186":{"position":[[121,3]]},"194":{"position":[[158,3],[524,3],[1505,3]]},"198":{"position":[[736,3]]},"200":{"position":[[1419,3]]},"231":{"position":[[933,3]]},"237":{"position":[[1922,3]]},"243":{"position":[[661,3],[984,3],[2444,3]]},"247":{"position":[[1460,3]]}}}],["newli",{"_index":309,"t":{"59":{"position":[[1366,5]]},"247":{"position":[[2054,5]]}}}],["next",{"_index":190,"t":{"53":{"position":[[1585,4]]},"67":{"position":[[1072,5]]},"97":{"position":[[1498,4],[2034,4]]},"131":{"position":[[383,4]]},"133":{"position":[[1151,4]]},"226":{"position":[[0,5]]},"243":{"position":[[2951,4]]}}}],["nightli",{"_index":1501,"t":{"200":{"position":[[793,8]]}}}],["non",{"_index":632,"t":{"73":{"position":[[821,3]]},"135":{"position":[[213,3],[6717,3],[6788,3]]},"247":{"position":[[3606,3]]}}}],["none",{"_index":378,"t":{"63":{"position":[[3295,4]]},"87":{"position":[[299,5],[337,5],[378,5],[404,5],[1287,5],[1705,5]]},"91":{"position":[[495,4]]},"99":{"position":[[349,5]]},"103":{"position":[[758,5],[1246,5],[1323,5],[2369,5]]},"109":{"position":[[1766,4]]},"115":{"position":[[314,4]]},"128":{"position":[[1704,5],[1843,5],[2242,4],[2667,4]]},"135":{"position":[[1730,4],[4998,4],[8994,4],[12167,4]]},"194":{"position":[[815,5],[1077,4],[1271,4],[1472,4],[1906,5],[1940,5],[1971,5],[2005,5],[2058,5],[2064,6],[2852,5]]},"228":{"position":[[1136,4]]}}}],["note",{"_index":234,"t":{"53":{"position":[[3415,4]]},"63":{"position":[[6000,4],[6342,4],[6676,4]]},"99":{"position":[[3920,4]]},"109":{"position":[[1030,4]]},"133":{"position":[[520,4]]},"175":{"position":[[809,4]]},"192":{"position":[[432,5]]},"194":{"position":[[2148,5]]},"196":{"position":[[513,5]]},"204":{"position":[[883,5]]},"206":{"position":[[359,5]]},"224":{"position":[[855,4],[1361,4]]},"247":{"position":[[2799,4],[3562,4]]},"262":{"position":[[15,4],[566,4]]},"266":{"position":[[106,4]]}}}],["notebook",{"_index":1335,"t":{"179":{"position":[[407,9]]}}}],["notic",{"_index":1034,"t":{"113":{"position":[[589,6]]}}}],["now",{"_index":423,"t":{"65":{"position":[[11,3]]},"67":{"position":[[447,3]]},"79":{"position":[[1030,3]]},"85":{"position":[[1219,4]]},"133":{"position":[[542,3]]},"173":{"position":[[178,4]]},"177":{"position":[[73,4]]},"262":{"position":[[975,3]]}}}],["np",{"_index":992,"t":{"109":{"position":[[1693,2],[2161,2],[2545,2]]}}}],["np.random.rand",{"_index":223,"t":{"53":{"position":[[2781,17]]}}}],["np.random.rand(10",{"_index":994,"t":{"109":{"position":[[1713,18],[2181,18],[2565,18]]}}}],["null",{"_index":1049,"t":{"115":{"position":[[281,4],[298,4],[322,7],[660,4],[894,5],[3262,5]]},"184":{"position":[[685,5]]},"208":{"position":[[564,5]]}}}],["number",{"_index":197,"t":{"53":{"position":[[2039,8],[2128,7],[2162,8],[2238,7],[2295,8],[2409,8],[2497,7],[2569,7],[2757,7],[2906,7],[2940,8]]},"57":{"position":[[183,6],[294,6]]},"61":{"position":[[161,6]]},"65":{"position":[[441,6]]},"67":{"position":[[348,6]]},"109":{"position":[[49,6],[125,6],[169,7],[1645,7]]},"115":{"position":[[2498,6],[2595,6],[2794,6],[2864,6]]},"214":{"position":[[1102,6]]}}}],["numer",{"_index":1144,"t":{"135":{"position":[[217,9],[6721,7],[6792,7],[6846,7]]},"243":{"position":[[954,7],[1407,9]]},"247":{"position":[[1936,7]]}}}],["numeric_onli",{"_index":1161,"t":{"135":{"position":[[2182,13],[3540,13]]}}}],["numeric_only=tru",{"_index":1183,"t":{"135":{"position":[[4947,18],[5488,18]]}}}],["numpi",{"_index":83,"t":{"49":{"position":[[485,8]]},"53":{"position":[[2695,6],[2837,6]]},"109":{"position":[[1684,5],[2152,5],[2536,5]]},"115":{"position":[[1254,8]]}}}],["object",{"_index":226,"t":{"53":{"position":[[2964,6]]},"89":{"position":[[246,7]]},"99":{"position":[[3125,7],[3371,7],[3420,7],[3442,6],[3476,6],[3555,6]]},"169":{"position":[[147,6]]},"233":{"position":[[132,6],[222,6],[334,7]]},"264":{"position":[[506,6],[536,6],[709,7],[883,6]]}}}],["observ",{"_index":428,"t":{"65":{"position":[[97,13]]},"158":{"position":[[44,14]]},"198":{"position":[[227,14],[896,14]]}}}],["obtain",{"_index":908,"t":{"99":{"position":[[2508,6]]},"245":{"position":[[429,8]]},"270":{"position":[[527,6]]}}}],["offic",{"_index":1459,"t":{"196":{"position":[[44,7]]}}}],["offici",{"_index":1358,"t":{"186":{"position":[[996,8],[1813,8]]},"268":{"position":[[142,8],[236,8]]}}}],["older",{"_index":1078,"t":{"115":{"position":[[3188,5]]},"258":{"position":[[169,5]]}}}],["ollama",{"_index":1008,"t":{"111":{"position":[[200,6],[452,6]]},"150":{"position":[[9,6]]},"204":{"position":[[6,6],[145,6],[192,6],[222,6],[264,6],[345,6],[389,6],[558,7],[845,9],[928,6],[981,6]]}}}],["on",{"_index":141,"t":{"53":{"position":[[225,3],[3402,3]]},"59":{"position":[[1129,3],[1304,5],[1416,5]]},"63":{"position":[[3898,4],[4993,4]]},"65":{"position":[[61,3]]},"71":{"position":[[415,3],[743,3]]},"83":{"position":[[461,3]]},"124":{"position":[[501,3],[566,3],[615,3],[678,3]]},"126":{"position":[[300,3]]},"181":{"position":[[120,3]]},"198":{"position":[[106,3]]},"202":{"position":[[284,3]]},"204":{"position":[[1018,3]]},"212":{"position":[[34,3]]},"214":{"position":[[116,3],[834,3],[2065,3],[2707,5],[2725,3],[2805,3],[2890,4]]},"216":{"position":[[2091,3]]},"218":{"position":[[174,3]]},"239":{"position":[[82,3],[289,3]]},"247":{"position":[[2923,3]]},"260":{"position":[[994,3]]},"266":{"position":[[74,3],[127,3],[401,3]]},"270":{"position":[[48,3]]}}}],["onboard",{"_index":1494,"t":{"200":{"position":[[231,9]]}}}],["onc",{"_index":183,"t":{"53":{"position":[[1253,4]]},"79":{"position":[[573,4]]},"99":{"position":[[3536,4]]},"270":{"position":[[742,4]]}}}],["one:1.54",{"_index":549,"t":{"69":{"position":[[553,8]]}}}],["one:latest",{"_index":1770,"t":{"270":{"position":[[105,11],[290,10],[607,10],[728,10],[996,10],[1304,10]]},"272":{"position":[[503,10]]},"274":{"position":[[485,10]]}}}],["onlin",{"_index":1291,"t":{"171":{"position":[[356,6],[1496,6]]},"173":{"position":[[725,6]]}}}],["open",{"_index":97,"t":{"49":{"position":[[739,7]]},"65":{"position":[[85,4]]},"69":{"position":[[39,4]]},"75":{"position":[[106,4]]},"77":{"position":[[711,4]]},"81":{"position":[[422,4]]},"115":{"position":[[1509,7]]},"198":{"position":[[729,4]]},"200":{"position":[[1412,4]]},"204":{"position":[[358,4]]},"262":{"position":[[172,4],[889,4],[947,4]]},"270":{"position":[[478,4]]}}}],["open(\"abc.pi",{"_index":53,"t":{"47":{"position":[[159,14]]}}}],["open(file_path",{"_index":1105,"t":{"128":{"position":[[788,15]]}}}],["openai",{"_index":488,"t":{"67":{"position":[[486,6]]},"111":{"position":[[188,6],[399,6]]},"113":{"position":[[50,6],[203,6]]},"115":{"position":[[579,6],[648,6],[694,6],[715,6],[732,6],[774,6],[852,6],[3137,6],[3205,6]]},"144":{"position":[[16,6]]},"184":{"position":[[27,6],[436,6]]},"186":{"position":[[27,6],[482,6]]},"190":{"position":[[502,7]]},"194":{"position":[[2931,10],[3252,10]]},"198":{"position":[[87,6],[1117,7]]},"200":{"position":[[106,7],[272,6]]},"202":{"position":[[109,6],[851,9],[1448,6]]},"208":{"position":[[21,6]]},"235":{"position":[[53,6],[131,6]]},"254":{"position":[[52,6],[183,7]]},"256":{"position":[[199,7]]},"258":{"position":[[96,6],[186,6]]}}}],["openai/aoai",{"_index":1253,"t":{"146":{"position":[[16,11]]}}}],["opentelemetri",{"_index":425,"t":{"65":{"position":[[37,14]]},"67":{"position":[[92,14],[124,13],[215,13],[234,13],[253,13],[282,13],[1398,13],[1426,13],[2261,13]]},"69":{"position":[[927,13],[1563,13],[1974,13]]},"71":{"position":[[262,13]]},"73":{"position":[[49,13],[209,13],[276,13],[492,13]]},"216":{"position":[[1609,14]]}}}],["oper",{"_index":22,"t":{"41":{"position":[[253,7]]},"81":{"position":[[985,9]]},"214":{"position":[[2513,10]]}}}],["opt",{"_index":644,"t":{"75":{"position":[[220,3]]},"85":{"position":[[1022,3]]},"167":{"position":[[232,3]]}}}],["option",{"_index":158,"t":{"53":{"position":[[579,6]]},"99":{"position":[[3064,8]]},"113":{"position":[[1339,8]]},"115":{"position":[[3081,7]]},"186":{"position":[[583,10]]},"194":{"position":[[2364,9]]},"202":{"position":[[1223,8]]},"218":{"position":[[2068,9]]},"247":{"position":[[612,9]]},"250":{"position":[[63,10]]},"258":{"position":[[300,7]]}}}],["optional[ani",{"_index":825,"t":{"91":{"position":[[479,13]]}}}],["optional[bool",{"_index":778,"t":{"87":{"position":[[320,14]]}}}],["optional[dict[str",{"_index":779,"t":{"87":{"position":[[351,18]]}}}],["optional[float",{"_index":1424,"t":{"194":{"position":[[1888,15],[1953,15]]}}}],["optional[int",{"_index":1426,"t":{"194":{"position":[[1924,13]]}}}],["optional[list[dict[literal[\"nam",{"_index":953,"t":{"103":{"position":[[1259,34]]}}}],["optional[list[str",{"_index":1428,"t":{"194":{"position":[[1983,19]]}}}],["optional[roleentri",{"_index":871,"t":{"99":{"position":[[327,19]]}}}],["optional[sessioneventhandl",{"_index":952,"t":{"103":{"position":[[1214,29]]}}}],["optional[str",{"_index":776,"t":{"87":{"position":[[283,13],[1271,13]]}}}],["optl",{"_index":535,"t":{"69":{"position":[[255,4],[814,4],[1852,4],[1914,6]]}}}],["opu",{"_index":1375,"t":{"190":{"position":[[277,5]]}}}],["orchestr",{"_index":1085,"t":{"124":{"position":[[283,11]]},"128":{"position":[[72,11]]},"212":{"position":[[116,11],[429,13],[796,11]]},"216":{"position":[[661,11],[1887,11]]},"239":{"position":[[36,12]]},"243":{"position":[[82,13]]}}}],["order",{"_index":161,"t":{"53":{"position":[[642,5],[2260,5]]},"139":{"position":[[499,5]]},"214":{"position":[[1137,5]]}}}],["os",{"_index":52,"t":{"47":{"position":[[149,2]]},"51":{"position":[[219,2],[311,2]]},"79":{"position":[[768,2]]},"272":{"position":[[288,2],[362,2]]},"274":{"position":[[280,2],[354,2]]}}}],["otel/opentelemetri",{"_index":537,"t":{"69":{"position":[[278,18]]}}}],["other",{"_index":852,"t":{"97":{"position":[[352,7]]}}}],["otherwis",{"_index":882,"t":{"99":{"position":[[1039,9]]},"128":{"position":[[2555,10]]},"135":{"position":[[4497,10]]},"171":{"position":[[1247,10]]},"175":{"position":[[904,10]]},"214":{"position":[[1960,10]]},"218":{"position":[[2766,10]]},"243":{"position":[[768,10]]},"247":{"position":[[1567,10]]}}}],["otl/opentelemetri",{"_index":556,"t":{"69":{"position":[[879,17]]}}}],["otlp",{"_index":485,"t":{"67":{"position":[[276,5],[975,7]]},"69":{"position":[[1167,5],[1280,5],[1406,6],[1424,6],[1451,6],[1499,6],[1638,4]]}}}],["out",{"_index":305,"t":{"59":{"position":[[1289,3]]},"167":{"position":[[236,3]]},"212":{"position":[[366,3]]},"214":{"position":[[2397,3]]}}}],["outgo",{"_index":743,"t":{"85":{"position":[[1638,8],[2291,8]]}}}],["outlin",{"_index":1047,"t":{"113":{"position":[[1371,9]]}}}],["output",{"_index":590,"t":{"71":{"position":[[804,7],[875,6]]},"85":{"position":[[1303,6]]},"99":{"position":[[4540,6]]},"126":{"position":[[489,6]]},"165":{"position":[[97,7],[551,7],[854,6]]},"169":{"position":[[64,6]]},"173":{"position":[[299,6]]},"175":{"position":[[213,6],[613,6]]},"177":{"position":[[806,7]]},"190":{"position":[[533,7]]},"224":{"position":[[945,6]]},"226":{"position":[[523,6]]},"231":{"position":[[836,6]]}}}],["output_s",{"_index":469,"t":{"65":{"position":[[1536,12]]}}}],["overrid",{"_index":788,"t":{"87":{"position":[[1106,8]]}}}],["overview",{"_index":265,"t":{"59":{"position":[[13,8]]},"115":{"position":[[3,8]]}}}],["overwrit",{"_index":1573,"t":{"214":{"position":[[2867,9]]}}}],["p",{"_index":1657,"t":{"237":{"position":[[315,1],[331,1]]},"260":{"position":[[91,1],[107,1]]},"270":{"position":[[1208,1]]}}}],["packag",{"_index":478,"t":{"67":{"position":[[71,8],[325,9],[435,8],[522,9]]},"81":{"position":[[84,8],[506,8],[619,7],[701,8]]},"83":{"position":[[774,8],[857,7],[934,7]]},"99":{"position":[[447,7]]},"175":{"position":[[799,9]]},"186":{"position":[[793,8]]},"192":{"position":[[175,8]]},"196":{"position":[[280,8]]},"200":{"position":[[468,7]]},"206":{"position":[[175,8]]},"224":{"position":[[1400,7]]},"245":{"position":[[71,9]]},"262":{"position":[[479,7]]}}}],["packages\\pandas\\core\\frame.py:11136",{"_index":1176,"t":{"135":{"position":[[2902,35],[4260,35]]}}}],["packages\\pandas\\core\\frame.py:11204",{"_index":1167,"t":{"135":{"position":[[2508,35],[3866,35]]}}}],["packages\\pandas\\core\\frame.py:11335",{"_index":1158,"t":{"135":{"position":[[2100,35],[3458,35]]}}}],["packages\\pandas\\core\\generic.py:11941",{"_index":1164,"t":{"135":{"position":[[2380,37],[3738,37]]}}}],["packages\\pandas\\core\\generic.py:11984",{"_index":1162,"t":{"135":{"position":[[2255,37],[3613,37]]}}}],["packages\\pandas\\core\\internals\\blocks.py:377",{"_index":1174,"t":{"135":{"position":[[2769,44],[4127,44]]}}}],["packages\\pandas\\core\\internals\\managers.py:1459",{"_index":1170,"t":{"135":{"position":[[2637,47],[3995,47]]}}}],["page",{"_index":1479,"t":{"198":{"position":[[378,5]]},"200":{"position":[[1006,5]]}}}],["pair",{"_index":964,"t":{"103":{"position":[[2746,4]]}}}],["panda",{"_index":81,"t":{"49":{"position":[[460,10]]},"115":{"position":[[1229,10]]},"135":{"position":[[1545,7],[1575,6],[3053,6],[4753,7],[4818,6],[5359,6],[8733,5],[8792,6],[8882,6],[9530,6]]},"216":{"position":[[449,6]]},"243":{"position":[[308,6]]}}}],["pandas.api.typ",{"_index":1676,"t":{"243":{"position":[[326,16]]}}}],["pandas.demo_data.csv",{"_index":1206,"t":{"135":{"position":[[8706,20]]}}}],["paper",{"_index":1760,"t":{"264":{"position":[[1462,7]]}}}],["paper_summari",{"_index":373,"t":{"63":{"position":[[2880,16],[2987,16]]}}}],["param",{"_index":781,"t":{"87":{"position":[[445,6],[484,6],[546,6],[580,6],[1384,6]]},"103":{"position":[[792,6],[827,6],[860,6],[899,6],[926,6],[955,6],[989,6],[1361,6],[1390,6],[1431,6],[2594,6]]},"198":{"position":[[1106,5]]},"200":{"position":[[811,6]]},"243":{"position":[[779,6],[826,6],[894,6]]}}}],["paramet",{"_index":75,"t":{"49":{"position":[[339,9]]},"53":{"position":[[1811,10]]},"55":{"position":[[34,10]]},"75":{"position":[[305,9]]},"79":{"position":[[88,9],[151,9],[507,9]]},"87":{"position":[[637,9],[703,9],[837,9],[984,9],[1091,9],[1512,9]]},"103":{"position":[[1548,9],[1628,9],[2290,9]]},"115":{"position":[[413,10],[451,9]]},"133":{"position":[[253,9],[1548,9]]},"167":{"position":[[309,9]]},"171":{"position":[[958,10]]},"173":{"position":[[917,10]]},"177":{"position":[[925,9],[1083,10],[1204,9]]},"190":{"position":[[487,9]]},"198":{"position":[[1032,10]]},"204":{"position":[[453,9]]},"218":{"position":[[995,11],[1399,11]]},"226":{"position":[[208,10],[617,11]]},"247":{"position":[[477,12],[523,9],[673,10],[916,10],[1578,11],[3059,9],[3153,10],[3204,10],[3324,10]]},"254":{"position":[[221,10]]}}}],["parameter'",{"_index":1709,"t":{"247":{"position":[[562,11]]}}}],["parent",{"_index":902,"t":{"99":{"position":[[2273,6]]},"243":{"position":[[2235,6]]}}}],["pars",{"_index":119,"t":{"51":{"position":[[436,6]]},"93":{"position":[[1112,6]]},"169":{"position":[[269,7]]}}}],["part",{"_index":107,"t":{"51":{"position":[[44,6]]},"53":{"position":[[466,4],[540,4],[875,6],[907,4],[1131,4]]},"65":{"position":[[662,6]]},"97":{"position":[[1764,4]]},"202":{"position":[[197,5]]},"214":{"position":[[2358,4]]},"243":{"position":[[148,6]]},"247":{"position":[[41,6]]}}}],["pass",{"_index":66,"t":{"47":{"position":[[431,4]]},"177":{"position":[[1263,4]]},"194":{"position":[[1789,4],[2071,4],[2143,4]]},"264":{"position":[[2147,4]]}}}],["password",{"_index":612,"t":{"71":{"position":[[1644,8]]}}}],["past",{"_index":858,"t":{"97":{"position":[[1380,4]]},"218":{"position":[[383,5]]}}}],["path",{"_index":456,"t":{"65":{"position":[[977,4],[1026,4]]},"87":{"position":[[654,4]]},"97":{"position":[[1196,5]]},"99":{"position":[[1559,4]]},"103":{"position":[[1294,7]]},"186":{"position":[[1254,5]]},"237":{"position":[[340,4],[1760,5],[2264,5],[2330,5]]},"260":{"position":[[116,4]]}}}],["path/to/project",{"_index":806,"t":{"87":{"position":[[2251,19]]}}}],["path/to/sqlite_a.db",{"_index":1607,"t":{"218":{"position":[[1060,20]]}}}],["path/to/sqlite_b.db",{"_index":1610,"t":{"218":{"position":[[1464,20]]}}}],["pd",{"_index":1147,"t":{"135":{"position":[[1585,2],[3063,2],[4828,2],[5369,2],[8802,2],[8892,2],[9540,2]]},"243":{"position":[[318,2]]}}}],["pd.datafram",{"_index":1679,"t":{"243":{"position":[[499,13]]}}}],["pd.read_csv(data_fil",{"_index":1209,"t":{"135":{"position":[[8846,20]]}}}],["pd.read_csv(data_file_path",{"_index":1150,"t":{"135":{"position":[[1640,27],[3118,27],[4883,27],[5424,27],[8942,27],[9590,27]]}}}],["pd.to_datetime(df[time_col_nam",{"_index":1681,"t":{"243":{"position":[[1161,33]]}}}],["peac",{"_index":1251,"t":{"139":{"position":[[722,7]]}}}],["perform",{"_index":1086,"t":{"124":{"position":[[306,7]]},"128":{"position":[[95,7]]},"135":{"position":[[1776,10],[5044,10],[9040,10],[12213,10]]},"204":{"position":[[496,11]]},"245":{"position":[[397,9]]}}}],["peripher",{"_index":1542,"t":{"212":{"position":[[588,10]]},"214":{"position":[[173,10]]}}}],["peripheri",{"_index":1537,"t":{"212":{"position":[[218,10]]}}}],["persist",{"_index":503,"t":{"67":{"position":[[1237,10]]},"245":{"position":[[165,7]]}}}],["phase",{"_index":308,"t":{"59":{"position":[[1359,6]]},"65":{"position":[[682,6],[779,6],[873,6]]}}}],["ping",{"_index":1088,"t":{"124":{"position":[[743,4],[785,4]]}}}],["pip",{"_index":690,"t":{"81":{"position":[[726,3]]},"186":{"position":[[556,3]]},"192":{"position":[[195,3]]},"196":{"position":[[295,3]]},"200":{"position":[[476,3]]},"206":{"position":[[195,3]]},"224":{"position":[[1448,3]]},"250":{"position":[[316,3]]},"262":{"position":[[490,3]]}}}],["pipelin",{"_index":569,"t":{"69":{"position":[[1376,10]]}}}],["placehold",{"_index":1506,"t":{"200":{"position":[[1224,11]]}}}],["placeholderembeddingservic",{"_index":1449,"t":{"194":{"position":[[3411,28],[3616,29]]}}}],["plan",{"_index":274,"t":{"59":{"position":[[214,8]]},"63":{"position":[[2160,6],[5535,6]]},"65":{"position":[[673,8]]},"124":{"position":[[98,8],[163,4]]},"126":{"position":[[2,8],[37,4],[423,5],[1031,4],[1778,4],[2046,5],[2539,5],[2580,5],[2622,4]]},"131":{"position":[[51,8],[911,8]]},"133":{"position":[[375,8]]},"135":{"position":[[974,6],[5918,6],[8160,6],[10291,6],[11329,6],[13084,6]]},"165":{"position":[[168,4],[206,4],[268,4],[1025,8],[1093,8]]},"169":{"position":[[197,5]]},"212":{"position":[[320,8]]},"214":{"position":[[3081,4]]},"216":{"position":[[58,8],[867,8]]},"228":{"position":[[651,6],[2202,6]]},"243":{"position":[[2942,4]]},"264":{"position":[[1844,7]]}}}],["planer",{"_index":1270,"t":{"165":{"position":[[471,6]]}}}],["planner",{"_index":228,"t":{"53":{"position":[[3166,7],[3581,7]]},"59":{"position":[[238,8],[624,7]]},"63":{"position":[[1562,7],[1865,7],[2395,8],[2709,7],[4274,9],[5361,7],[6067,8]]},"65":{"position":[[201,8],[699,7],[890,7]]},"93":{"position":[[1194,7]]},"95":{"position":[[523,7]]},"97":{"position":[[340,8]]},"99":{"position":[[105,7],[3885,7],[4036,11]]},"107":{"position":[[47,7],[149,7],[321,7],[683,8],[772,8],[819,8]]},"109":{"position":[[88,7],[311,11],[769,7],[814,8],[1086,8],[2080,9]]},"115":{"position":[[1779,7],[1896,8],[2005,8],[2634,7],[2722,11]]},"124":{"position":[[47,7],[148,7],[437,8],[815,7],[870,7]]},"126":{"position":[[266,8],[352,7],[461,7],[668,7],[794,7],[1426,7],[1552,7],[2193,8],[2330,7],[2688,8],[2835,7]]},"128":{"position":[[148,8],[379,7],[569,7],[1268,7],[1404,8]]},"133":{"position":[[311,7],[1289,7]]},"135":{"position":[[779,7],[5709,7],[5723,7],[7852,7],[9965,7],[9979,7],[11021,7],[12758,7],[12772,7]]},"165":{"position":[[135,8],[148,7],[316,8],[329,7],[443,8],[923,7]]},"171":{"position":[[737,8]]},"202":{"position":[[130,7],[1469,7],[1753,7]]},"212":{"position":[[168,7],[262,8],[279,7],[609,7]]},"214":{"position":[[208,7],[334,7],[429,7],[536,7],[3042,7]]},"216":{"position":[[1875,7]]},"218":{"position":[[2593,7],[2781,7]]},"220":{"position":[[337,7]]},"228":{"position":[[910,8],[1580,9],[2686,8]]},"231":{"position":[[1048,11]]},"252":{"position":[[466,7]]},"264":{"position":[[1211,10],[1634,10]]},"270":{"position":[[143,7]]}}}],["planner'",{"_index":466,"t":{"65":{"position":[[1398,9]]},"99":{"position":[[1709,9]]},"126":{"position":[[2095,9]]},"169":{"position":[[93,9]]},"212":{"position":[[722,9]]}}}],["planner.example_base_path",{"_index":971,"t":{"107":{"position":[[0,26]]},"115":{"position":[[1733,25]]}}}],["planner.llm_alia",{"_index":979,"t":{"107":{"position":[[720,18]]},"202":{"position":[[1528,20]]}}}],["planner.prompt_compress",{"_index":245,"t":{"55":{"position":[[249,26]]},"107":{"position":[[252,27]]},"115":{"position":[[1828,26],[3307,26]]}}}],["planner.use_experi",{"_index":977,"t":{"107":{"position":[[588,23]]},"115":{"position":[[1911,22]]},"133":{"position":[[196,22]]},"141":{"position":[[96,22]]}}}],["planner][plan",{"_index":1202,"t":{"135":{"position":[[8169,15],[10300,15]]}}}],["planner_exampl",{"_index":844,"t":{"95":{"position":[[482,18]]},"252":{"position":[[425,18]]}}}],["platform",{"_index":1474,"t":{"198":{"position":[[40,8]]}}}],["platform:xbox",{"_index":406,"t":{"63":{"position":[[3883,14],[4978,14]]}}}],["play",{"_index":1596,"t":{"216":{"position":[[2128,4]]}}}],["playground",{"_index":1736,"t":{"262":{"position":[[42,10]]}}}],["playground/ui",{"_index":1743,"t":{"262":{"position":[[809,14],[847,14]]}}}],["pleas",{"_index":35,"t":{"44":{"position":[[146,6]]},"59":{"position":[[559,6]]},"63":{"position":[[1309,6],[1998,6],[2366,6],[2422,6],[2742,6],[5993,6],[6335,6],[6669,6]]},"67":{"position":[[107,6]]},"77":{"position":[[623,6]]},"109":{"position":[[526,6],[699,6],[1592,6]]},"126":{"position":[[704,6],[2075,6],[2377,7]]},"128":{"position":[[1315,7]]},"135":{"position":[[693,6],[1243,6],[4456,6],[4508,6],[7762,6],[8476,6],[10711,6],[10924,6],[11685,6]]},"171":{"position":[[435,6]]},"173":{"position":[[838,6]]},"175":{"position":[[188,6]]},"194":{"position":[[2430,6],[3483,6],[3605,6]]},"198":{"position":[[633,6]]},"200":{"position":[[1320,6]]},"226":{"position":[[232,6]]},"228":{"position":[[533,6],[862,6],[937,6]]},"237":{"position":[[939,6],[1281,6]]},"260":{"position":[[720,6]]},"262":{"position":[[8,6],[655,6]]},"264":{"position":[[1508,6]]},"266":{"position":[[99,6],[358,6]]},"268":{"position":[[254,6]]},"274":{"position":[[867,6]]}}}],["plot",{"_index":209,"t":{"53":{"position":[[2376,4]]}}}],["plu",{"_index":187,"t":{"53":{"position":[[1325,4],[1650,4]]}}}],["plugin",{"_index":248,"t":{"57":{"position":[[34,6],[92,6],[193,7],[304,7]]},"59":{"position":[[43,6],[86,6],[304,6],[371,8],[682,6],[935,8],[969,7],[1141,7],[1200,6],[1225,7],[1342,6],[1379,7]]},"61":{"position":[[68,6],[185,7]]},"63":{"position":[[22,6],[103,6],[245,7],[319,6],[398,6],[433,8],[488,6],[534,6],[558,6],[698,6],[725,6],[767,6],[861,6],[1425,6],[1481,6],[1628,6],[2486,6],[2591,6],[2626,7],[2787,6],[2836,8],[2939,6],[3072,8],[3134,6],[5462,6],[5611,6]]},"81":{"position":[[137,8],[714,7]]},"85":{"position":[[241,7]]},"89":{"position":[[0,7],[113,7],[141,6],[205,7]]},"93":{"position":[[408,8],[427,7],[606,8],[880,7],[896,7]]},"95":{"position":[[69,8],[440,9],[472,7]]},"99":{"position":[[4149,6],[4602,6]]},"103":{"position":[[2834,7],[3005,7],[3184,6]]},"111":{"position":[[83,6]]},"115":{"position":[[1702,8],[2305,6],[2522,7]]},"124":{"position":[[295,7]]},"128":{"position":[[84,7]]},"171":{"position":[[52,6],[153,7],[506,6],[559,7],[634,6],[922,6],[1354,6],[1541,6],[1747,6],[1784,6],[1850,7]]},"173":{"position":[[35,6],[117,7],[213,7],[830,7]]},"175":{"position":[[63,6],[141,6],[362,6],[392,6],[441,6],[516,6],[699,6],[887,6],[970,6],[1017,6]]},"177":{"position":[[61,7],[105,6],[558,6],[615,6],[942,6],[1286,6]]},"216":{"position":[[218,7],[614,7],[1804,8],[2018,7]]},"218":{"position":[[43,7],[125,7],[265,6],[313,6],[504,6],[588,6],[621,7],[706,6],[1107,6],[2006,7],[2111,6],[2305,7],[2407,6],[2757,8]]},"220":{"position":[[60,6],[282,8]]},"222":{"position":[[62,6],[89,6]]},"224":{"position":[[50,7],[106,6],[123,6],[153,6],[189,6],[260,6],[313,7],[771,6],[1155,7]]},"226":{"position":[[89,7],[245,6],[435,6]]},"228":{"position":[[10,6],[64,6],[1005,6],[1646,6],[3403,6]]},"231":{"position":[[4,6],[84,8],[124,6],[223,8],[292,6],[390,7],[481,6],[510,6],[633,7],[648,6],[803,7],[900,6],[983,6],[1168,6],[1326,7],[1376,6]]},"233":{"position":[[4,6],[375,7],[478,7],[550,6]]},"235":{"position":[[15,6],[167,6]]},"239":{"position":[[0,7],[101,7],[192,6],[647,8],[711,6],[772,6]]},"241":{"position":[[2,6],[29,6],[83,6],[90,6],[151,6]]},"243":{"position":[[4,6],[113,6],[155,6],[202,6],[271,6],[397,7],[2087,7],[2117,6],[2164,7],[2200,6],[2228,6],[2342,6],[2384,6],[2448,6],[2498,6]]},"245":{"position":[[29,6],[238,6]]},"247":{"position":[[4,6],[129,6],[241,6],[269,6],[347,7],[392,6],[460,6],[935,7],[1121,6],[1140,6],[1208,6],[1261,7],[2273,6],[2300,6],[2352,6],[2452,6],[2552,6],[2615,6],[2744,6],[3097,8],[3171,6],[3236,6],[3358,6],[3455,6],[3481,6],[3576,7],[3610,6],[3665,6],[3692,7]]},"252":{"position":[[78,7],[383,9],[415,7]]},"272":{"position":[[661,7]]}}}],["plugin.base_path",{"_index":1070,"t":{"115":{"position":[[1665,16]]}}}],["plugin_mgt",{"_index":322,"t":{"63":{"position":[[159,10]]}}}],["plugin_onli",{"_index":1648,"t":{"231":{"position":[[403,12],[547,12]]},"247":{"position":[[210,12],[1307,12],[3507,11],[3705,12]]}}}],["plugin_only_mod",{"_index":987,"t":{"109":{"position":[[542,16]]}}}],["pluginclass(plugin",{"_index":966,"t":{"103":{"position":[[3096,20]]}}}],["pluginorchestr",{"_index":1652,"t":{"231":{"position":[[949,19]]}}}],["plugintemplate(plugin",{"_index":1622,"t":{"224":{"position":[[360,23]]}}}],["point",{"_index":581,"t":{"71":{"position":[[223,7]]},"87":{"position":[[79,5]]},"212":{"position":[[629,5]]}}}],["pong",{"_index":1089,"t":{"124":{"position":[[854,4]]}}}],["pool",{"_index":302,"t":{"59":{"position":[[1207,4]]},"63":{"position":[[2946,5]]},"131":{"position":[[799,5]]},"133":{"position":[[136,5]]}}}],["popular",{"_index":426,"t":{"65":{"position":[[77,7]]},"69":{"position":[[31,7]]}}}],["port",{"_index":543,"t":{"69":{"position":[[425,6],[473,4],[562,6],[639,6],[985,4]]},"71":{"position":[[1527,6]]},"85":{"position":[[443,6]]},"262":{"position":[[164,4]]}}}],["post",{"_index":471,"t":{"65":{"position":[[1602,5]]},"91":{"position":[[112,5]]},"97":{"position":[[4,4],[111,5],[123,4],[391,5],[431,5],[472,5],[511,5],[563,5],[668,4],[809,4],[892,5],[1071,5],[1259,5],[1312,5]]},"99":{"position":[[2418,5],[3120,4],[3415,4],[3471,4]]},"101":{"position":[[229,6],[295,5],[513,5]]},"124":{"position":[[578,6],[587,4]]},"126":{"position":[[2142,6],[2159,4],[2308,4],[2643,4],[2813,4],[3030,5]]},"128":{"position":[[1229,6],[1246,4],[1359,4]]},"210":{"position":[[254,4]]},"212":{"position":[[1198,5]]},"214":{"position":[[1310,4],[2187,6],[2370,5]]},"264":{"position":[[852,6],[1108,5],[1255,5]]}}}],["post_list",{"_index":934,"t":{"101":{"position":[[274,10],[427,10],[490,9]]},"124":{"position":[[763,10]]},"126":{"position":[[588,10]]},"128":{"position":[[323,10]]},"264":{"position":[[1085,12]]}}}],["post_proxi",{"_index":911,"t":{"99":{"position":[[2582,10]]}}}],["post_proxy.end",{"_index":917,"t":{"99":{"position":[[2793,16]]}}}],["post_proxy.update_messag",{"_index":914,"t":{"99":{"position":[[2691,26]]}}}],["post_proxy.update_send_to(last_post.send_from",{"_index":913,"t":{"99":{"position":[[2644,46]]}}}],["postproxi",{"_index":923,"t":{"99":{"position":[[3361,9],[3432,9],[3545,9]]}}}],["potenti",{"_index":61,"t":{"47":{"position":[[294,11]]},"57":{"position":[[348,12]]},"77":{"position":[[447,11],[590,9]]},"216":{"position":[[1210,9]]}}}],["power",{"_index":594,"t":{"71":{"position":[[1007,9]]},"169":{"position":[[355,8]]}}}],["powershel",{"_index":17,"t":{"41":{"position":[[187,10]]}}}],["practic",{"_index":759,"t":{"85":{"position":[[2397,8]]},"131":{"position":[[175,9]]},"218":{"position":[[3,9]]},"243":{"position":[[2484,8]]}}}],["prefer",{"_index":1195,"t":{"135":{"position":[[6863,12],[6878,10],[6901,7]]}}}],["prefix",{"_index":1243,"t":{"139":{"position":[[328,8]]}}}],["prepar",{"_index":530,"t":{"69":{"position":[[79,8]]},"135":{"position":[[7873,9],[11042,9]]},"212":{"position":[[918,7],[1073,9]]},"214":{"position":[[919,7]]}}}],["prerequisit",{"_index":666,"t":{"79":{"position":[[339,14],[1001,12]]}}}],["present",{"_index":840,"t":{"93":{"position":[[1286,9]]},"97":{"position":[[1351,7],[2000,9]]},"128":{"position":[[695,7]]}}}],["prevent",{"_index":63,"t":{"47":{"position":[[320,7]]},"85":{"position":[[791,7]]},"216":{"position":[[1367,7]]}}}],["preview",{"_index":1062,"t":{"115":{"position":[[797,7]]},"184":{"position":[[381,9]]},"186":{"position":[[427,9]]},"202":{"position":[[962,9]]}}}],["previou",{"_index":176,"t":{"53":{"position":[[1055,8],[1764,8]]},"85":{"position":[[2099,8]]},"107":{"position":[[658,8]]},"115":{"position":[[1980,8],[2405,8]]},"135":{"position":[[4360,8]]},"212":{"position":[[1124,8]]},"214":{"position":[[2881,8]]}}}],["price",{"_index":359,"t":{"63":{"position":[[1846,5],[1919,6],[2044,5],[2088,5],[2210,5],[2316,5],[2385,5],[2441,5],[2761,5],[3169,7],[3456,5],[4148,6],[4217,5],[4551,5],[5243,6],[5312,5],[5436,5],[5585,5],[5760,6],[6016,6],[6102,6],[6358,6],[6436,6],[6692,6]]},"171":{"position":[[331,6],[1471,6]]}}}],["primari",{"_index":980,"t":{"107":{"position":[[832,7]]},"198":{"position":[[947,7]]},"202":{"position":[[315,7],[1124,7],[1321,7],[1649,7]]},"210":{"position":[[4,7]]}}}],["princip",{"_index":1352,"t":{"186":{"position":[[100,11],[1771,10],[1885,9]]}}}],["print",{"_index":347,"t":{"63":{"position":[[1520,8]]},"103":{"position":[[2230,6]]},"237":{"position":[[1403,5],[1536,5],[1812,5],[2001,5]]}}}],["print(\"tim",{"_index":1682,"t":{"243":{"position":[[1213,11]]}}}],["print(\"valu",{"_index":1686,"t":{"243":{"position":[[1380,12]]}}}],["print(event.t",{"_index":959,"t":{"103":{"position":[[2069,14]]}}}],["print(file_cont",{"_index":1107,"t":{"128":{"position":[[846,20]]}}}],["print(render(text=\"hello",{"_index":1327,"t":{"177":{"position":[[457,24]]}}}],["print(response_round.to_dict",{"_index":1751,"t":{"264":{"position":[[426,31]]}}}],["print(round",{"_index":804,"t":{"87":{"position":[[2140,12]]}}}],["pro",{"_index":1371,"t":{"188":{"position":[[228,4]]},"202":{"position":[[160,3],[1108,5],[1499,3]]}}}],["problem",{"_index":135,"t":{"53":{"position":[[150,7],[216,8],[757,8]]},"57":{"position":[[160,9]]},"131":{"position":[[229,8],[365,8],[421,7],[454,8]]},"135":{"position":[[4425,7],[4527,7]]},"218":{"position":[[456,8]]}}}],["proceed",{"_index":1706,"t":{"245":{"position":[[138,11]]}}}],["process",{"_index":271,"t":{"59":{"position":[[158,7],[223,7],[1265,7]]},"67":{"position":[[1534,11]]},"77":{"position":[[357,8]]},"99":{"position":[[4348,7],[4450,7]]},"103":{"position":[[2339,11]]},"133":{"position":[[1025,7]]},"165":{"position":[[564,7],[657,8]]},"212":{"position":[[1062,7]]},"224":{"position":[[975,10]]},"237":{"position":[[401,8]]},"243":{"position":[[2420,7]]},"252":{"position":[[21,8]]},"260":{"position":[[177,7]]},"264":{"position":[[1610,10]]}}}],["processor",{"_index":1469,"t":{"196":{"position":[[149,11]]}}}],["produc",{"_index":299,"t":{"59":{"position":[[1152,7]]},"231":{"position":[[816,7]]}}}],["product",{"_index":767,"t":{"85":{"position":[[2719,10]]},"198":{"position":[[148,9],[204,8],[853,8]]},"262":{"position":[[227,11]]},"264":{"position":[[1421,8]]}}}],["program",{"_index":656,"t":{"75":{"position":[[702,11]]},"95":{"position":[[678,7],[768,7]]},"252":{"position":[[621,7],[711,7]]}}}],["programap",{"_index":375,"t":{"63":{"position":[[3095,10]]},"135":{"position":[[1412,10],[4620,10],[8621,10],[11863,10]]}}}],["project",{"_index":29,"t":{"44":{"position":[[44,7]]},"49":{"position":[[109,7],[311,7]]},"67":{"position":[[598,7],[759,7],[886,7],[2410,7]]},"87":{"position":[[465,7],[666,7],[2226,7]]},"93":{"position":[[1093,7]]},"95":{"position":[[2,7],[160,7],[180,7],[324,7],[353,9],[396,7]]},"99":{"position":[[1981,7]]},"101":{"position":[[195,8]]},"115":{"position":[[3015,7]]},"133":{"position":[[501,7],[1438,7]]},"139":{"position":[[285,7]]},"141":{"position":[[174,7]]},"194":{"position":[[3920,7],[4160,7],[4266,7]]},"231":{"position":[[1099,7]]},"237":{"position":[[317,10],[352,7]]},"245":{"position":[[623,7]]},"252":{"position":[[51,7],[132,7],[157,7],[190,7],[226,7],[296,9],[339,7]]},"260":{"position":[[93,10],[128,7]]},"264":{"position":[[236,12],[259,12]]},"272":{"position":[[25,7],[578,7],[696,7],[736,7]]}}}],["project/sample_data/data_demo.csv",{"_index":1141,"t":{"135":{"position":[[86,36],[7165,36]]}}}],["project/taskweaver_config.json",{"_index":1048,"t":{"115":{"position":[[84,31]]}}}],["project/workspace/session_id/cwd",{"_index":1663,"t":{"237":{"position":[[2192,32]]},"245":{"position":[[576,32]]}}}],["project/workspace/sessions//planner_prompt_log_xxxx.yaml",{"_index":1297,"t":{"171":{"position":[[776,69]]}}}],["prom/prometheus:latest",{"_index":552,"t":{"69":{"position":[[616,22]]}}}],["prometheu",{"_index":512,"t":{"67":{"position":[[1700,10],[1975,10]]},"69":{"position":[[16,10],[597,11],[662,10],[687,12],[1330,11],[1469,12],[1683,10],[1709,10],[1734,10],[1791,11]]},"71":{"position":[[114,10],[502,11],[935,10],[1038,10],[1361,10],[1756,10]]}}}],["prompt",{"_index":111,"t":{"51":{"position":[[97,7],[264,6]]},"53":{"position":[[3523,7]]},"59":{"position":[[1057,7]]},"65":{"position":[[320,7],[1471,6]]},"71":{"position":[[475,6],[645,6],[842,6]]},"73":{"position":[[733,6]]},"93":{"position":[[1180,6],[1303,7]]},"97":{"position":[[1366,6],[1547,6],[1566,6],[2017,6]]},"99":{"position":[[1511,6],[1719,6]]},"126":{"position":[[2105,7]]},"128":{"position":[[1098,6],[1195,7]]},"131":{"position":[[1078,6]]},"133":{"position":[[1277,6]]},"169":{"position":[[103,7]]},"171":{"position":[[723,6],[763,7]]},"190":{"position":[[625,8]]},"212":{"position":[[1085,6]]},"237":{"position":[[527,7]]},"245":{"position":[[221,8]]},"260":{"position":[[308,7]]}}}],["prompt_compress",{"_index":976,"t":{"107":{"position":[[530,18],[568,19]]}}}],["prompt_siz",{"_index":468,"t":{"65":{"position":[[1519,12]]},"71":{"position":[[433,11],[562,11]]}}}],["prompt_size_tot",{"_index":585,"t":{"71":{"position":[[589,18],[608,17]]}}}],["promptutil.wrap_text_with_delimiter(messag",{"_index":862,"t":{"97":{"position":[[1833,44]]}}}],["promql",{"_index":593,"t":{"71":{"position":[[985,6]]}}}],["proper",{"_index":1350,"t":{"186":{"position":[[49,6]]}}}],["properli",{"_index":763,"t":{"85":{"position":[[2612,9]]}}}],["propos",{"_index":1130,"t":{"131":{"position":[[591,8]]}}}],["protocol",{"_index":559,"t":{"69":{"position":[[1173,10]]}}}],["provid",{"_index":204,"t":{"53":{"position":[[2185,8]]},"57":{"position":[[18,7]]},"73":{"position":[[529,8]]},"77":{"position":[[229,8]]},"87":{"position":[[1374,9],[1529,9]]},"97":{"position":[[1720,7]]},"99":{"position":[[645,8],[3183,7]]},"131":{"position":[[104,7]]},"167":{"position":[[175,7]]},"171":{"position":[[980,8]]},"190":{"position":[[660,7]]},"200":{"position":[[13,8],[292,8]]},"204":{"position":[[92,7]]},"214":{"position":[[281,8],[2985,8]]},"216":{"position":[[1409,8],[1994,7],[2074,7]]},"237":{"position":[[985,8]]},"243":{"position":[[2401,7]]},"245":{"position":[[272,8],[376,8]]},"247":{"position":[[640,9],[811,8]]},"252":{"position":[[114,8]]},"254":{"position":[[39,7]]},"260":{"position":[[836,8],[1015,7]]},"264":{"position":[[1515,7]]}}}],["proxi",{"_index":1495,"t":{"200":{"position":[[279,5],[351,5],[681,5]]}}}],["ps",{"_index":678,"t":{"79":{"position":[[1180,3]]}}}],["public",{"_index":1738,"t":{"262":{"position":[[184,7]]}}}],["pull",{"_index":1597,"t":{"218":{"position":[[143,4],[178,5],[219,5],[634,4],[718,5],[813,4],[1119,5],[1214,4]]},"239":{"position":[[319,7],[718,5]]},"264":{"position":[[1474,7]]},"270":{"position":[[563,4],[684,4],[760,7]]}}}],["purpos",{"_index":1092,"t":{"126":{"position":[[311,8],[437,7]]},"128":{"position":[[161,7]]},"210":{"position":[[12,7]]},"262":{"position":[[81,8]]},"266":{"position":[[175,8]]}}}],["purposefulli",{"_index":1531,"t":{"210":{"position":[[583,12]]}}}],["put",{"_index":851,"t":{"97":{"position":[[284,3]]},"99":{"position":[[893,3]]}}}],["py",{"_index":1718,"t":{"247":{"position":[[2876,3]]}}}],["pyfiglet",{"_index":1633,"t":{"224":{"position":[[1267,8],[1408,9],[1460,9]]}}}],["pyfiglet.figlet_format(text",{"_index":1635,"t":{"224":{"position":[[1292,28]]}}}],["python",{"_index":320,"t":{"63":{"position":[[149,6],[3181,8],[3365,6],[3417,6],[4298,6],[4329,9],[4460,6],[4512,6]]},"73":{"position":[[63,6]]},"109":{"position":[[415,6],[1847,6],[1899,6],[2104,6],[2135,9],[2250,6],[2302,6],[2488,6],[2519,9],[2634,6],[2686,6]]},"128":{"position":[[737,6],[1615,7]]},"135":{"position":[[1557,8],[1874,6],[3001,6],[3034,9],[3232,6],[4800,8],[5142,6],[5198,6],[5307,6],[5340,9],[5563,6],[5619,6],[8749,9],[9160,6],[9216,6],[9478,6],[9511,9],[9666,6],[9722,6],[12011,9],[12333,6],[12389,6],[12485,6],[12518,9],[12625,6],[12681,6]]},"175":{"position":[[671,6]]},"177":{"position":[[148,6],[683,6],[710,6]]},"194":{"position":[[162,6],[4112,6],[4241,6]]},"216":{"position":[[409,7],[638,6]]},"218":{"position":[[1637,6]]},"224":{"position":[[9,6]]},"228":{"position":[[985,8],[1206,6],[1258,6],[1604,6],[1789,6],[1841,6]]},"237":{"position":[[293,6]]},"239":{"position":[[219,6]]},"241":{"position":[[54,6]]},"243":{"position":[[47,7],[120,6]]},"247":{"position":[[85,6],[2927,6]]},"260":{"position":[[69,6],[970,6]]}}}],["python:3.10",{"_index":687,"t":{"81":{"position":[[653,11]]}}}],["python=3.10",{"_index":1728,"t":{"250":{"position":[[158,11]]}}}],["python]start",{"_index":991,"t":{"109":{"position":[[1657,19]]}}}],["qa",{"_index":1020,"t":{"111":{"position":[[512,2],[578,2]]}}}],["qianwen",{"_index":1259,"t":{"154":{"position":[[16,8]]},"206":{"position":[[13,8]]}}}],["queri",{"_index":467,"t":{"65":{"position":[[1460,6]]},"71":{"position":[[910,5],[960,5],[1086,5],[1106,5]]},"99":{"position":[[2519,5],[2942,5],[4306,6],[4467,5]]},"101":{"position":[[331,5],[467,5]]},"124":{"position":[[183,5],[547,5]]},"126":{"position":[[57,5],[2290,6]]},"133":{"position":[[1187,5]]},"135":{"position":[[6536,6]]},"165":{"position":[[122,5],[186,5],[977,6]]},"171":{"position":[[1713,6]]},"194":{"position":[[4176,5],[4296,5]]}}}],["question",{"_index":1567,"t":{"214":{"position":[[2069,8]]}}}],["quick",{"_index":1133,"t":{"133":{"position":[[8,5]]},"137":{"position":[[81,5]]},"184":{"position":[[755,5]]},"188":{"position":[[299,5]]},"190":{"position":[[866,5]]},"192":{"position":[[597,5]]},"196":{"position":[[684,5]]},"198":{"position":[[798,5]]},"200":{"position":[[1481,5]]},"204":{"position":[[1105,5]]},"206":{"position":[[530,5]]},"208":{"position":[[634,5]]},"237":{"position":[[134,5]]},"262":{"position":[[380,5]]}}}],["quickli",{"_index":1595,"t":{"216":{"position":[[2120,7]]}}}],["quit",{"_index":130,"t":{"53":{"position":[[61,5]]},"71":{"position":[[1001,5]]}}}],["quot",{"_index":1051,"t":{"115":{"position":[[375,7]]}}}],["qwen",{"_index":1007,"t":{"111":{"position":[[195,4],[429,4]]},"154":{"position":[[3,4],[62,4]]},"194":{"position":[[2512,4]]},"206":{"position":[[0,4],[59,4],[294,7],[315,5],[396,4],[445,4]]}}}],["r",{"_index":54,"t":{"47":{"position":[[174,4]]},"128":{"position":[[804,4]]},"250":{"position":[[329,1]]}}}],["r1",{"_index":1647,"t":{"231":{"position":[[378,2]]},"233":{"position":[[419,2]]}}}],["r1=ascii_render(**{\"text\":\"hello",{"_index":1646,"t":{"231":{"position":[[342,35]]},"233":{"position":[[383,35]]}}}],["rais",{"_index":883,"t":{"99":{"position":[[1070,7]]},"128":{"position":[[525,7]]},"194":{"position":[[3145,5],[3780,5]]}}}],["random",{"_index":196,"t":{"53":{"position":[[2032,6],[2155,6],[2231,6],[2750,6],[2933,6]]},"109":{"position":[[1638,6]]}}}],["random_numb",{"_index":993,"t":{"109":{"position":[[1696,14],[1732,14],[2164,14],[2200,14],[2548,14],[2584,14]]}}}],["random_numbers_100",{"_index":220,"t":{"53":{"position":[[2665,21]]}}}],["raw_exp_{session_id}.yaml",{"_index":1137,"t":{"133":{"position":[[755,25],[921,25]]}}}],["raw_experience_path",{"_index":1196,"t":{"135":{"position":[[6973,20]]}}}],["raw_input",{"_index":99,"t":{"49":{"position":[[756,12]]},"115":{"position":[[1526,12]]}}}],["rbac",{"_index":1351,"t":{"186":{"position":[[62,4]]}}}],["re",{"_index":70,"t":{"47":{"position":[[506,2]]},"135":{"position":[[2557,3],[3915,3]]}}}],["reach",{"_index":184,"t":{"53":{"position":[[1275,7],[1612,7]]}}}],["read",{"_index":58,"t":{"47":{"position":[[242,4]]},"69":{"position":[[836,4]]},"115":{"position":[[3272,4]]},"124":{"position":[[1067,4]]},"128":{"position":[[284,4],[345,4],[664,4],[1089,4],[1323,4],[1428,5]]},"133":{"position":[[912,4]]},"173":{"position":[[26,4]]},"177":{"position":[[982,4]]}}}],["real",{"_index":504,"t":{"67":{"position":[[1253,4]]},"212":{"position":[[657,4]]}}}],["reason",{"_index":1313,"t":{"173":{"position":[[532,8],[577,6]]},"175":{"position":[[455,8],[501,6]]},"214":{"position":[[1191,8],[2198,6]]},"218":{"position":[[2370,6]]},"231":{"position":[[1438,8]]}}}],["rebuild",{"_index":683,"t":{"81":{"position":[[387,7],[830,7]]},"83":{"position":[[1005,7]]}}}],["rebuilt",{"_index":698,"t":{"81":{"position":[[1121,7]]}}}],["receiv",{"_index":437,"t":{"65":{"position":[[362,8]]},"67":{"position":[[1470,8]]},"69":{"position":[[464,8],[976,8],[1156,10],[1395,10],[1440,10],[1488,10]]},"97":{"position":[[459,8],[880,7],[1299,8]]},"109":{"position":[[987,7]]},"126":{"position":[[107,7]]},"131":{"position":[[1090,8]]},"165":{"position":[[413,8]]},"212":{"position":[[1212,8]]}}}],["recent",{"_index":1154,"t":{"135":{"position":[[1979,6],[3337,6]]}}}],["recommend",{"_index":1360,"t":{"186":{"position":[[1165,12],[1347,12]]},"204":{"position":[[418,9]]}}}],["record",{"_index":470,"t":{"65":{"position":[[1569,8]]},"71":{"position":[[451,7]]}}}],["reduc",{"_index":1171,"t":{"135":{"position":[[2688,6],[2817,6],[4046,6],[4175,6]]}}}],["refer",{"_index":36,"t":{"44":{"position":[[153,5]]},"53":{"position":[[3349,5]]},"59":{"position":[[566,5]]},"71":{"position":[[1025,5]]},"75":{"position":[[131,5]]},"107":{"position":[[231,8],[556,8]]},"109":{"position":[[533,5],[706,5]]},"126":{"position":[[2082,5]]},"181":{"position":[[128,5]]},"184":{"position":[[742,5]]},"186":{"position":[[983,5]]},"188":{"position":[[286,5]]},"190":{"position":[[853,5]]},"192":{"position":[[584,5]]},"194":{"position":[[2503,5],[3646,9]]},"196":{"position":[[671,5]]},"198":{"position":[[640,5],[785,5]]},"200":{"position":[[1327,5],[1468,5]]},"204":{"position":[[1092,5]]},"206":{"position":[[517,5]]},"208":{"position":[[621,5]]},"212":{"position":[[945,5]]},"214":{"position":[[1050,5],[2936,9]]},"247":{"position":[[2891,5]]},"264":{"position":[[52,5],[950,5]]},"272":{"position":[[761,8]]}}}],["refresh",{"_index":323,"t":{"63":{"position":[[172,7],[686,7]]}}}],["regist",{"_index":1261,"t":{"154":{"position":[[71,8]]},"156":{"position":[[84,8]]},"175":{"position":[[416,9]]},"192":{"position":[[81,8]]},"194":{"position":[[2558,8],[3108,8],[3533,8]]},"196":{"position":[[176,8]]},"206":{"position":[[68,8]]},"243":{"position":[[2076,8]]}}}],["register_plugin",{"_index":965,"t":{"103":{"position":[[3073,16]]},"224":{"position":[[321,15],[337,16],[1163,15],[1179,16]]},"243":{"position":[[405,15],[421,16],[2172,15],[2310,16]]}}}],["registri",{"_index":948,"t":{"103":{"position":[[1020,9]]}}}],["rel",{"_index":1664,"t":{"237":{"position":[[2255,8]]}}}],["releas",{"_index":392,"t":{"63":{"position":[[3577,8],[4013,8],[4672,8],[5108,8]]}}}],["relev",{"_index":154,"t":{"53":{"position":[[457,8]]},"133":{"position":[[1229,8]]}}}],["reliabl",{"_index":1296,"t":{"171":{"position":[[585,8],[694,8]]},"216":{"position":[[912,11]]}}}],["reload",{"_index":100,"t":{"49":{"position":[[769,9]]},"115":{"position":[[1539,9]]}}}],["rememb",{"_index":1383,"t":{"190":{"position":[[896,8]]}}}],["remot",{"_index":786,"t":{"87":{"position":[[918,6],[960,6]]}}}],["remov",{"_index":1569,"t":{"214":{"position":[[2243,6]]}}}],["render",{"_index":1286,"t":{"171":{"position":[[274,9],[1361,7]]},"177":{"position":[[384,6]]},"222":{"position":[[100,6]]},"226":{"position":[[442,7],[712,8],[796,8]]},"228":{"position":[[567,6],[610,6],[689,6],[781,6],[869,6],[944,6],[1024,6],[1665,6],[2161,6],[2240,6],[2390,8],[2725,8],[3052,8]]}}}],["repeat",{"_index":1553,"t":{"214":{"position":[[437,9],[556,6]]}}}],["replac",{"_index":754,"t":{"85":{"position":[[2008,7]]},"113":{"position":[[435,8]]},"115":{"position":[[3498,7]]},"190":{"position":[[908,7]]}}}],["repli",{"_index":452,"t":{"65":{"position":[[867,5],[908,5],[1408,5]]},"99":{"position":[[2882,5],[2973,5],[3089,5],[4271,5],[4360,5]]}}}],["reply(self",{"_index":904,"t":{"99":{"position":[[2377,11]]}}}],["repo",{"_index":1747,"t":{"264":{"position":[[213,4]]}}}],["report",{"_index":68,"t":{"47":{"position":[[473,8]]},"63":{"position":[[2097,6],[2219,6],[5374,6],[5472,6],[5621,6],[5678,6]]},"126":{"position":[[964,6],[1139,6],[1711,6],[1886,6],[1954,6]]},"135":{"position":[[911,6],[1086,6],[5855,6],[6030,6],[6087,6],[8097,6],[10228,6],[11266,6],[11523,6],[13021,6],[13278,6],[13335,6]]},"228":{"position":[[2301,6]]}}}],["repositori",{"_index":668,"t":{"79":{"position":[[587,10],[729,11]]},"237":{"position":[[159,10]]},"250":{"position":[[210,10]]},"260":{"position":[[58,10]]},"262":{"position":[[405,10]]}}}],["repres",{"_index":454,"t":{"65":{"position":[[954,9]]},"99":{"position":[[42,10]]},"239":{"position":[[202,11]]}}}],["request",{"_index":156,"t":{"53":{"position":[[494,8],[700,8],[2000,9],[2363,9],[3125,8]]},"57":{"position":[[113,8]]},"59":{"position":[[640,7],[779,7],[877,7]]},"63":{"position":[[1327,8],[2016,8]]},"75":{"position":[[449,7]]},"109":{"position":[[449,8],[1117,8],[1610,8]]},"131":{"position":[[840,9],[1014,7],[1109,7]]},"135":{"position":[[49,7],[711,8],[7124,7],[7780,8]]},"171":{"position":[[1564,8]]},"198":{"position":[[708,8]]},"200":{"position":[[1391,8]]},"212":{"position":[[1161,8]]},"214":{"position":[[804,7]]},"216":{"position":[[145,8]]},"228":{"position":[[551,8]]},"237":{"position":[[957,8],[1299,8]]},"260":{"position":[[738,8]]},"274":{"position":[[885,8]]}}}],["requir",{"_index":112,"t":{"51":{"position":[[140,8],[408,8]]},"53":{"position":[[3455,8]]},"67":{"position":[[80,8],[187,8]]},"83":{"position":[[765,8]]},"99":{"position":[[2295,8]]},"113":{"position":[[511,7],[617,7]]},"171":{"position":[[949,8],[1268,9],[1415,9],[1703,9]]},"173":{"position":[[889,8]]},"192":{"position":[[166,8]]},"196":{"position":[[271,8]]},"200":{"position":[[617,8]]},"206":{"position":[[166,8]]},"210":{"position":[[77,8]]},"224":{"position":[[952,8]]},"226":{"position":[[185,9],[399,9],[652,9]]},"247":{"position":[[600,8],[1157,8],[1326,9],[1617,9],[1764,9],[1871,9],[3031,8]]},"250":{"position":[[303,12]]},"270":{"position":[[404,8]]}}}],["requirements.txt",{"_index":1731,"t":{"250":{"position":[[331,16]]}}}],["research",{"_index":1759,"t":{"264":{"position":[[1453,8]]}}}],["reserv",{"_index":1540,"t":{"212":{"position":[[463,8]]}}}],["reset",{"_index":1660,"t":{"237":{"position":[[1448,7],[1456,5],[1877,6],[1884,5]]}}}],["resolut",{"_index":1192,"t":{"135":{"position":[[6588,11],[6740,10]]}}}],["resource>.openai.azure.com",{"_index":1341,"t":{"184":{"position":[[248,27]]},"186":{"position":[[304,27]]}}}],["respect",{"_index":592,"t":{"71":{"position":[[888,13]]},"97":{"position":[[898,13]]},"218":{"position":[[666,13],[1871,13]]}}}],["respond",{"_index":1379,"t":{"190":{"position":[[571,7]]}}}],["respons",{"_index":264,"t":{"57":{"position":[[408,8]]},"63":{"position":[[4090,8],[5185,8]]},"65":{"position":[[352,9]]},"71":{"position":[[866,8]]},"75":{"position":[[505,9]]},"87":{"position":[[2369,8]]},"91":{"position":[[190,9],[365,8],[408,8],[672,8]]},"93":{"position":[[854,8]]},"99":{"position":[[1348,11],[3146,8]]},"115":{"position":[[829,8]]},"171":{"position":[[115,8],[653,8]]},"184":{"position":[[627,8]]},"194":{"position":[[4071,8]]},"208":{"position":[[506,8]]},"212":{"position":[[732,14],[928,9]]},"214":{"position":[[931,9]]},"231":{"position":[[1358,8]]},"233":{"position":[[460,8]]},"258":{"position":[[132,8]]},"264":{"position":[[736,8]]}}}],["response_format",{"_index":1378,"t":{"190":{"position":[[471,15]]}}}],["response_round",{"_index":1749,"t":{"264":{"position":[[376,14]]}}}],["restart",{"_index":699,"t":{"81":{"position":[[1246,7]]},"133":{"position":[[818,7]]},"135":{"position":[[6386,7]]},"141":{"position":[[340,7]]}}}],["restrict",{"_index":709,"t":{"85":{"position":[[47,8],[337,8]]},"216":{"position":[[489,8]]},"231":{"position":[[26,10],[159,13],[1188,11]]}}}],["result",{"_index":133,"t":{"53":{"position":[[116,7],[631,7]]},"63":{"position":[[2108,6],[2230,6],[3325,8],[3401,6],[4496,6],[5385,6],[5483,6],[5632,6],[5689,6]]},"77":{"position":[[371,7]]},"91":{"position":[[757,7]]},"95":{"position":[[1124,7]]},"97":{"position":[[1645,7]]},"99":{"position":[[4488,6]]},"109":{"position":[[1807,8],[1883,6],[2286,6],[2670,6]]},"126":{"position":[[129,6],[190,7],[975,6],[1150,6],[1722,6],[1897,6],[1965,6]]},"128":{"position":[[1887,7],[2530,6]]},"135":{"position":[[922,6],[1097,6],[2146,6],[2826,6],[3504,6],[4184,6],[5182,6],[5603,6],[5866,6],[6041,6],[6098,6],[8108,6],[9200,6],[9706,6],[10239,6],[11277,6],[11534,6],[12373,6],[12665,6],[13032,6],[13289,6],[13346,6],[13365,6]]},"165":{"position":[[297,6],[362,6]]},"175":{"position":[[98,6]]},"224":{"position":[[449,7],[568,7],[715,7],[894,6],[922,6],[1051,7],[1103,6]]},"226":{"position":[[574,6],[759,6]]},"228":{"position":[[1166,8],[1242,6],[1825,6]]},"243":{"position":[[1123,8],[2554,6],[2687,6]]},"245":{"position":[[186,8],[332,7],[438,7]]},"247":{"position":[[1079,6],[2119,7],[2220,8]]}}}],["ret",{"_index":1178,"t":{"135":{"position":[[2952,3],[4310,3]]}}}],["retain",{"_index":178,"t":{"53":{"position":[[1118,7]]},"115":{"position":[[2884,7]]}}}],["retriev",{"_index":152,"t":{"53":{"position":[[421,8]]},"131":{"position":[[858,8],[1049,9]]},"133":{"position":[[1216,8]]},"214":{"position":[[2597,8]]}}}],["return",{"_index":791,"t":{"87":{"position":[[1328,6],[1419,8]]},"99":{"position":[[2786,6],[3111,6],[4477,6]]},"103":{"position":[[1456,8]]},"128":{"position":[[2214,9],[2545,9],[2635,9]]},"135":{"position":[[2303,6],[2438,6],[3661,6],[3796,6]]},"173":{"position":[[932,7]]},"218":{"position":[[1011,8],[1415,8]]},"224":{"position":[[708,6],[869,6],[1340,6]]},"226":{"position":[[223,8],[742,8]]},"243":{"position":[[970,7],[1058,7],[1250,6],[1417,6],[2007,6],[2526,6]]},"247":{"position":[[684,9],[721,6],[763,6],[856,8],[1952,8]]},"264":{"position":[[649,6]]}}}],["revis",{"_index":1194,"t":{"135":{"position":[[6767,7]]}}}],["revise_messag",{"_index":1180,"t":{"135":{"position":[[4320,16]]}}}],["rewrit",{"_index":1181,"t":{"135":{"position":[[4436,9]]}}}],["rich",{"_index":1582,"t":{"216":{"position":[[328,4],[385,4]]}}}],["right",{"_index":1094,"t":{"126":{"position":[[483,5]]},"131":{"position":[[507,5]]},"218":{"position":[[2841,5]]},"220":{"position":[[374,5]]}}}],["risk",{"_index":664,"t":{"77":{"position":[[609,6]]},"167":{"position":[[496,6]]}}}],["robust",{"_index":507,"t":{"67":{"position":[[1300,6]]},"198":{"position":[[873,6]]}}}],["role",{"_index":430,"t":{"65":{"position":[[184,6],[275,4],[475,5],[1626,6]]},"93":{"position":[[663,6],[943,5],[957,5]]},"97":{"position":[[175,6],[311,4],[412,4],[450,4],[720,6],[840,6],[861,5],[953,5],[1013,5],[1240,4],[1290,4]]},"99":{"position":[[4,4],[67,5],[153,5],[180,5],[385,6],[491,4],[525,5],[565,4],[597,4],[689,5],[729,4],[786,4],[878,4],[982,4],[1127,4],[1252,4],[1466,5],[1493,4],[1571,4],[1637,4],[1680,5],[1743,4],[1807,4],[1856,4],[1949,4],[2814,4],[2853,4],[3000,4],[3162,4],[3214,4],[3676,4],[3715,4],[3847,4],[3913,6],[3946,4],[3996,5],[4124,5],[4404,5]]},"103":{"position":[[1015,4]]},"109":{"position":[[253,5],[784,6],[885,5],[1059,4],[1153,4]]},"113":{"position":[[273,4],[368,5],[422,4],[456,5],[531,5],[645,5]]},"115":{"position":[[2685,5]]},"124":{"position":[[408,6],[619,4],[635,5],[1024,5],[1052,4]]},"186":{"position":[[67,4]]},"210":{"position":[[509,5],[615,5]]},"212":{"position":[[46,6],[58,4],[132,5],[201,5],[306,6],[351,5],[496,6],[508,4],[551,6],[599,5],[768,5],[867,4],[904,4],[1172,4]]},"214":{"position":[[50,6],[83,5],[184,6],[310,5],[636,4],[702,6],[838,4],[888,5],[959,4],[1040,5],[1322,4],[2729,4],[2928,5],[3050,4],[3097,6]]},"216":{"position":[[1834,6]]},"231":{"position":[[937,4]]},"237":{"position":[[1848,5]]},"270":{"position":[[171,5],[351,4],[670,4]]}}}],["role'",{"_index":886,"t":{"99":{"position":[[1185,6]]}}}],["role=self.alia",{"_index":906,"t":{"99":{"position":[[2457,16]]}}}],["role_entri",{"_index":870,"t":{"99":{"position":[[315,11],[2223,11],[2361,11]]}}}],["role_nam",{"_index":1103,"t":{"128":{"position":[[619,12]]}}}],["role_name.pi",{"_index":877,"t":{"99":{"position":[[823,12],[1774,12]]}}}],["role_name.role.yaml",{"_index":878,"t":{"99":{"position":[[840,20],[1145,19]]}}}],["role_registri",{"_index":946,"t":{"103":{"position":[[724,14],[996,14]]}}}],["roleentri",{"_index":901,"t":{"99":{"position":[[2235,10]]}}}],["rolenam",{"_index":855,"t":{"97":{"position":[[592,8],[610,8]]}}}],["roleregistri",{"_index":947,"t":{"103":{"position":[[739,13]]}}}],["root",{"_index":671,"t":{"79":{"position":[[702,4]]},"173":{"position":[[225,4]]},"175":{"position":[[633,4]]},"264":{"position":[[218,5]]}}}],["ross",{"_index":1461,"t":{"196":{"position":[[61,5]]}}}],["round",{"_index":127,"t":{"53":{"position":[[25,7],[272,6],[309,6],[443,6],[882,6],[1083,6],[1108,6],[1318,6],[1359,7],[1436,6],[1468,6],[1553,6],[1643,6],[1672,7],[1749,6],[3258,6]]},"61":{"position":[[201,6]]},"87":{"position":[[2081,5],[2410,5]]},"93":{"position":[[272,7],[382,7],[400,7],[556,7],[765,7],[784,5]]},"97":{"position":[[1390,7],[1484,6],[1503,6],[1696,6],[1811,5],[1972,5],[2039,6]]},"99":{"position":[[2424,6],[2539,5],[2557,7],[2962,6]]},"101":{"position":[[2,5],[64,5],[136,6],[148,5],[267,6],[308,6],[374,6],[526,6],[594,5],[645,5],[711,5]]},"103":{"position":[[1334,6],[1474,6]]},"109":{"position":[[73,6],[149,6]]},"115":{"position":[[2538,6],[2619,6],[2804,6],[2874,6]]},"124":{"position":[[513,7],[530,5],[721,7]]},"126":{"position":[[518,7]]},"128":{"position":[[262,7]]},"210":{"position":[[244,5]]},"212":{"position":[[1138,6]]},"214":{"position":[[1889,6],[1953,6],[2219,5],[2285,5],[2437,5],[2671,6]]},"216":{"position":[[1098,7]]},"264":{"position":[[703,5],[764,5],[788,5],[877,5],[989,6]]}}}],["round_compressor.rounds_to_compress",{"_index":242,"t":{"55":{"position":[[92,35]]},"115":{"position":[[2754,35]]}}}],["round_compressor.rounds_to_retain",{"_index":243,"t":{"55":{"position":[[144,33]]},"115":{"position":[[2826,33]]}}}],["rounds_to_compress",{"_index":185,"t":{"53":{"position":[[1287,18],[1417,18],[1624,18],[1730,18]]}}}],["rounds_to_retain",{"_index":188,"t":{"53":{"position":[[1330,16],[1451,16],[1536,16],[1655,16]]}}}],["roundstat",{"_index":937,"t":{"101":{"position":[[416,10]]}}}],["rout",{"_index":749,"t":{"85":{"position":[[1847,6]]}}}],["row",{"_index":412,"t":{"63":{"position":[[4066,4],[5161,4]]},"126":{"position":[[550,4],[620,4],[759,4],[909,4],[1112,4],[1268,4],[1368,4],[1519,4],[1656,4],[1859,4],[2228,4],[2433,4],[2778,4],[2929,4]]},"135":{"position":[[9417,4],[9923,4]]},"264":{"position":[[1352,4]]}}}],["rule",{"_index":74,"t":{"49":{"position":[[298,5]]},"51":{"position":[[149,6],[417,6]]},"85":{"position":[[1546,4],[1623,5],[1937,4],[2151,4],[2249,4]]}}}],["run",{"_index":47,"t":{"47":{"position":[[62,7],[398,7]]},"49":{"position":[[209,7]]},"63":{"position":[[61,3],[655,3]]},"67":{"position":[[1728,3],[2104,7],[2173,7]]},"79":{"position":[[665,7],[888,3],[1034,3],[1078,7],[1154,7],[1165,7],[1261,7]]},"81":{"position":[[556,3],[722,3],[858,7],[1178,7]]},"83":{"position":[[230,7],[806,3]]},"85":{"position":[[181,3],[1232,3]]},"87":{"position":[[127,3]]},"95":{"position":[[292,4],[898,3],[1196,7]]},"135":{"position":[[4481,3]]},"141":{"position":[[319,8]]},"167":{"position":[[51,7]]},"177":{"position":[[164,3],[702,3]]},"179":{"position":[[208,10],[269,8],[342,8],[375,7]]},"181":{"position":[[59,7]]},"186":{"position":[[898,7],[1265,3],[1395,7]]},"194":{"position":[[3967,3]]},"200":{"position":[[669,3]]},"204":{"position":[[329,3],[384,4],[396,3]]},"216":{"position":[[1322,7]]},"237":{"position":[[212,3],[2121,4]]},"250":{"position":[[30,7]]},"252":{"position":[[11,4],[841,3]]},"254":{"position":[[7,7]]},"260":{"position":[[1076,3]]},"262":{"position":[[113,7],[733,7],[878,3]]},"266":{"position":[[42,3],[196,7],[382,7]]},"270":{"position":[[498,3],[776,3],[841,3],[1022,3],[1091,3]]},"272":{"position":[[116,3]]},"274":{"position":[[108,3],[763,7]]}}}],["runtimeerror",{"_index":1334,"t":{"179":{"position":[[166,14]]}}}],["s",{"_index":396,"t":{"63":{"position":[[3651,1],[3806,1],[4746,1],[4901,1],[5853,1],[5891,1],[6195,1],[6233,1],[6529,1],[6567,1]]},"85":{"position":[[1974,1]]}}}],["safe",{"_index":765,"t":{"85":{"position":[[2678,4]]}}}],["safeti",{"_index":1654,"t":{"231":{"position":[[1431,6]]}}}],["sale",{"_index":1603,"t":{"218":{"position":[[900,6]]}}}],["same",{"_index":286,"t":{"59":{"position":[[797,4]]},"67":{"position":[[2134,4]]},"97":{"position":[[967,5]]},"99":{"position":[[1014,4],[3965,4]]},"103":{"position":[[355,4]]},"126":{"position":[[2271,4],[3011,4]]},"131":{"position":[[449,4]]},"135":{"position":[[7260,4]]},"141":{"position":[[42,4]]},"200":{"position":[[70,4]]},"204":{"position":[[1006,4]]},"214":{"position":[[2778,4],[2904,4],[2923,4]]},"218":{"position":[[66,4],[299,5],[393,4],[541,4],[1932,5],[2024,4],[2444,4]]},"220":{"position":[[97,4]]},"224":{"position":[[94,4]]},"247":{"position":[[380,4],[2475,4],[2842,4]]},"266":{"position":[[290,4]]}}}],["sampl",{"_index":1594,"t":{"216":{"position":[[2011,6]]},"252":{"position":[[125,6]]}}}],["sandbox",{"_index":1590,"t":{"216":{"position":[[1344,7]]}}}],["save",{"_index":1119,"t":{"131":{"position":[[127,6],[706,4],[769,4]]},"133":{"position":[[96,4],[566,5],[641,7],[657,4],[683,5]]},"135":{"position":[[6299,5],[6348,4]]},"139":{"position":[[247,5]]},"237":{"position":[[1560,6],[1567,4],[2024,5],[2030,4]]},"245":{"position":[[513,4]]}}}],["say",{"_index":1317,"t":{"175":{"position":[[125,6]]}}}],["scale",{"_index":1519,"t":{"204":{"position":[[463,5]]}}}],["scenario",{"_index":506,"t":{"67":{"position":[[1264,9]]},"137":{"position":[[207,8]]},"231":{"position":[[1227,10]]}}}],["schema",{"_index":1281,"t":{"169":{"position":[[82,7]]},"224":{"position":[[160,7]]},"226":{"position":[[31,6],[104,7]]},"241":{"position":[[97,7],[137,6]]},"243":{"position":[[2872,6]]},"247":{"position":[[11,6],[1128,7],[1147,6],[1215,6],[2280,6],[2559,6],[2751,6],[3178,7],[3243,6]]}}}],["scientist",{"_index":1551,"t":{"214":{"position":[[300,9]]}}}],["scipi",{"_index":85,"t":{"49":{"position":[[505,8]]},"115":{"position":[[1274,8]]}}}],["scope",{"_index":1563,"t":{"214":{"position":[[1613,6],[1659,5],[1753,5],[1813,5],[1840,5],[1880,5],[1978,5]]}}}],["score",{"_index":293,"t":{"59":{"position":[[1012,6]]},"63":{"position":[[2669,7]]}}}],["scrape",{"_index":578,"t":{"69":{"position":[[1946,6]]}}}],["scrape_config",{"_index":572,"t":{"69":{"position":[[1824,15]]}}}],["scrape_interv",{"_index":574,"t":{"69":{"position":[[1867,16]]}}}],["screenshot",{"_index":440,"t":{"65":{"position":[[495,10],[1348,10]]},"262":{"position":[[1036,11]]}}}],["script",{"_index":319,"t":{"63":{"position":[[141,7]]},"79":{"position":[[744,7]]},"81":{"position":[[763,6],[888,6]]},"194":{"position":[[169,6],[4102,9]]}}}],["sdk",{"_index":483,"t":{"67":{"position":[[248,4]]},"73":{"position":[[70,4],[223,4],[290,3],[506,4]]}}}],["seaborn",{"_index":86,"t":{"49":{"position":[[514,10]]},"115":{"position":[[1283,10]]}}}],["seamlessli",{"_index":1575,"t":{"216":{"position":[[47,10]]}}}],["search",{"_index":357,"t":{"63":{"position":[[1833,7],[1907,6],[2032,6],[2076,6],[2198,6],[2304,6],[2373,6],[2429,6],[2749,6],[3153,6],[5424,6],[5573,6]]},"171":{"position":[[307,9],[852,6],[1452,6],[1578,9],[1657,6]]},"196":{"position":[[113,6]]},"264":{"position":[[1407,9]]},"270":{"position":[[366,6]]}}}],["search_result",{"_index":376,"t":{"63":{"position":[[3190,15],[3248,15],[4339,15],[4397,15]]}}}],["second",{"_index":115,"t":{"51":{"position":[[322,7]]},"126":{"position":[[2301,6],[2549,6],[3023,6]]},"128":{"position":[[1352,6],[1562,6]]},"218":{"position":[[1885,7]]}}}],["secret",{"_index":611,"t":{"71":{"position":[[1630,8]]}}}],["section",{"_index":283,"t":{"59":{"position":[[589,7]]},"71":{"position":[[13,8]]},"171":{"position":[[868,7]]},"177":{"position":[[845,7]]},"210":{"position":[[275,8]]},"247":{"position":[[495,7],[699,7]]},"264":{"position":[[972,8],[2288,8]]}}}],["secur",{"_index":640,"t":{"75":{"position":[[147,8],[188,8]]},"77":{"position":[[245,6],[600,8]]},"83":{"position":[[27,6]]},"85":{"position":[[1748,8]]},"167":{"position":[[190,6],[487,8]]},"216":{"position":[[1277,8]]},"262":{"position":[[259,8],[346,7]]}}}],["see",{"_index":345,"t":{"63":{"position":[[1412,3],[2578,3]]},"65":{"position":[[590,3],[1143,3],[1276,3],[1447,3]]},"67":{"position":[[1835,3],[1903,3]]},"69":{"position":[[859,3]]},"71":{"position":[[536,3]]},"79":{"position":[[1195,3]]},"81":{"position":[[452,3]]},"85":{"position":[[1296,3]]},"131":{"position":[[827,4],[1005,6]]},"135":{"position":[[6413,3]]},"165":{"position":[[806,3]]},"171":{"position":[[43,3],[497,3],[550,3],[625,3],[1841,3]]},"173":{"position":[[204,3],[415,3],[821,3]]},"175":{"position":[[25,3],[329,3]]},"177":{"position":[[782,3]]},"179":{"position":[[144,3]]},"194":{"position":[[4063,3]]},"218":{"position":[[1562,3],[1771,3],[1901,3],[2196,3],[2482,3]]},"237":{"position":[[509,3],[1062,3],[1172,3]]},"260":{"position":[[290,3]]},"264":{"position":[[2044,3]]}}}],["select",{"_index":208,"t":{"53":{"position":[[2270,6]]},"57":{"position":[[41,9],[76,6]]},"59":{"position":[[50,9],[93,9],[689,9],[952,6],[1349,9]]},"61":{"position":[[75,10],[176,8]]},"63":{"position":[[29,9],[326,9],[732,9],[774,9],[868,9],[2493,9],[2607,8],[2827,8],[2930,8],[3063,8]]},"111":{"position":[[90,10]]},"115":{"position":[[2312,10],[2513,8]]},"135":{"position":[[8047,8],[10178,8],[11216,8],[12971,8]]},"247":{"position":[[151,9]]}}}],["selector",{"_index":277,"t":{"59":{"position":[[311,8]]},"63":{"position":[[1432,8],[2598,8]]}}}],["self",{"_index":774,"t":{"87":{"position":[[268,5],[1253,5]]},"97":{"position":[[987,4]]},"99":{"position":[[208,5],[2118,5]]},"103":{"position":[[586,5],[1179,5],[2525,5]]},"194":{"position":[[1815,5]]}}}],["self._get_str",{"_index":1402,"t":{"194":{"position":[[916,14],[1017,14],[1190,14],[1382,14]]}}}],["self._get_str(\"decor",{"_index":898,"t":{"99":{"position":[[2047,26]]}}}],["self._reduc",{"_index":1166,"t":{"135":{"position":[[2445,13],[3803,13]]}}}],["self._set_completion_service(openaiservic",{"_index":1441,"t":{"194":{"position":[[2964,43]]}}}],["self._set_completion_service(yourllmservic",{"_index":1443,"t":{"194":{"position":[[3061,44]]}}}],["self._set_embedding_service(openaiservic",{"_index":1446,"t":{"194":{"position":[[3285,42]]}}}],["self._set_embedding_service(yourllmservic",{"_index":1451,"t":{"194":{"position":[[3730,43]]}}}],["self._set_name(\"your_llm_nam",{"_index":1398,"t":{"194":{"position":[[821,31]]}}}],["self._stat_funct",{"_index":1163,"t":{"135":{"position":[[2310,20],[3668,20]]}}}],["self.api_key",{"_index":1401,"t":{"194":{"position":[[901,12]]}}}],["self.backup_model",{"_index":1410,"t":{"194":{"position":[[1170,17]]}}}],["self.config",{"_index":1420,"t":{"194":{"position":[[1768,11],[2220,11],[2858,11]]}}}],["self.config.api_typ",{"_index":1439,"t":{"194":{"position":[[2907,20],[3020,20],[3173,22]]}}}],["self.config.decor",{"_index":915,"t":{"99":{"position":[[2718,21],[2762,21]]}}}],["self.config.embedding_api_typ",{"_index":1445,"t":{"194":{"position":[[3218,30],[3340,30],[3679,30],[3819,32]]}}}],["self.config.get(\"key1",{"_index":1724,"t":{"247":{"position":[[3392,23]]}}}],["self.config.get(\"key2",{"_index":1725,"t":{"247":{"position":[[3416,23]]}}}],["self.ctx.add_artifact",{"_index":1625,"t":{"224":{"position":[[607,22]]},"243":{"position":[[1751,22]]},"245":{"position":[[642,22]]}}}],["self.ctx.get_session_var(\"user_nam",{"_index":969,"t":{"103":{"position":[[3206,37]]}}}],["self.decor",{"_index":897,"t":{"99":{"position":[[2030,14]]}}}],["self.embedding_model",{"_index":1414,"t":{"194":{"position":[[1359,20]]}}}],["self.embedding_servic",{"_index":1448,"t":{"194":{"position":[[3386,22]]}}}],["self.event_emitter.create_post_proxy(self.alia",{"_index":912,"t":{"99":{"position":[[2595,48]]}}}],["self.injector",{"_index":1438,"t":{"194":{"position":[[2879,13]]}}}],["self.llm_module_config.api_key",{"_index":1400,"t":{"194":{"position":[[870,30]]}}}],["self.llm_module_config.backup_model",{"_index":1409,"t":{"194":{"position":[[1134,35]]}}}],["self.llm_module_config.embedding_model",{"_index":1413,"t":{"194":{"position":[[1320,38]]}}}],["self.llm_module_config.model",{"_index":1405,"t":{"194":{"position":[[975,28]]}}}],["self.model",{"_index":1406,"t":{"194":{"position":[[1004,10],[1281,11],[1482,11]]}}}],["send",{"_index":284,"t":{"59":{"position":[[632,5]]},"65":{"position":[[898,5]]},"67":{"position":[[1363,4]]},"97":{"position":[[421,5],[871,4],[1249,5]]},"99":{"position":[[3597,4]]},"103":{"position":[[1345,4],[1509,4],[1592,5]]},"107":{"position":[[440,4]]},"109":{"position":[[946,4]]},"133":{"position":[[1172,4]]},"135":{"position":[[42,4],[1339,7],[4547,7],[5690,7],[6186,7],[7109,4],[8548,7],[9946,7],[10793,7],[11790,7],[12739,7],[13510,7]]},"165":{"position":[[114,5],[196,5],[277,5],[373,5]]},"198":{"position":[[703,4]]},"200":{"position":[[1386,4]]},"264":{"position":[[571,4]]}}}],["send_from",{"_index":853,"t":{"97":{"position":[[397,10],[581,10],[818,9],[931,9]]},"124":{"position":[[790,10],[859,10]]},"126":{"position":[[643,10],[783,10],[1390,10],[1541,10]]},"128":{"position":[[368,10],[533,10]]},"264":{"position":[[1179,12],[1621,12]]}}}],["send_messag",{"_index":950,"t":{"103":{"position":[[1165,13],[1485,12]]}}}],["send_to",{"_index":365,"t":{"63":{"position":[[2326,9],[5712,9]]},"97":{"position":[[437,8],[601,8],[832,7],[945,7]]},"99":{"position":[[3505,8]]},"124":{"position":[[806,8],[878,8]]},"126":{"position":[[659,8],[802,8],[1417,8],[1560,8]]},"128":{"position":[[387,8],[560,8]]},"169":{"position":[[168,8]]},"228":{"position":[[822,9],[2338,9]]},"264":{"position":[[1200,10],[1645,10]]}}}],["sensit",{"_index":1332,"t":{"177":{"position":[[1322,10]]}}}],["sent",{"_index":436,"t":{"65":{"position":[[328,4],[1478,4]]},"71":{"position":[[482,4]]},"87":{"position":[[2344,4]]},"109":{"position":[[1134,4]]},"124":{"position":[[605,4]]},"126":{"position":[[2167,4],[2316,4],[2651,4],[2821,4]]},"128":{"position":[[1254,4],[1367,4]]},"194":{"position":[[4188,4]]},"212":{"position":[[1204,4]]}}}],["sentenc",{"_index":685,"t":{"81":{"position":[[597,8],[786,8]]},"270":{"position":[[433,8]]}}}],["sentence_transform",{"_index":1009,"t":{"111":{"position":[[207,21],[466,21]]},"115":{"position":[[965,21]]}}}],["separ",{"_index":1568,"t":{"214":{"position":[[2133,8]]},"216":{"position":[[1475,9]]}}}],["sequenc",{"_index":580,"t":{"71":{"position":[[206,8]]}}}],["sequenti",{"_index":1096,"t":{"126":{"position":[[933,13],[1680,13]]},"135":{"position":[[878,13],[5822,13],[8064,13],[10195,13],[11233,13],[12988,13]]}}}],["seri",{"_index":386,"t":{"63":{"position":[[3494,6],[3644,6],[3799,6],[3920,6],[4589,6],[4739,6],[4894,6],[5015,6],[5794,6],[5846,6],[5884,6],[5937,6],[6136,6],[6188,6],[6226,6],[6279,6],[6470,6],[6522,6],[6560,6],[6613,6]]},"71":{"position":[[179,7],[194,6],[547,6]]},"171":{"position":[[259,6],[1112,7]]},"186":{"position":[[839,6]]},"243":{"position":[[639,7],[1716,6]]},"247":{"position":[[1438,7]]}}}],["serv",{"_index":1255,"t":{"150":{"position":[[47,5]]},"204":{"position":[[44,5],[233,5],[337,7],[352,5],[541,7],[1026,6]]}}}],["server",{"_index":1492,"t":{"200":{"position":[[176,7],[285,6],[379,6],[687,6],[876,6]]},"204":{"position":[[593,6],[939,6]]},"262":{"position":[[336,6]]}}}],["servic",{"_index":534,"t":{"69":{"position":[[245,9],[1367,8]]},"87":{"position":[[925,7]]},"95":{"position":[[847,7],[1022,7]]},"186":{"position":[[92,7],[1519,8],[1763,7],[1877,7]]},"190":{"position":[[687,8],[757,7]]},"194":{"position":[[2576,7],[2633,7],[2742,7],[3126,7],[3557,7],[3596,8]]},"252":{"position":[[790,7]]},"262":{"position":[[722,7]]}}}],["session",{"_index":37,"t":{"44":{"position":[[166,7]]},"63":{"position":[[297,7],[1764,7]]},"87":{"position":[[1298,8],[1319,8],[1341,7],[1356,7],[1407,7],[1432,8],[1485,8],[1545,7],[1567,7],[1666,7],[2053,7],[2273,7],[2356,8]]},"93":{"position":[[117,7]]},"95":{"position":[[730,7],[929,7],[974,7]]},"103":{"position":[[2,7],[86,7],[196,7],[249,8],[378,9],[394,7],[531,7],[555,8],[783,8],[815,7],[1120,7],[2388,8],[2437,7],[2492,8],[2575,7],[2693,7],[2714,7],[2788,8],[2797,7],[2887,8],[2951,7],[2982,9],[3055,7],[3339,7]]},"109":{"position":[[181,7]]},"216":{"position":[[1426,7]]},"237":{"position":[[1440,7],[1466,7],[1604,7],[1822,7],[1869,7],[1902,7],[1926,7],[2067,7]]},"252":{"position":[[673,7],[872,7]]},"264":{"position":[[309,7],[528,7]]}}}],["session.experience_dir",{"_index":1140,"t":{"133":{"position":[[1525,22]]}}}],["session.max_internal_chat_round_num",{"_index":981,"t":{"109":{"position":[[0,36]]},"115":{"position":[[2547,35]]}}}],["session.rol",{"_index":33,"t":{"44":{"position":[[97,16]]},"99":{"position":[[4019,16]]},"109":{"position":[[234,14]]},"115":{"position":[[2667,13]]},"231":{"position":[[1031,16]]}}}],["session.send_message(\"hello",{"_index":802,"t":{"87":{"position":[[2089,28]]},"103":{"position":[[2095,28]]}}}],["session.send_message(user_queri",{"_index":1750,"t":{"264":{"position":[[393,32],[611,33],[665,32],[2166,32]]}}}],["session_id",{"_index":790,"t":{"87":{"position":[[1259,11],[1391,11],[1501,10]]},"95":{"position":[[788,10]]},"103":{"position":[[592,11],[799,11]]},"252":{"position":[[731,10]]}}}],["sessioneventemitt",{"_index":869,"t":{"99":{"position":[[294,20],[2202,20]]}}}],["sessioneventhandl",{"_index":1765,"t":{"264":{"position":[[2117,19]]}}}],["set",{"_index":244,"t":{"55":{"position":[[245,3]]},"67":{"position":[[558,7],[713,3],[1089,3],[1286,3],[1757,3],[2378,3]]},"69":{"position":[[113,3],[916,3],[1626,7],[1697,7]]},"71":{"position":[[1327,3]]},"73":{"position":[[578,3],[626,3],[677,3]]},"75":{"position":[[10,3],[267,3]]},"79":{"position":[[50,3],[520,3]]},"85":{"position":[[502,3],[724,3],[1612,7]]},"87":{"position":[[857,3],[1042,8],[1068,8],[1124,8],[2244,3]]},"107":{"position":[[493,7]]},"113":{"position":[[382,3],[679,3],[1143,3]]},"115":{"position":[[3231,3],[3391,3],[3564,3],[3605,3]]},"133":{"position":[[188,3],[1513,7]]},"141":{"position":[[155,3]]},"165":{"position":[[18,8]]},"167":{"position":[[271,3]]},"177":{"position":[[888,3],[1055,3],[1183,3]]},"181":{"position":[[180,3]]},"184":{"position":[[548,3],[678,3]]},"186":{"position":[[1614,3]]},"194":{"position":[[653,3],[2157,3],[4046,3]]},"202":{"position":[[327,8],[1136,8]]},"208":{"position":[[428,3],[557,3]]},"216":{"position":[[2004,3]]},"237":{"position":[[996,3],[2181,3]]},"247":{"position":[[3499,3]]},"254":{"position":[[203,3]]},"258":{"position":[[210,3]]}}}],["set_span_attribut",{"_index":626,"t":{"73":{"position":[[606,19]]}}}],["set_span_except",{"_index":627,"t":{"73":{"position":[[657,19]]}}}],["set_span_statu",{"_index":625,"t":{"73":{"position":[[561,16]]}}}],["setup",{"_index":524,"t":{"67":{"position":[[2079,6]]},"79":{"position":[[280,6]]},"200":{"position":[[503,5],[629,5]]}}}],["sever",{"_index":1124,"t":{"131":{"position":[[279,7]]},"135":{"position":[[241,7]]},"226":{"position":[[122,7]]},"247":{"position":[[33,7]]}}}],["sh",{"_index":1517,"t":{"204":{"position":[[323,2]]}}}],["shall",{"_index":516,"t":{"67":{"position":[[1829,5]]},"87":{"position":[[1648,5]]}}}],["share",{"_index":1530,"t":{"210":{"position":[[530,6],[596,6]]},"214":{"position":[[97,5],[153,7],[351,5],[685,6],[1015,6],[1063,6],[1229,6],[1248,6],[1340,5],[1540,6],[1594,6],[1672,6],[1715,6],[1794,6],[1853,6],[1900,6],[2005,6],[2109,6],[2254,6],[2315,6],[2405,6],[2562,6],[2610,6],[2747,6],[2845,6],[2968,6],[3055,6]]},"218":{"position":[[56,5],[531,5],[2014,5],[2434,5]]},"220":{"position":[[87,5]]}}}],["shared_api_key",{"_index":1399,"t":{"194":{"position":[[853,14],[942,15]]}}}],["shared_backup_model",{"_index":1408,"t":{"194":{"position":[[1112,19],[1221,19],[1244,19]]}}}],["shared_embedding_model",{"_index":1412,"t":{"194":{"position":[[1295,22],[1416,22],[1442,22]]}}}],["shared_model",{"_index":1404,"t":{"194":{"position":[[960,12],[1041,12],[1057,12]]}}}],["sharedmemoryentri",{"_index":1561,"t":{"214":{"position":[[1392,17],[1434,17],[1484,18]]}}}],["shop",{"_index":1292,"t":{"171":{"position":[[363,5],[1503,6]]}}}],["short",{"_index":861,"t":{"97":{"position":[[1573,6]]},"204":{"position":[[102,5]]}}}],["show",{"_index":165,"t":{"53":{"position":[[787,5],[2105,4]]},"63":{"position":[[753,4]]},"65":{"position":[[506,5],[1365,5],[1726,5]]},"67":{"position":[[1150,5]]},"71":{"position":[[1184,4]]},"85":{"position":[[1410,5]]},"133":{"position":[[46,4]]},"194":{"position":[[94,4]]},"202":{"position":[[206,4],[545,4]]},"204":{"position":[[119,4]]},"243":{"position":[[2860,7]]},"266":{"position":[[26,4]]}}}],["shown",{"_index":49,"t":{"47":{"position":[[99,5]]},"53":{"position":[[1952,5]]},"87":{"position":[[1947,5]]},"99":{"position":[[1498,5],[1700,5]]},"103":{"position":[[1966,5]]},"137":{"position":[[108,5]]},"212":{"position":[[384,5]]},"214":{"position":[[482,5]]},"264":{"position":[[893,5]]}}}],["sigma",{"_index":1712,"t":{"247":{"position":[[1715,5]]}}}],["sign",{"_index":1477,"t":{"198":{"position":[[242,4]]}}}],["similar",{"_index":289,"t":{"59":{"position":[[854,10],[1001,10]]},"63":{"position":[[2658,10]]},"85":{"position":[[1310,7],[2241,7]]},"131":{"position":[[413,7],[832,7],[1101,7]]},"133":{"position":[[1179,7]]},"135":{"position":[[7116,7]]},"214":{"position":[[2459,7]]}}}],["simpl",{"_index":441,"t":{"65":{"position":[[525,6]]},"99":{"position":[[702,6]]},"103":{"position":[[1928,6],[2204,6]]},"171":{"position":[[5,6]]},"177":{"position":[[80,6]]},"216":{"position":[[1674,6]]}}}],["simpli",{"_index":24,"t":{"41":{"position":[[276,6]]},"99":{"position":[[3008,6]]}}}],["simplifi",{"_index":1667,"t":{"239":{"position":[[394,12]]}}}],["singl",{"_index":848,"t":{"97":{"position":[[58,6]]},"101":{"position":[[57,6]]},"109":{"position":[[1045,6]]}}}],["situat",{"_index":1618,"t":{"220":{"position":[[18,9]]}}}],["sixth",{"_index":1114,"t":{"128":{"position":[[1853,5]]}}}],["size",{"_index":584,"t":{"71":{"position":[[463,4],[652,4],[849,4],[882,5]]},"73":{"position":[[740,4]]}}}],["skip",{"_index":159,"t":{"53":{"position":[[589,4]]},"165":{"position":[[913,5],[1015,5]]},"173":{"position":[[494,9]]}}}],["skipna",{"_index":1160,"t":{"135":{"position":[[2174,7],[3532,7]]}}}],["sklearn",{"_index":84,"t":{"49":{"position":[[494,10]]},"115":{"position":[[1263,10]]}}}],["slide",{"_index":601,"t":{"71":{"position":[[1250,7]]}}}],["slim",{"_index":688,"t":{"81":{"position":[[665,4]]}}}],["smaller",{"_index":1274,"t":{"165":{"position":[[699,7],[817,7]]}}}],["snake_cas",{"_index":885,"t":{"99":{"position":[[1108,10]]}}}],["snippet",{"_index":205,"t":{"53":{"position":[[2201,7]]},"91":{"position":[[712,8]]},"97":{"position":[[1168,7]]},"128":{"position":[[653,7]]},"135":{"position":[[1444,7],[4652,7],[8653,7],[11895,7]]},"216":{"position":[[168,8]]},"239":{"position":[[280,8],[623,7]]},"266":{"position":[[266,8]]}}}],["solut",{"_index":1128,"t":{"131":{"position":[[513,8]]}}}],["solv",{"_index":140,"t":{"53":{"position":[[206,5],[747,5]]},"57":{"position":[[136,5]]},"131":{"position":[[216,5],[355,5]]},"218":{"position":[[445,5]]}}}],["somehow",{"_index":748,"t":{"85":{"position":[[1797,7]]}}}],["sometim",{"_index":859,"t":{"97":{"position":[[1423,9]]}}}],["sorri",{"_index":1101,"t":{"128":{"position":[[447,6]]}}}],["sort",{"_index":206,"t":{"53":{"position":[[2212,4]]},"175":{"position":[[824,4]]}}}],["sourc",{"_index":427,"t":{"65":{"position":[[90,6]]},"69":{"position":[[44,6]]},"71":{"position":[[1384,7]]},"85":{"position":[[670,6]]}}}],["span",{"_index":463,"t":{"65":{"position":[[1238,4],[1299,5],[1390,4],[1758,6]]},"73":{"position":[[600,5],[651,5],[702,5],[752,5],[1012,5]]}}}],["special",{"_index":1560,"t":{"214":{"position":[[1267,7]]}}}],["specif",{"_index":720,"t":{"85":{"position":[[434,8],[2452,8]]},"103":{"position":[[1792,8],[2779,8],[2871,8]]},"124":{"position":[[174,8],[316,8]]},"126":{"position":[[48,8]]},"128":{"position":[[105,8]]},"171":{"position":[[412,8]]},"186":{"position":[[1504,8]]},"190":{"position":[[462,8],[584,8]]},"212":{"position":[[1026,13]]},"216":{"position":[[725,8],[803,8]]},"268":{"position":[[298,8]]}}}],["specifi",{"_index":73,"t":{"49":{"position":[[268,7]]},"59":{"position":[[464,9]]},"81":{"position":[[221,9]]},"87":{"position":[[731,9]]},"107":{"position":[[795,7]]},"109":{"position":[[761,7]]},"135":{"position":[[10718,7],[10931,7]]},"186":{"position":[[661,10],[1058,7],[1656,7],[1839,7]]},"194":{"position":[[4148,7]]},"202":{"position":[[475,7],[1149,9],[1300,7],[1347,7],[1612,7]]},"218":{"position":[[2095,7]]},"220":{"position":[[148,7],[212,7]]},"231":{"position":[[590,10]]},"247":{"position":[[2242,10],[2511,7],[2715,7],[3125,7],[3219,9]]}}}],["speed",{"_index":1273,"t":{"165":{"position":[[644,5]]}}}],["sql",{"_index":1602,"t":{"218":{"position":[[830,3],[1231,3]]},"264":{"position":[[1494,3]]}}}],["sql_pull_data",{"_index":372,"t":{"63":{"position":[[2863,16],[2970,16]]},"218":{"position":[[779,13],[1180,13]]},"239":{"position":[[656,13],[697,13]]}}}],["sql_pull_data(query=\"pul",{"_index":1669,"t":{"239":{"position":[[450,25]]}}}],["sql_pull_data.pi",{"_index":1612,"t":{"218":{"position":[[1683,17],[1964,17]]}}}],["sql_pull_data_from_a",{"_index":1601,"t":{"218":{"position":[[752,20],[1824,20]]}}}],["sql_pull_data_from_a(\"pul",{"_index":1604,"t":{"218":{"position":[[938,26]]}}}],["sql_pull_data_from_b",{"_index":1608,"t":{"218":{"position":[[1153,20],[1849,21]]}}}],["sql_pull_data_from_b(\"pul",{"_index":1609,"t":{"218":{"position":[[1342,26]]}}}],["sqlite_db_path",{"_index":1606,"t":{"218":{"position":[[1044,15],[1448,15],[2252,14]]}}}],["stage",{"_index":1138,"t":{"133":{"position":[[889,6]]}}}],["star",{"_index":1534,"t":{"212":{"position":[[143,4]]}}}],["start",{"_index":275,"t":{"59":{"position":[[254,5]]},"63":{"position":[[274,5],[618,5],[830,5],[1290,8],[1979,8]]},"83":{"position":[[179,5]]},"93":{"position":[[790,6]]},"95":{"position":[[686,6],[776,6]]},"109":{"position":[[1573,8]]},"133":{"position":[[14,5],[405,5],[841,5]]},"135":{"position":[[0,5],[674,8],[7743,8]]},"137":{"position":[[87,5]]},"141":{"position":[[282,8]]},"184":{"position":[[691,5],[761,5]]},"186":{"position":[[1911,5]]},"188":{"position":[[235,5],[305,5]]},"190":{"position":[[789,5],[872,5]]},"192":{"position":[[533,5],[603,5]]},"196":{"position":[[620,5],[690,5]]},"198":{"position":[[750,5],[804,5]]},"200":{"position":[[905,7],[1433,5],[1487,5]]},"204":{"position":[[585,5],[913,7],[1041,5],[1111,5]]},"206":{"position":[[466,5],[536,5]]},"208":{"position":[[570,5],[640,5]]},"216":{"position":[[2057,8]]},"224":{"position":[[439,9],[823,6]]},"228":{"position":[[514,8]]},"237":{"position":[[140,5],[380,5],[920,8],[1111,5],[1262,8],[1914,5]]},"252":{"position":[[629,6],[719,6]]},"260":{"position":[[156,5],[701,8],[782,5]]},"262":{"position":[[386,5],[712,5]]},"274":{"position":[[848,8]]}}}],["starter",{"_index":403,"t":{"63":{"position":[[3810,7],[4905,7],[5895,7],[6237,7],[6571,7]]}}}],["startup",{"_index":700,"t":{"83":{"position":[[93,7]]}}}],["state",{"_index":936,"t":{"101":{"position":[[350,6],[361,5],[409,6],[537,5],[616,5],[681,5],[732,5]]},"124":{"position":[[748,6]]},"126":{"position":[[573,6]]},"128":{"position":[[307,6]]},"214":{"position":[[671,5]]},"216":{"position":[[943,8],[1001,8]]},"264":{"position":[[1064,8],[2065,6]]}}}],["static",{"_index":117,"t":{"51":{"position":[[343,6],[602,6]]}}}],["static_config",{"_index":576,"t":{"69":{"position":[[1887,15]]}}}],["statu",{"_index":379,"t":{"63":{"position":[[3304,8]]},"65":{"position":[[389,6]]},"73":{"position":[[586,6]]},"128":{"position":[[1664,7],[1805,7],[2157,6],[2489,6],[2580,6]]},"214":{"position":[[2443,7]]},"228":{"position":[[1145,8]]}}}],["status]start",{"_index":995,"t":{"109":{"position":[[1775,19]]}}}],["std",{"_index":1687,"t":{"243":{"position":[[1430,3],[1497,3]]}}}],["step",{"_index":742,"t":{"85":{"position":[[1598,4]]},"126":{"position":[[410,5],[2627,5]]},"165":{"position":[[75,5],[1034,5],[1102,5]]},"200":{"position":[[449,6]]},"243":{"position":[[2067,5],[2956,6]]}}}],["still",{"_index":231,"t":{"53":{"position":[[3343,5]]},"85":{"position":[[396,5],[1871,5]]},"131":{"position":[[476,5]]},"165":{"position":[[835,5]]},"173":{"position":[[808,5]]},"231":{"position":[[1206,5]]}}}],["stop",{"_index":797,"t":{"87":{"position":[[1715,4],[1799,4],[1822,4],[2471,4],[2496,4]]},"103":{"position":[[2379,4],[2460,4],[2483,4]]},"194":{"position":[[1977,5]]}}}],["stop(self",{"_index":796,"t":{"87":{"position":[[1691,10]]},"103":{"position":[[2355,10]]}}}],["store",{"_index":150,"t":{"53":{"position":[[380,5]]},"59":{"position":[[1215,5]]},"87":{"position":[[803,6]]},"93":{"position":[[1053,5]]},"95":{"position":[[37,6],[466,5],[517,5],[585,5],[642,5],[723,6],[963,6],[1159,6]]},"97":{"position":[[1103,5]]},"103":{"position":[[2845,5],[2917,5]]},"107":{"position":[[41,5]]},"115":{"position":[[1640,5],[1696,5],[1773,5],[2067,5]]},"210":{"position":[[47,5],[380,6]]},"212":{"position":[[875,6]]},"214":{"position":[[652,5],[993,5],[2099,5],[2303,7]]},"224":{"position":[[929,6]]},"245":{"position":[[320,5],[562,6]]},"252":{"position":[[72,5],[409,5],[460,5],[528,5],[585,5],[666,6]]}}}],["str",{"_index":822,"t":{"91":{"position":[[434,3],[468,3]]},"93":{"position":[[547,3]]},"97":{"position":[[577,3],[628,3]]},"101":{"position":[[389,3],[405,3]]},"103":{"position":[[604,4],[1194,4],[2552,4],[3147,5]]},"171":{"position":[[1308,4],[1329,3],[1431,3],[1720,3]]},"214":{"position":[[1569,3],[1695,3]]},"224":{"position":[[1254,5]]},"226":{"position":[[648,3],[772,3]]},"231":{"position":[[696,4]]},"243":{"position":[[528,4],[549,5]]},"247":{"position":[[1760,3],[1867,3],[2153,3]]}}}],["strawman",{"_index":1619,"t":{"222":{"position":[[53,8]]}}}],["stream",{"_index":1422,"t":{"194":{"position":[[1854,7],[2161,6]]}}}],["string",{"_index":850,"t":{"97":{"position":[[233,6],[778,6]]},"115":{"position":[[357,7]]},"128":{"position":[[1915,7]]},"194":{"position":[[2101,8]]},"216":{"position":[[506,8]]},"224":{"position":[[1028,6]]},"226":{"position":[[508,6],[540,6]]},"247":{"position":[[2180,6]]}}}],["structur",{"_index":843,"t":{"95":{"position":[[342,10]]},"99":{"position":[[4500,10],[4556,10]]},"139":{"position":[[137,10]]},"190":{"position":[[522,10]]},"214":{"position":[[2147,10]]},"216":{"position":[[338,9],[395,10]]},"264":{"position":[[931,10]]},"272":{"position":[[719,9]]}}}],["studio",{"_index":1316,"t":{"173":{"position":[[706,6]]}}}],["style",{"_index":884,"t":{"99":{"position":[[1099,5]]}}}],["sub",{"_index":450,"t":{"65":{"position":[[719,3]]}}}],["subject",{"_index":421,"t":{"63":{"position":[[6027,7],[6369,7],[6703,7]]}}}],["submit",{"_index":1643,"t":{"228":{"position":[[3417,10]]}}}],["subnet",{"_index":735,"t":{"85":{"position":[[1350,9],[1420,6],[1523,7],[1681,6],[2056,6],[2121,6],[2195,7],[2334,7]]}}}],["subprocess",{"_index":659,"t":{"77":{"position":[[328,10]]}}}],["subsequ",{"_index":307,"t":{"59":{"position":[[1321,10]]}}}],["succeed",{"_index":381,"t":{"63":{"position":[[3387,9],[4482,9]]},"109":{"position":[[1869,9],[2272,9],[2656,9]]},"135":{"position":[[5164,9],[5585,9],[9182,9],[9688,9],[12355,9],[12647,9]]},"228":{"position":[[1228,9],[1811,9]]}}}],["success",{"_index":380,"t":{"63":{"position":[[3313,7]]},"109":{"position":[[1795,7]]},"128":{"position":[[1822,8],[2463,11],[2504,7]]},"135":{"position":[[5078,7],[9074,8],[12247,8]]},"228":{"position":[[1154,7]]}}}],["successfulli",{"_index":198,"t":{"53":{"position":[[2058,12],[2319,12],[2428,12],[2615,12]]},"63":{"position":[[1456,12],[1582,12],[1717,13]]},"81":{"position":[[1108,12]]},"101":{"position":[[663,13]]},"126":{"position":[[1337,12],[2747,12]]},"128":{"position":[[2422,12]]},"194":{"position":[[4033,12]]}}}],["such",{"_index":15,"t":{"41":{"position":[[171,4]]},"85":{"position":[[935,4]]},"97":{"position":[[1151,4]]},"109":{"position":[[891,4]]},"124":{"position":[[415,4],[1137,4]]},"165":{"position":[[718,4]]},"169":{"position":[[375,4]]},"173":{"position":[[905,4]]},"186":{"position":[[918,5]]},"198":{"position":[[911,4]]},"204":{"position":[[508,5]]},"210":{"position":[[236,4]]},"216":{"position":[[417,4],[823,4]]},"231":{"position":[[737,4]]},"243":{"position":[[2804,4]]},"245":{"position":[[195,4]]},"262":{"position":[[278,4]]},"264":{"position":[[1335,4]]}}}],["summar",{"_index":143,"t":{"53":{"position":[[239,9],[818,13],[915,10],[1096,11],[1172,14],[1867,14],[1913,13],[3247,10],[3441,13],[3548,13]]},"55":{"position":[[77,14],[218,14]]},"107":{"position":[[638,10]]},"115":{"position":[[1960,10],[2385,10]]},"126":{"position":[[166,9]]},"133":{"position":[[963,13]]},"135":{"position":[[6432,10]]},"165":{"position":[[337,10]]},"264":{"position":[[1441,11]]}}}],["summari",{"_index":169,"t":{"53":{"position":[[939,7],[1021,7],[1064,7],[3012,7],[3151,7],[3315,7]]},"165":{"position":[[383,7],[426,7]]}}}],["super().__init__(config",{"_index":903,"t":{"99":{"position":[[2304,24]]}}}],["super().mean(axi",{"_index":1159,"t":{"135":{"position":[[2155,18],[3513,18]]}}}],["support",{"_index":102,"t":{"49":{"position":[[792,7]]},"65":{"position":[[15,8]]},"67":{"position":[[456,7]]},"75":{"position":[[688,8]]},"77":{"position":[[11,8]]},"79":{"position":[[233,8]]},"111":{"position":[[18,7],[159,7],[658,9]]},"113":{"position":[[42,7],[149,9],[258,7],[353,7],[905,7],[1037,7],[1088,7]]},"115":{"position":[[3120,9],[3380,7]]},"184":{"position":[[614,7]]},"194":{"position":[[3203,11],[3459,7],[3859,11]]},"198":{"position":[[326,9]]},"200":{"position":[[958,9]]},"208":{"position":[[493,7]]},"216":{"position":[[993,7],[1313,8]]},"231":{"position":[[888,7]]},"235":{"position":[[40,9],[155,7]]},"237":{"position":[[1660,9]]},"243":{"position":[[1943,7]]},"245":{"position":[[834,7]]},"258":{"position":[[107,8]]},"262":{"position":[[979,7]]}}}],["suppos",{"_index":1484,"t":{"198":{"position":[[828,7]]}}}],["sure",{"_index":1308,"t":{"173":{"position":[[12,4]]},"177":{"position":[[1022,4],[1350,4]]},"262":{"position":[[327,4],[667,4],[831,4]]}}}],["switch",{"_index":1279,"t":{"167":{"position":[[130,8]]},"169":{"position":[[340,6]]}}}],["syntact",{"_index":1115,"t":{"128":{"position":[[2077,13]]}}}],["syntax",{"_index":122,"t":{"51":{"position":[[465,6]]},"173":{"position":[[249,6],[652,6],[769,6]]},"175":{"position":[[756,6]]}}}],["system",{"_index":23,"t":{"41":{"position":[[266,6]]},"67":{"position":[[1190,7],[1210,6],[1307,7]]},"69":{"position":[[62,8]]},"81":{"position":[[995,7]]},"85":{"position":[[2730,8]]},"95":{"position":[[1262,7]]},"99":{"position":[[93,7],[540,6]]},"113":{"position":[[266,6],[361,6],[415,6],[707,6],[797,6]]},"133":{"position":[[1270,6]]},"214":{"position":[[2494,6]]},"260":{"position":[[902,7]]}}}],["tabl",{"_index":1052,"t":{"115":{"position":[[397,5]]},"218":{"position":[[987,7],[1391,7]]},"237":{"position":[[1642,5]]},"239":{"position":[[498,7]]}}}],["tag",{"_index":415,"t":{"63":{"position":[[4207,5],[5302,5]]}}}],["take",{"_index":518,"t":{"67":{"position":[[1876,4]]},"103":{"position":[[1076,4]]},"133":{"position":[[1037,4]]},"165":{"position":[[576,4]]},"171":{"position":[[1553,5]]},"200":{"position":[[184,6],[582,6]]}}}],["talk",{"_index":369,"t":{"63":{"position":[[2717,4]]},"126":{"position":[[78,4]]}}}],["target",{"_index":252,"t":{"57":{"position":[[125,7]]},"67":{"position":[[648,6]]},"69":{"position":[[1905,8]]}}}],["task",{"_index":438,"t":{"65":{"position":[[403,5],[532,5],[614,4],[723,5],[989,4],[1043,4],[1112,4],[1168,4]]},"67":{"position":[[381,4]]},"87":{"position":[[131,6]]},"99":{"position":[[1760,6]]},"124":{"position":[[325,5]]},"128":{"position":[[114,5],[124,4]]},"171":{"position":[[211,6],[421,4]]},"212":{"position":[[374,6],[786,5]]},"214":{"position":[[766,6]]},"216":{"position":[[96,6],[300,6],[697,6],[862,4],[927,4],[1786,6],[1928,6]]},"239":{"position":[[165,6]]},"264":{"position":[[1328,6],[1550,4]]},"270":{"position":[[244,6]]}}}],["task_weaver.log",{"_index":344,"t":{"63":{"position":[[1374,15],[2553,15]]}}}],["taskweav",{"_index":157,"t":{"53":{"position":[[515,11]]},"57":{"position":[[3,11]]},"59":{"position":[[263,10]]},"63":{"position":[[286,10],[628,10],[836,10],[1237,11],[1254,11],[1819,10],[1926,11],[1943,11],[6405,11]]},"65":{"position":[[0,10],[304,11]]},"67":{"position":[[1342,10],[2150,11],[2292,10]]},"73":{"position":[[23,10],[140,10],[160,11],[303,10]]},"75":{"position":[[360,10]]},"77":{"position":[[0,10],[346,10],[468,10]]},"79":{"position":[[222,10],[1038,10],[1086,10]]},"81":{"position":[[1258,10]]},"87":{"position":[[43,10],[429,10],[888,10],[1629,10],[1724,10],[1831,10],[2442,10],[2505,10]]},"89":{"position":[[51,10],[165,11]]},"91":{"position":[[35,10]]},"93":{"position":[[36,10],[96,10],[837,10],[1008,11]]},"95":{"position":[[427,10]]},"97":{"position":[[30,10]]},"99":{"position":[[25,10],[162,11],[1583,10],[3684,11]]},"101":{"position":[[29,10],[103,10]]},"103":{"position":[[64,10],[222,10],[1042,11]]},"109":{"position":[[344,10],[1520,11],[1537,11],[2462,11]]},"111":{"position":[[3,11]]},"115":{"position":[[152,11]]},"131":{"position":[[202,10],[238,10],[692,10]]},"133":{"position":[[435,11],[826,10],[896,10],[1058,10],[1196,11]]},"135":{"position":[[30,11],[126,11],[152,10],[259,10],[620,10],[638,11],[6210,10],[6394,11],[7205,11],[7231,10],[7689,10],[7707,11],[7860,12],[10817,10],[11029,12],[13534,10]]},"160":{"position":[[56,11]]},"165":{"position":[[27,10]]},"167":{"position":[[37,10],[398,10]]},"171":{"position":[[28,10],[91,11],[535,10],[610,10],[1826,10]]},"173":{"position":[[186,10],[797,10]]},"179":{"position":[[50,11],[328,10],[383,10]]},"181":{"position":[[45,10]]},"184":{"position":[[697,10],[722,11]]},"186":{"position":[[1403,10],[1917,10],[1942,11]]},"188":{"position":[[241,10],[266,11]]},"190":{"position":[[795,10],[820,10]]},"192":{"position":[[539,10],[564,11]]},"194":{"position":[[56,11],[137,11]]},"196":{"position":[[626,10],[651,11]]},"198":{"position":[[756,10]]},"200":{"position":[[244,11],[1439,10]]},"204":{"position":[[1047,10],[1072,11]]},"206":{"position":[[472,10],[497,11]]},"208":{"position":[[576,10],[601,11]]},"210":{"position":[[518,11],[624,11]]},"212":{"position":[[2,10],[101,11]]},"216":{"position":[[0,10],[350,10],[539,10],[746,10],[967,10],[1126,10],[1302,10],[1501,10],[1714,10],[1949,10],[2138,11]]},"218":{"position":[[465,10]]},"222":{"position":[[72,11]]},"228":{"position":[[461,11],[478,11],[3017,11]]},"231":{"position":[[45,10],[1271,10]]},"237":{"position":[[39,11],[73,10],[275,10],[303,10],[390,10],[867,11],[884,11],[1029,11],[1208,10],[1226,11],[1322,10],[1673,10],[2110,10]]},"239":{"position":[[175,11]]},"243":{"position":[[99,11],[191,10],[2106,10]]},"245":{"position":[[261,10]]},"250":{"position":[[16,10],[147,10],[187,10],[278,10]]},"252":{"position":[[0,10],[370,10]]},"254":{"position":[[15,11]]},"260":{"position":[[24,10],[79,10],[166,10],[648,11],[665,11],[788,11],[825,10],[938,10],[1080,11]]},"262":{"position":[[788,10]]},"264":{"position":[[19,10],[589,10],[750,11],[815,11]]},"266":{"position":[[46,10]]},"270":{"position":[[30,10],[538,10],[784,10],[1026,10],[1339,10]]},"272":{"position":[[609,11]]},"274":{"position":[[670,10],[794,10],[812,11]]}}}],["taskweaver'",{"_index":0,"t":{"41":{"position":[[0,12]]},"239":{"position":[[52,12]]}}}],["taskweaver.app.app",{"_index":799,"t":{"87":{"position":[[1965,18]]},"264":{"position":[[94,18]]}}}],["taskweaver.ext_rol",{"_index":874,"t":{"99":{"position":[[609,19]]}}}],["taskweaver.ext_role.echo.echo.echo",{"_index":889,"t":{"99":{"position":[[1292,34]]}}}],["taskweaver.llm.bas",{"_index":1391,"t":{"194":{"position":[[298,19],[382,19]]}}}],["taskweaver.llm.util",{"_index":1392,"t":{"194":{"position":[[468,19]]}}}],["taskweaver.log",{"_index":1068,"t":{"115":{"position":[[1592,14]]}}}],["taskweaver.module.trac",{"_index":620,"t":{"73":{"position":[[362,25],[403,25]]}}}],["taskweaver.plugin",{"_index":1621,"t":{"224":{"position":[[288,17],[1130,17]]},"243":{"position":[[372,17],[2139,17]]}}}],["taskweaver.plugin.context",{"_index":1322,"t":{"177":{"position":[[305,25]]}}}],["taskweaver/ces_container/dockerfil",{"_index":708,"t":{"83":{"position":[[964,36]]}}}],["taskweaver/code_interpreter/code_verification.pi",{"_index":125,"t":{"51":{"position":[[634,49]]}}}],["taskweaver/docker/ces_container/dockerfil",{"_index":682,"t":{"81":{"position":[[340,42]]}}}],["taskweaver/ext_role/role_nam",{"_index":879,"t":{"99":{"position":[[904,29]]}}}],["taskweaver/llm",{"_index":1387,"t":{"194":{"position":[[202,14]]}}}],["taskweaver/llm/__init__.pi",{"_index":1433,"t":{"194":{"position":[[2587,26]]}}}],["taskweaver/memory/memory.pi",{"_index":1527,"t":{"210":{"position":[[171,28]]}}}],["taskweaver/planner/planner.pi",{"_index":1574,"t":{"214":{"position":[[3001,30]]}}}],["taskweaver/project",{"_index":1787,"t":{"272":{"position":[[777,18]]}}}],["taskweaver/requirements.txt",{"_index":680,"t":{"81":{"position":[[238,27]]}}}],["taskweaver/script",{"_index":697,"t":{"81":{"position":[[1006,18]]}}}],["taskweaver/scripts/build.ps1",{"_index":696,"t":{"81":{"position":[[938,28]]}}}],["taskweaver/scripts/build_executor.sh",{"_index":695,"t":{"81":{"position":[[898,36]]}}}],["taskweaver/trac",{"_index":513,"t":{"67":{"position":[[1787,19]]}}}],["taskweaver/tracing_configure/dock",{"_index":531,"t":{"69":{"position":[[142,36]]}}}],["taskweaver_config.json",{"_index":31,"t":{"44":{"position":[[71,23]]},"49":{"position":[[136,23]]},"59":{"position":[[508,22]]},"75":{"position":[[322,22]]},"79":{"position":[[105,22],[544,22]]},"95":{"position":[[365,24]]},"99":{"position":[[3741,22],[3805,22]]},"141":{"position":[[201,23]]},"167":{"position":[[335,22]]},"184":{"position":[[148,22]]},"186":{"position":[[204,22]]},"188":{"position":[[87,22]]},"190":{"position":[[106,22]]},"192":{"position":[[250,23]]},"194":{"position":[[3885,22]]},"196":{"position":[[347,23]]},"198":{"position":[[418,22]]},"200":{"position":[[1046,22]]},"202":{"position":[[343,22],[444,22],[575,22],[1396,23]]},"204":{"position":[[671,23],[726,23]]},"206":{"position":[[252,23]]},"208":{"position":[[76,22]]},"231":{"position":[[1126,23]]},"252":{"position":[[308,24]]},"254":{"position":[[131,22],[239,22]]},"258":{"position":[[252,22]]},"264":{"position":[[173,22]]},"272":{"position":[[536,22]]}}}],["taskweaver_gid=$(id",{"_index":1784,"t":{"272":{"position":[[311,19]]},"274":{"position":[[303,19]]}}}],["taskweaver_uid=$(id",{"_index":1783,"t":{"272":{"position":[[237,19]]},"274":{"position":[[229,19]]}}}],["taskweaverapp",{"_index":768,"t":{"87":{"position":[[4,13],[140,13],[1189,13],[1921,13],[1991,13],[2183,13]]},"95":{"position":[[116,13],[275,13]]},"103":{"position":[[454,13]]},"264":{"position":[[120,13],[492,13]]}}}],["taskweaverapp(app_dir=\"path/to/project",{"_index":800,"t":{"87":{"position":[[2011,41]]}}}],["taskweaverapp(app_dir=app_dir",{"_index":1748,"t":{"264":{"position":[[278,30]]}}}],["taskweaverapp(object",{"_index":772,"t":{"87":{"position":[[231,22]]}}}],["taskweaverapp.__init__",{"_index":770,"t":{"87":{"position":[[189,22]]}}}],["taskweavercontainers/taskweav",{"_index":676,"t":{"79":{"position":[[939,31],[1220,31]]},"270":{"position":[[66,31],[251,31],[568,31],[689,31],[957,31],[1265,31]]},"272":{"position":[[464,31]]},"274":{"position":[[446,31]]}}}],["taskweaverev",{"_index":958,"t":{"103":{"position":[[2051,17]]}}}],["teach",{"_index":1093,"t":{"126":{"position":[[342,5],[451,5]]},"128":{"position":[[191,5]]}}}],["telemetrylogg",{"_index":867,"t":{"99":{"position":[[244,16],[2152,16]]},"103":{"position":[[663,16]]}}}],["tell",{"_index":114,"t":{"51":{"position":[[274,4]]},"126":{"position":[[19,5]]},"128":{"position":[[26,5]]},"171":{"position":[[382,7],[1757,4]]},"173":{"position":[[564,4]]},"175":{"position":[[488,4]]}}}],["tell_jok",{"_index":1307,"t":{"171":{"position":[[1726,10]]}}}],["temp_context",{"_index":1323,"t":{"177":{"position":[[338,12],[356,14]]}}}],["temp_ctx",{"_index":1324,"t":{"177":{"position":[[374,9]]}}}],["temperatur",{"_index":1423,"t":{"194":{"position":[[1875,12]]}}}],["templat",{"_index":1620,"t":{"224":{"position":[[244,8]]}}}],["temporari",{"_index":1328,"t":{"177":{"position":[[527,9]]}}}],["term",{"_index":1120,"t":{"131":{"position":[[159,4]]}}}],["termin",{"_index":984,"t":{"109":{"position":[[197,11]]},"198":{"position":[[740,9]]},"200":{"position":[[1423,9]]},"204":{"position":[[371,8]]},"237":{"position":[[241,9]]},"270":{"position":[[485,8]]}}}],["test",{"_index":764,"t":{"85":{"position":[[2644,7]]},"111":{"position":[[385,6]]},"194":{"position":[[3996,4]]},"198":{"position":[[682,4]]},"200":{"position":[[1365,4]]},"262":{"position":[[73,7]]},"266":{"position":[[167,7]]}}}],["text",{"_index":814,"t":{"91":{"position":[[92,4],[216,4],[734,5]]},"97":{"position":[[491,4],[751,4],[1137,4]]},"99":{"position":[[4280,4],[4366,4]]},"103":{"position":[[1565,4]]},"111":{"position":[[406,4],[434,4]]},"115":{"position":[[886,4],[3076,4]]},"124":{"position":[[1110,4]]},"135":{"position":[[7071,4]]},"171":{"position":[[284,4],[1379,4],[1425,5]]},"216":{"position":[[501,4]]},"222":{"position":[[115,4]]},"224":{"position":[[1248,5]]},"226":{"position":[[460,4],[637,4],[701,4],[805,4]]},"228":{"position":[[621,4],[700,4],[792,4],[880,4],[955,4],[1035,4],[1676,4],[2172,4],[2251,4],[2379,4],[2714,4],[3041,4]]},"231":{"position":[[824,5]]},"233":{"position":[[299,7]]}}}],["text_messag",{"_index":849,"t":{"97":{"position":[[206,12]]}}}],["theori",{"_index":1552,"t":{"214":{"position":[[397,7]]}}}],["therefor",{"_index":163,"t":{"53":{"position":[[709,10]]},"95":{"position":[[1091,10]]},"103":{"position":[[296,10]]},"131":{"position":[[577,10]]},"233":{"position":[[486,10]]}}}],["thing",{"_index":233,"t":{"53":{"position":[[3406,5]]}}}],["think",{"_index":1135,"t":{"133":{"position":[[601,5]]},"135":{"position":[[4403,5]]}}}],["third",{"_index":1097,"t":{"126":{"position":[[2590,5],[2637,5]]},"128":{"position":[[1627,5]]},"218":{"position":[[2181,6]]}}}],["though",{"_index":1539,"t":{"212":{"position":[[411,6]]}}}],["thought",{"_index":374,"t":{"63":{"position":[[3085,9]]},"91":{"position":[[283,10],[588,10]]},"128":{"position":[[602,7],[1526,7]]},"135":{"position":[[1402,9],[4610,9],[8611,9],[11853,9]]}}}],["thousand",{"_index":1290,"t":{"171":{"position":[[343,9],[1483,9]]}}}],["three",{"_index":448,"t":{"65":{"position":[[656,5]]}}}],["through",{"_index":458,"t":{"65":{"position":[[1031,7]]},"165":{"position":[[53,7]]},"216":{"position":[[154,7]]},"237":{"position":[[84,7],[439,7]]},"243":{"position":[[2045,7]]},"260":{"position":[[214,7]]},"264":{"position":[[1598,7]]}}}],["tiktoken",{"_index":487,"t":{"67":{"position":[[316,8],[426,8],[828,8]]}}}],["time",{"_index":191,"t":{"53":{"position":[[1590,4]]},"57":{"position":[[417,5]]},"65":{"position":[[253,4]]},"71":{"position":[[174,4],[189,4],[542,4]]},"83":{"position":[[101,4]]},"103":{"position":[[360,4],[3314,5]]},"107":{"position":[[283,6]]},"131":{"position":[[388,5]]},"133":{"position":[[1156,5]]},"141":{"position":[[274,4]]},"165":{"position":[[529,5],[588,5]]},"171":{"position":[[254,4],[1107,4]]},"243":{"position":[[634,4],[1711,4]]},"247":{"position":[[1433,4]]},"264":{"position":[[557,5]]}}}],["time_col_nam",{"_index":1301,"t":{"171":{"position":[[1293,14]]},"243":{"position":[[513,14],[833,14]]},"247":{"position":[[1740,13]]}}}],["time_col_name=\"t",{"_index":1673,"t":{"239":{"position":[[562,19]]}}}],["time_seri",{"_index":1605,"t":{"218":{"position":[[975,11],[1379,11]]},"239":{"position":[[486,11]]}}}],["timebucket",{"_index":1210,"t":{"135":{"position":[[9250,10],[9756,10],[10685,10],[10904,10]]}}}],["timelin",{"_index":445,"t":{"65":{"position":[[598,8]]}}}],["timestamp",{"_index":583,"t":{"71":{"position":[[249,12]]}}}],["tip",{"_index":929,"t":{"99":{"position":[[4078,3]]},"115":{"position":[[164,3],[2990,3],[3034,3],[3268,3],[3373,3]]},"124":{"position":[[1098,3]]},"126":{"position":[[1984,3]]},"128":{"position":[[1085,3]]},"131":{"position":[[752,4],[955,3]]},"133":{"position":[[1123,4]]},"139":{"position":[[449,3]]},"190":{"position":[[285,3]]},"196":{"position":[[509,3]]},"198":{"position":[[305,3]]},"200":{"position":[[937,3]]},"202":{"position":[[1594,3]]},"204":{"position":[[411,3]]},"208":{"position":[[269,3]]},"214":{"position":[[1094,3]]},"237":{"position":[[2101,3]]},"243":{"position":[[2473,3]]},"247":{"position":[[985,3]]},"264":{"position":[[2025,3]]}}}],["tl",{"_index":566,"t":{"69":{"position":[[1310,4]]}}}],["today",{"_index":1028,"t":{"113":{"position":[[0,6]]}}}],["todo",{"_index":689,"t":{"81":{"position":[[676,5]]}}}],["togeth",{"_index":1043,"t":{"113":{"position":[[1219,8]]}}}],["token",{"_index":260,"t":{"57":{"position":[[336,5],[375,5]]},"65":{"position":[[451,6],[1503,6]]},"67":{"position":[[358,6],[468,10],[638,9]]},"71":{"position":[[1209,5]]}}}],["tongyi",{"_index":1258,"t":{"154":{"position":[[8,7]]},"206":{"position":[[5,7]]}}}],["tool",{"_index":653,"t":{"75":{"position":[[649,4]]},"177":{"position":[[33,4]]},"239":{"position":[[112,5]]}}}],["top",{"_index":200,"t":{"53":{"position":[[2114,3],[2281,3],[2892,3]]},"59":{"position":[[963,3]]},"63":{"position":[[2620,3]]}}}],["top_5_largest",{"_index":224,"t":{"53":{"position":[[2812,16]]}}}],["top_p",{"_index":1427,"t":{"194":{"position":[[1946,6]]}}}],["topolog",{"_index":1535,"t":{"212":{"position":[[148,9]]}}}],["toy",{"_index":501,"t":{"67":{"position":[[1178,3],[1206,3]]}}}],["tpu",{"_index":1467,"t":{"196":{"position":[[128,3]]}}}],["trace",{"_index":424,"t":{"65":{"position":[[24,7],[142,5],[514,5],[1266,6],[1645,6],[1680,6],[1795,6]]},"67":{"position":[[0,7],[42,8],[547,7],[871,7],[1119,8],[1182,7],[1372,6],[1479,6],[1652,6]]},"69":{"position":[[1387,7],[1606,6]]},"71":{"position":[[56,6],[668,6],[722,6]]},"73":{"position":[[108,8],[451,7],[515,7],[871,5],[935,8],[1047,5]]},"99":{"position":[[261,8],[270,8],[2169,8],[2178,8],[2337,8]]},"103":{"position":[[680,8],[689,8],[933,8],[946,8]]},"216":{"position":[[1581,7]]}}}],["traceback",{"_index":1153,"t":{"135":{"position":[[1963,9],[3321,9]]}}}],["tracing.en",{"_index":493,"t":{"67":{"position":[[930,18]]}}}],["tracing.enabled=tru",{"_index":489,"t":{"67":{"position":[[570,20]]}}}],["tracing.endpoint",{"_index":495,"t":{"67":{"position":[[983,19],[2386,16]]}}}],["tracing.export",{"_index":494,"t":{"67":{"position":[[955,19]]}}}],["tracing.tokenizer_target_model",{"_index":491,"t":{"67":{"position":[[721,30],[1028,33]]}}}],["tracing_decor",{"_index":631,"t":{"73":{"position":[[795,17],[1077,18]]}}}],["tracing_decorator_non_class",{"_index":633,"t":{"73":{"position":[[839,28]]}}}],["traffic",{"_index":744,"t":{"85":{"position":[[1647,7],[1858,7],[2177,7],[2300,7]]}}}],["train",{"_index":1655,"t":{"233":{"position":[[105,7]]}}}],["transact",{"_index":1572,"t":{"214":{"position":[[2529,12]]}}}],["transform",{"_index":686,"t":{"81":{"position":[[606,12],[795,12]]},"115":{"position":[[3449,9]]},"270":{"position":[[442,12]]}}}],["translat",{"_index":725,"t":{"85":{"position":[[583,11]]}}}],["treat",{"_index":327,"t":{"63":{"position":[[461,7]]}}}],["tree",{"_index":123,"t":{"51":{"position":[[472,5]]}}}],["tri",{"_index":1193,"t":{"135":{"position":[[6657,5]]},"165":{"position":[[674,3]]},"186":{"position":[[811,3]]},"243":{"position":[[1136,4],[1302,4]]}}}],["trigger",{"_index":285,"t":{"59":{"position":[[717,10]]},"63":{"position":[[2516,10]]}}}],["troubleshoot",{"_index":761,"t":{"85":{"position":[[2553,15]]}}}],["true",{"_index":72,"t":{"49":{"position":[[97,4]]},"55":{"position":[[317,5]]},"67":{"position":[[949,5]]},"69":{"position":[[1325,4]]},"87":{"position":[[864,5]]},"93":{"position":[[726,4]]},"113":{"position":[[320,5],[697,5],[1161,5]]},"115":{"position":[[237,4],[262,4]]},"124":{"position":[[716,4]]},"126":{"position":[[513,4]]},"128":{"position":[[257,4]]},"133":{"position":[[292,5]]},"141":{"position":[[162,4]]},"171":{"position":[[1198,8]]},"194":{"position":[[1869,5]]},"226":{"position":[[394,4],[409,4],[662,4]]},"231":{"position":[[416,4],[560,4]]},"243":{"position":[[723,6]]},"247":{"position":[[204,5],[1302,4],[1522,6],[1627,4],[1774,4],[1881,4],[3528,5],[3718,4]]}}}],["tsinghua",{"_index":1265,"t":{"156":{"position":[[52,8]]},"192":{"position":[[49,8]]}}}],["turbo",{"_index":1504,"t":{"200":{"position":[[1165,6]]},"202":{"position":[[748,5],[1716,5]]}}}],["turn",{"_index":1118,"t":{"128":{"position":[[2324,6]]}}}],["tutori",{"_index":1134,"t":{"133":{"position":[[20,9]]},"173":{"position":[[64,8]]},"194":{"position":[[76,9]]},"216":{"position":[[2032,8]]},"222":{"position":[[8,9]]},"243":{"position":[[2463,9]]}}}],["two",{"_index":106,"t":{"51":{"position":[[40,3]]},"53":{"position":[[871,3],[1807,3],[2975,3]]},"55":{"position":[[30,3]]},"57":{"position":[[156,3]]},"77":{"position":[[20,3],[141,3]]},"97":{"position":[[171,3],[716,3]]},"99":{"position":[[137,3],[812,3]]},"113":{"position":[[1329,3]]},"124":{"position":[[20,3],[954,3]]},"128":{"position":[[1225,3]]},"173":{"position":[[100,3]]},"210":{"position":[[346,3],[662,3]]},"214":{"position":[[169,3]]},"218":{"position":[[121,3],[421,3],[617,3],[1527,3],[2002,3],[2301,3],[2691,3],[2753,3]]},"224":{"position":[[880,3]]},"239":{"position":[[643,3]]},"241":{"position":[[18,3]]},"243":{"position":[[144,3]]},"270":{"position":[[10,3]]}}}],["type",{"_index":88,"t":{"49":{"position":[[537,10]]},"53":{"position":[[2687,7],[2829,7]]},"91":{"position":[[236,5],[246,4],[438,5],[550,5]]},"103":{"position":[[1801,4],[2247,4]]},"111":{"position":[[129,4],[181,6]]},"115":{"position":[[682,4],[939,4],[1306,10]]},"124":{"position":[[24,5],[336,5],[958,5],[1092,5]]},"126":{"position":[[846,5],[1025,5],[1171,5],[1593,5],[1772,5],[1918,5]]},"128":{"position":[[596,5],[731,5],[869,5],[907,5],[950,5],[992,5]]},"133":{"position":[[668,6]]},"177":{"position":[[1317,4],[1364,4]]},"194":{"position":[[3168,4],[3814,4]]},"210":{"position":[[666,5]]},"214":{"position":[[757,5],[777,6],[911,4],[984,4],[1003,4],[1088,5],[1503,5],[1528,4],[2589,4],[2783,5],[2909,4]]},"226":{"position":[[642,5],[766,5]]},"231":{"position":[[679,4],[731,5]]},"237":{"position":[[1049,4],[1158,4]]},"243":{"position":[[1937,5]]},"245":{"position":[[828,5]]},"247":{"position":[[580,5],[784,5],[1601,5],[1754,5],[1861,5],[1972,5],[2147,5]]},"264":{"position":[[1726,7],[1836,7],[1941,7]]}}}],["type:dv",{"_index":402,"t":{"63":{"position":[[3762,10],[4857,10]]}}}],["type=\"df",{"_index":1628,"t":{"224":{"position":[[679,10]]},"243":{"position":[[1910,10]]},"245":{"position":[[801,10]]}}}],["type=bind,source=,target=/app/taskweaver/loc",{"_index":1788,"t":{"274":{"position":[[380,63]]}}}],["type=bind,source=,target=/app/taskweaver/project",{"_index":1786,"t":{"272":{"position":[[388,73]]}}}],["typedetermin",{"_index":1556,"t":{"214":{"position":[[857,16]]}}}],["typic",{"_index":492,"t":{"67":{"position":[[845,7]]},"95":{"position":[[316,7]]},"99":{"position":[[1081,9]]},"165":{"position":[[38,9]]},"167":{"position":[[14,9]]},"169":{"position":[[11,9]]},"171":{"position":[[107,7]]},"173":{"position":[[239,9],[626,9]]},"175":{"position":[[556,9],[647,9],[733,7]]},"179":{"position":[[222,9],[286,9]]},"181":{"position":[[22,9]]},"212":{"position":[[1045,9]]},"218":{"position":[[2352,9]]},"224":{"position":[[739,7]]},"252":{"position":[[244,9]]}}}],["u",{"_index":1234,"t":{"135":{"position":[[13379,1]]},"262":{"position":[[503,1]]},"272":{"position":[[258,2]]},"274":{"position":[[250,2]]}}}],["ui",{"_index":551,"t":{"69":{"position":[[594,2],[673,2]]},"71":{"position":[[1558,2]]},"260":{"position":[[811,2]]},"262":{"position":[[34,2],[129,3],[220,2],[1017,3],[1059,3]]},"270":{"position":[[1040,2],[1354,2]]}}}],["uncom",{"_index":1624,"t":{"224":{"position":[[576,9]]},"272":{"position":[[265,9],[339,9]]},"274":{"position":[[257,9],[331,9]]}}}],["undefin",{"_index":1318,"t":{"175":{"position":[[160,10]]}}}],["under",{"_index":1591,"t":{"216":{"position":[[1664,5]]},"247":{"position":[[259,5]]},"274":{"position":[[620,5]]}}}],["underscor",{"_index":1081,"t":{"115":{"position":[[3519,11]]},"139":{"position":[[464,11]]}}}],["understand",{"_index":642,"t":{"75":{"position":[[167,13]]},"85":{"position":[[2413,10]]},"124":{"position":[[990,10]]},"126":{"position":[[1998,10]]},"128":{"position":[[1138,10]]},"212":{"position":[[982,10]]},"214":{"position":[[1735,13],[1779,10]]},"216":{"position":[[1636,10]]},"226":{"position":[[58,10]]},"243":{"position":[[2595,10],[2657,10]]},"264":{"position":[[916,10]]}}}],["unifi",{"_index":816,"t":{"91":{"position":[[168,7]]},"198":{"position":[[22,7]]},"200":{"position":[[24,7]]}}}],["uniqu",{"_index":821,"t":{"91":{"position":[[391,6]]},"93":{"position":[[351,6]]},"97":{"position":[[374,6]]},"101":{"position":[[250,6]]}}}],["unit",{"_index":464,"t":{"65":{"position":[[1246,4]]},"101":{"position":[[167,4]]},"239":{"position":[[16,5]]}}}],["untrust",{"_index":639,"t":{"75":{"position":[[114,9]]},"77":{"position":[[719,9]]}}}],["unus",{"_index":306,"t":{"59":{"position":[[1297,6]]}}}],["up",{"_index":497,"t":{"67":{"position":[[1093,2],[1290,2],[1761,2],[1822,2]]},"69":{"position":[[117,2],[920,2]]},"71":{"position":[[1331,2]]},"85":{"position":[[1620,2]]},"115":{"position":[[3038,2]]},"131":{"position":[[495,2]]},"165":{"position":[[650,2]]},"194":{"position":[[4050,3]]},"224":{"position":[[972,2]]}}}],["updat",{"_index":925,"t":{"99":{"position":[[3460,6],[3565,8]]},"103":{"position":[[2564,6],[2629,7],[2682,6],[3323,6]]},"204":{"position":[[205,8]]},"262":{"position":[[592,6]]}}}],["update_session_var",{"_index":962,"t":{"103":{"position":[[2505,19],[2645,18],[3265,18]]}}}],["upload",{"_index":443,"t":{"65":{"position":[[551,8]]},"83":{"position":[[640,6],[673,7],[711,6]]},"103":{"position":[[2311,6]]},"262":{"position":[[987,9]]}}}],["upon",{"_index":296,"t":{"59":{"position":[[1065,4]]}}}],["upper",{"_index":1692,"t":{"243":{"position":[[1512,5],[1620,6]]}}}],["uppercas",{"_index":1080,"t":{"115":{"position":[[3484,9]]}}}],["uri",{"_index":782,"t":{"87":{"position":[[527,3],[762,4],[967,5]]}}}],["url",{"_index":382,"t":{"63":{"position":[[3462,3],[4155,4],[4557,3],[5250,4]]},"115":{"position":[[568,3]]},"204":{"position":[[909,3]]}}}],["us",{"_index":10,"t":{"41":{"position":[[107,5]]},"47":{"position":[[341,3]]},"49":{"position":[[3,3],[999,4]]},"51":{"position":[[549,3]]},"53":{"position":[[355,3],[1797,3],[2775,5],[3100,4]]},"59":{"position":[[454,5],[787,5]]},"63":{"position":[[7,5],[2767,5],[3053,5],[5442,5],[5591,5]]},"65":{"position":[[1067,6]]},"67":{"position":[[686,3]]},"69":{"position":[[871,3]]},"71":{"position":[[1281,3]]},"73":{"position":[[952,3],[1073,3]]},"75":{"position":[[549,3]]},"77":{"position":[[647,5]]},"79":{"position":[[299,3]]},"81":{"position":[[1082,5],[1278,3]]},"83":{"position":[[663,5],[851,3]]},"85":{"position":[[535,4],[971,3],[1577,5],[1905,5],[2063,4]]},"87":{"position":[[108,4],[517,3],[752,3],[878,6],[908,4],[1471,4],[1814,4],[2297,5]]},"93":{"position":[[305,4],[444,4],[516,4],[1045,4],[1246,4]]},"95":{"position":[[820,4]]},"97":{"position":[[143,4],[688,4],[1095,4],[1223,4],[1278,4]]},"99":{"position":[[404,3],[1091,3],[3344,4],[3452,4]]},"103":{"position":[[1057,3],[1501,4],[2303,4],[2475,4],[2674,4],[2822,4],[3045,5]]},"107":{"position":[[623,3],[760,4],[852,4]]},"111":{"position":[[631,3]]},"113":{"position":[[1117,3],[1291,3]]},"115":{"position":[[233,3],[294,3],[512,4],[1945,3],[2370,3],[3179,5]]},"124":{"position":[[120,4],[233,4]]},"133":{"position":[[343,3],[1354,4]]},"135":{"position":[[1539,5],[4747,5],[8700,5],[8727,5]]},"137":{"position":[[275,3]]},"139":{"position":[[460,3]]},"144":{"position":[[0,5]]},"146":{"position":[[0,5]]},"148":{"position":[[0,5]]},"158":{"position":[[0,5]]},"160":{"position":[[25,3]]},"162":{"position":[[31,3]]},"165":{"position":[[693,3],[794,3],[872,3],[1074,3]]},"169":{"position":[[336,3]]},"173":{"position":[[317,5],[382,5],[669,5]]},"175":{"position":[[231,5],[296,5]]},"179":{"position":[[6,3],[81,4]]},"186":{"position":[[831,5],[1432,3],[1568,5]]},"190":{"position":[[329,4],[831,5]]},"194":{"position":[[25,3],[2216,3],[3612,3],[4212,5]]},"198":{"position":[[77,5]]},"200":{"position":[[60,5],[264,3],[830,4],[1216,4],[1278,5]]},"202":{"position":[[31,3],[105,3],[142,3],[222,3],[606,3],[1341,5],[1444,3],[1481,3],[1669,4],[1735,4]]},"204":{"position":[[647,4]]},"208":{"position":[[313,4]]},"214":{"position":[[622,3],[2585,3]]},"216":{"position":[[1603,5],[1943,3],[1986,4]]},"218":{"position":[[1714,4],[2131,4],[2630,3]]},"220":{"position":[[126,3],[180,3],[258,4],[320,4]]},"231":{"position":[[80,3],[1212,6],[1267,3]]},"237":{"position":[[2251,3]]},"243":{"position":[[2923,4]]},"247":{"position":[[2292,3],[2980,3],[3008,5]]},"252":{"position":[[763,4]]},"254":{"position":[[171,5]]},"258":{"position":[[160,5]]},"260":{"position":[[934,3]]},"262":{"position":[[1003,5]]},"264":{"position":[[15,3]]},"266":{"position":[[57,5]]},"268":{"position":[[88,3]]},"270":{"position":[[191,3],[635,3],[805,5],[1057,3]]},"272":{"position":[[82,3]]},"274":{"position":[[74,3]]}}}],["usag",{"_index":261,"t":{"57":{"position":[[342,5]]},"75":{"position":[[84,5]]},"77":{"position":[[689,5]]}}}],["use_local_uri",{"_index":777,"t":{"87":{"position":[[305,14],[491,14],[689,13],[823,13]]}}}],["user",{"_index":4,"t":{"41":{"position":[[35,5],[244,5]]},"53":{"position":[[489,4],[695,4],[1995,4],[2091,4],[2358,4],[2455,4],[3120,4]]},"57":{"position":[[108,4]]},"63":{"position":[[2122,4],[2244,4],[5399,5],[5497,4],[5646,4],[5703,4],[5722,4],[6076,6]]},"65":{"position":[[921,5],[1455,4]]},"75":{"position":[[124,6],[444,4]]},"77":{"position":[[405,4],[436,4],[729,6]]},"81":{"position":[[781,4]]},"83":{"position":[[497,4],[626,4],[837,4],[912,4]]},"87":{"position":[[1611,4]]},"89":{"position":[[16,4]]},"93":{"position":[[83,4],[241,5],[870,5]]},"95":{"position":[[213,4]]},"97":{"position":[[332,5]]},"99":{"position":[[778,5],[1376,4],[3054,4],[3174,5],[4301,4],[4462,4]]},"101":{"position":[[90,4],[344,5],[480,5]]},"103":{"position":[[46,4],[114,4],[152,4],[316,5],[1587,4],[2933,4],[3032,4]]},"109":{"position":[[610,5],[839,5],[931,5],[1112,4]]},"113":{"position":[[451,4],[737,4]]},"124":{"position":[[198,5],[427,5],[542,4],[801,4],[887,4]]},"126":{"position":[[72,5],[256,5],[654,4],[989,4],[1164,4],[1569,4],[1736,4],[1911,4],[1979,4],[2181,4],[2285,4],[2850,5]]},"128":{"position":[[722,6]]},"131":{"position":[[134,4],[192,4],[303,4],[401,4],[664,4]]},"133":{"position":[[1167,4]]},"135":{"position":[[936,4],[1111,4],[5880,4],[6055,4],[6112,4],[6205,4],[6530,5],[6896,4],[7292,4],[8122,4],[10253,4],[10812,4],[11291,4],[11548,4],[13046,4],[13303,4],[13360,4],[13529,4]]},"165":{"position":[[109,4],[398,5],[408,4],[972,4]]},"171":{"position":[[1559,4],[1636,4]]},"186":{"position":[[1574,4]]},"198":{"position":[[989,4]]},"210":{"position":[[492,4]]},"212":{"position":[[233,4],[662,7]]},"214":{"position":[[799,4]]},"216":{"position":[[140,4],[1463,6]]},"228":{"position":[[2329,4],[2348,4],[2695,6]]},"264":{"position":[[806,4],[1192,7],[1656,7]]},"268":{"position":[[73,6],[170,6]]}}}],["user'",{"_index":19,"t":{"41":{"position":[[213,6]]},"93":{"position":[[806,6]]},"99":{"position":[[751,6],[3027,6]]},"109":{"position":[[442,6]]}}}],["user_queri",{"_index":935,"t":{"101":{"position":[[315,11],[393,11],[449,10]]},"124":{"position":[[731,11]]},"126":{"position":[[528,11]]},"128":{"position":[[272,11]]},"264":{"position":[[337,10],[1023,13]]}}}],["usual",{"_index":582,"t":{"71":{"position":[[241,7]]},"97":{"position":[[1321,5]]}}}],["util",{"_index":1665,"t":{"239":{"position":[[135,7]]},"245":{"position":[[481,7]]}}}],["v1",{"_index":1015,"t":{"111":{"position":[[449,2],[530,2],[551,2],[595,2]]}}}],["v2",{"_index":1018,"t":{"111":{"position":[[503,2],[569,2]]},"115":{"position":[[1054,2]]}}}],["val=df",{"_index":1702,"t":{"243":{"position":[[1973,7]]},"245":{"position":[[864,7]]}}}],["val=result",{"_index":1629,"t":{"224":{"position":[[692,11]]}}}],["valid",{"_index":1044,"t":{"113":{"position":[[1333,5]]},"247":{"position":[[1091,10]]}}}],["valu",{"_index":314,"t":{"61":{"position":[[98,5],[220,5]]},"79":{"position":[[138,5],[202,5]]},"103":{"position":[[2740,5]]},"107":{"position":[[77,5],[478,5],[704,5]]},"109":{"position":[[221,5],[302,5]]},"113":{"position":[[311,5],[391,5],[570,5],[688,5],[969,5],[1152,5]]},"115":{"position":[[225,7],[286,7],[340,6],[481,5]]},"135":{"position":[[77,5],[200,5],[747,5],[853,5],[1056,5],[1213,5],[1309,5],[1514,5],[4722,5],[5797,5],[6000,5],[6131,5],[6232,5],[6556,5],[6685,5],[6836,5],[6931,5],[7156,5],[7350,6],[7820,5],[8033,5],[10164,5],[11202,5],[11491,5],[11631,5],[11715,5],[11929,5],[12957,5],[13246,5],[13405,5],[13560,5]]},"171":{"position":[[1214,5]]},"200":{"position":[[1263,6]]},"231":{"position":[[613,5]]},"243":{"position":[[737,5],[962,7]]},"247":{"position":[[195,5],[299,5],[367,5],[728,5],[842,5],[955,5],[1536,5],[1944,7],[3546,5]]},"264":{"position":[[656,5]]}}}],["value'",{"_index":1710,"t":{"247":{"position":[[770,7]]}}}],["value1",{"_index":1721,"t":{"247":{"position":[[3284,6]]}}}],["value2",{"_index":1723,"t":{"247":{"position":[[3297,6]]}}}],["value_col_nam",{"_index":1302,"t":{"171":{"position":[[1313,15]]},"243":{"position":[[533,15],[901,15]]},"247":{"position":[[1846,14]]}}}],["value_col_name=\"v",{"_index":1674,"t":{"239":{"position":[[582,21]]}}}],["valueerror",{"_index":1452,"t":{"194":{"position":[[3786,11]]},"243":{"position":[[1368,11]]}}}],["valueerror(f\"api",{"_index":1444,"t":{"194":{"position":[[3151,16]]}}}],["var",{"_index":1224,"t":{"135":{"position":[[10402,3]]}}}],["vari",{"_index":1497,"t":{"200":{"position":[[569,4]]}}}],["varia",{"_index":1225,"t":{"135":{"position":[[10590,5],[12082,5]]}}}],["variabl",{"_index":218,"t":{"53":{"position":[[2640,12],[3041,10],[3056,9],[3289,9],[3365,9]]},"87":{"position":[[1174,10]]},"103":{"position":[[2531,10],[2583,10],[2601,10],[2616,9],[2701,10],[2722,8],[2805,9],[2959,9],[3063,9],[3347,10]]},"115":{"position":[[3426,10]]},"186":{"position":[[627,9],[939,10],[1088,9],[1644,8],[1863,9]]},"194":{"position":[[2257,9]]},"200":{"position":[[553,9]]},"224":{"position":[[884,9]]},"243":{"position":[[1983,8]]},"245":{"position":[[874,8]]}}}],["varianc",{"_index":1200,"t":{"135":{"position":[[7147,8],[7341,8],[7811,8],[7967,8],[8024,8],[8363,8],[10098,8],[10155,8],[10502,8],[10571,8],[10774,8],[10987,8],[11136,8],[11193,8],[11426,8],[11482,8],[11622,8],[11706,8],[11920,8],[12891,8],[12948,8],[13181,8],[13237,8],[13396,8],[13551,8]]}}}],["variance_count",{"_index":1231,"t":{"135":{"position":[[12047,14],[12096,14],[12133,14],[12530,14],[12567,14]]}}}],["varieti",{"_index":955,"t":{"103":{"position":[[1715,7]]},"216":{"position":[[207,7]]}}}],["variou",{"_index":857,"t":{"97":{"position":[[1109,7]]},"111":{"position":[[26,7]]},"171":{"position":[[203,7]]},"210":{"position":[[219,7],[501,7]]},"264":{"position":[[1320,7]]}}}],["vector",{"_index":148,"t":{"53":{"position":[[361,6]]},"59":{"position":[[355,7],[434,7],[764,6],[895,6],[920,7]]},"63":{"position":[[505,6]]}}}],["verbos",{"_index":564,"t":{"69":{"position":[[1260,10]]}}}],["veri",{"_index":875,"t":{"99":{"position":[[697,4]]},"103":{"position":[[1923,4]]}}}],["verif",{"_index":64,"t":{"47":{"position":[[350,12],[440,13]]},"49":{"position":[[12,13],[241,13],[285,12]]},"51":{"position":[[9,12]]},"63":{"position":[[3280,14]]},"109":{"position":[[1751,14]]},"115":{"position":[[1118,13]]},"128":{"position":[[875,12],[1651,12],[1739,12],[1940,12],[2144,12],[2226,12],[2302,12]]},"135":{"position":[[1715,14],[1760,12],[4983,14],[5028,12],[8979,14],[9024,12],[12152,14],[12197,12]]},"216":{"position":[[1111,12]]},"228":{"position":[[1121,14]]}}}],["verifi",{"_index":44,"t":{"47":{"position":[[29,6]]},"49":{"position":[[193,8]]},"128":{"position":[[2035,6],[2280,9]]},"216":{"position":[[1152,6]]}}}],["version",{"_index":533,"t":{"69":{"position":[[232,8]]},"73":{"position":[[831,7]]},"115":{"position":[[759,7],[3194,7]]},"184":{"position":[[497,8]]},"208":{"position":[[371,8]]},"256":{"position":[[135,9]]},"258":{"position":[[175,7]]},"262":{"position":[[602,7],[693,7]]},"270":{"position":[[14,8],[122,7],[310,7],[643,7]]}}}],["via",{"_index":1079,"t":{"115":{"position":[[3410,3]]},"204":{"position":[[554,3]]}}}],["view",{"_index":444,"t":{"65":{"position":[[576,5],[1434,5],[1667,5],[1714,5]]},"71":{"position":[[47,4],[87,7]]},"239":{"position":[[92,4]]}}}],["violat",{"_index":1116,"t":{"128":{"position":[[2114,8]]}}}],["visit",{"_index":1782,"t":{"270":{"position":[[1360,8]]},"274":{"position":[[553,8]]}}}],["visual",{"_index":603,"t":{"71":{"position":[[1296,9]]},"173":{"position":[[699,6]]}}}],["vllm",{"_index":1040,"t":{"113":{"position":[[1018,4],[1096,5]]},"200":{"position":[[138,5]]}}}],["volum",{"_index":541,"t":{"69":{"position":[[363,8],[676,8]]},"71":{"position":[[1701,8],[1767,8]]}}}],["want",{"_index":43,"t":{"47":{"position":[[21,4]]},"51":{"position":[[181,4]]},"67":{"position":[[678,4]]},"71":{"position":[[1273,4]]},"73":{"position":[[86,4]]},"81":{"position":[[8,4]]},"85":{"position":[[39,4]]},"95":{"position":[[1222,4]]},"99":{"position":[[4225,4]]},"107":{"position":[[125,4]]},"113":{"position":[[1109,4],[1283,4]]},"137":{"position":[[267,4]]},"162":{"position":[[23,4]]},"171":{"position":[[1649,4]]},"190":{"position":[[321,4]]},"198":{"position":[[840,4]]},"202":{"position":[[23,4],[97,4],[1436,4]]},"208":{"position":[[305,4]]},"214":{"position":[[9,4]]},"218":{"position":[[21,4],[108,4],[2385,4]]},"220":{"position":[[38,4]]},"224":{"position":[[528,4]]},"231":{"position":[[1259,4],[1342,4]]},"262":{"position":[[199,4]]},"264":{"position":[[7,4],[1559,4]]},"270":{"position":[[627,4],[1014,4]]}}}],["warn",{"_index":693,"t":{"81":{"position":[[758,4]]},"262":{"position":[[0,7]]}}}],["way",{"_index":142,"t":{"53":{"position":[[229,3],[345,3],[740,3]]},"85":{"position":[[330,3]]},"97":{"position":[[1730,3],[1927,4]]},"131":{"position":[[120,3]]},"133":{"position":[[1327,4]]},"169":{"position":[[303,3]]},"171":{"position":[[12,3],[594,3],[703,3]]},"177":{"position":[[87,3]]},"224":{"position":[[747,3]]},"260":{"position":[[774,4]]}}}],["web",{"_index":707,"t":{"83":{"position":[[732,3]]},"173":{"position":[[392,3]]},"175":{"position":[[306,3]]},"260":{"position":[[861,3]]},"262":{"position":[[30,3],[125,3],[216,3],[1013,3],[1055,3]]},"270":{"position":[[377,3],[1350,3],[1399,3]]}}}],["websearch",{"_index":1772,"t":{"270":{"position":[[341,9],[660,9]]}}}],["websit",{"_index":479,"t":{"67":{"position":[[138,7]]},"268":{"position":[[151,8],[245,8]]}}}],["welcom",{"_index":1268,"t":{"160":{"position":[[3,7]]},"194":{"position":[[3,7]]}}}],["well",{"_index":652,"t":{"75":{"position":[[632,4]]},"214":{"position":[[2294,5]]},"237":{"position":[[494,5]]},"260":{"position":[[275,5]]}}}],["whatev",{"_index":1630,"t":{"224":{"position":[[936,8]]}}}],["whether",{"_index":313,"t":{"61":{"position":[[45,7]]},"87":{"position":[[506,7],[741,7]]},"93":{"position":[[479,7]]},"107":{"position":[[612,7]]},"113":{"position":[[247,7],[500,7],[894,7]]},"115":{"position":[[1095,7],[1855,7],[1934,7],[2173,7],[2282,7],[2359,7]]},"128":{"position":[[1962,7],[2379,7]]},"198":{"position":[[687,7]]},"200":{"position":[[1370,7]]},"247":{"position":[[117,7],[586,7]]}}}],["whole",{"_index":1566,"t":{"214":{"position":[[2045,5]]}}}],["whose",{"_index":1507,"t":{"200":{"position":[[1250,5]]}}}],["width",{"_index":217,"t":{"53":{"position":[[2593,6]]}}}],["window",{"_index":138,"t":{"53":{"position":[[183,6]]},"71":{"position":[[1258,7]]},"79":{"position":[[798,7]]},"81":{"position":[[1088,7]]},"85":{"position":[[2208,7],[2265,7]]},"181":{"position":[[94,7]]},"268":{"position":[[55,7]]},"272":{"position":[[298,7],[372,7]]},"274":{"position":[[290,7],[364,7]]}}}],["wish",{"_index":1707,"t":{"245":{"position":[[157,4]]}}}],["within",{"_index":755,"t":{"85":{"position":[[2254,6]]},"190":{"position":[[613,6]]},"214":{"position":[[2273,6]]},"239":{"position":[[254,6]]},"247":{"position":[[1110,6]]}}}],["without",{"_index":179,"t":{"53":{"position":[[1164,7]]},"79":{"position":[[257,7]]},"218":{"position":[[1654,8],[2158,7]]},"231":{"position":[[1393,7]]},"247":{"position":[[2234,7],[2864,7]]}}}],["word",{"_index":715,"t":{"85":{"position":[[140,6]]},"214":{"position":[[2832,6]]}}}],["work",{"_index":465,"t":{"65":{"position":[[1254,4]]},"95":{"position":[[877,7],[1059,7]]},"177":{"position":[[10,7]]},"198":{"position":[[627,5]]},"200":{"position":[[1314,5]]},"216":{"position":[[375,4]]},"237":{"position":[[2159,7]]},"252":{"position":[[820,7]]}}}],["worker",{"_index":990,"t":{"109":{"position":[[878,6],[1052,6],[1146,6]]}}}],["workflow",{"_index":266,"t":{"59":{"position":[[22,8]]},"216":{"position":[[280,8]]}}}],["workspac",{"_index":841,"t":{"95":{"position":[[98,9],[695,11],[946,9]]},"103":{"position":[[609,10],[620,10],[834,10],[849,10]]},"245":{"position":[[347,10]]},"252":{"position":[[213,10],[638,11]]}}}],["world",{"_index":505,"t":{"67":{"position":[[1258,5]]},"139":{"position":[[687,7]]},"177":{"position":[[482,9]]},"226":{"position":[[608,8]]}}}],["worth",{"_index":1136,"t":{"133":{"position":[[635,5]]}}}],["wrapper",{"_index":623,"t":{"73":{"position":[[477,7]]}}}],["write",{"_index":1248,"t":{"139":{"position":[[582,5]]}}}],["written",{"_index":1711,"t":{"247":{"position":[[1172,7]]}}}],["wrong",{"_index":1123,"t":{"131":{"position":[[262,6]]}}}],["ws",{"_index":1771,"t":{"270":{"position":[[301,3],[739,2]]}}}],["wsl",{"_index":1336,"t":{"181":{"position":[[115,4]]}}}],["wsl2",{"_index":1514,"t":{"204":{"position":[[282,4]]}}}],["x",{"_index":387,"t":{"63":{"position":[[3501,1],[3927,1],[4071,1],[4596,1],[5022,1],[5166,1],[5801,1],[5944,1],[6143,1],[6286,1],[6477,1],[6620,1]]},"135":{"position":[[9422,1],[9928,1]]},"243":{"position":[[1600,2],[1603,1],[1616,1]]}}}],["xbox",{"_index":358,"t":{"63":{"position":[[1841,4],[1914,4],[2039,4],[2083,4],[2205,4],[2311,4],[2380,4],[2436,4],[2756,4],[3164,4],[3489,4],[3639,4],[3794,4],[3915,4],[4584,4],[4734,4],[4889,4],[5010,4],[5431,4],[5580,4],[5755,4],[5789,4],[5841,4],[5879,4],[5932,4],[6097,4],[6131,4],[6183,4],[6221,4],[6274,4],[6431,4],[6465,4],[6517,4],[6555,4],[6608,4]]}}}],["xx.xx",{"_index":417,"t":{"63":{"position":[[4243,9],[5338,9]]}}}],["yaml",{"_index":1242,"t":{"139":{"position":[[57,4],[101,4]]},"173":{"position":[[270,4],[504,4],[592,4],[677,4],[732,4],[783,4],[858,4]]},"177":{"position":[[860,4],[991,4],[1164,4],[1309,4]]},"226":{"position":[[292,4]]},"231":{"position":[[428,4]]},"241":{"position":[[115,4]]},"247":{"position":[[1183,4],[2909,4]]}}}],["year:2020",{"_index":393,"t":{"63":{"position":[[3586,10],[4681,10]]}}}],["year:2023",{"_index":411,"t":{"63":{"position":[[4022,10],[5117,10]]}}}],["you'll",{"_index":1382,"t":{"190":{"position":[[720,6]]}}}],["your_api_key",{"_index":1368,"t":{"188":{"position":[[178,15]]},"190":{"position":[[238,15],[916,12]]},"192":{"position":[[415,14]]},"196":{"position":[[433,15]]},"202":{"position":[[710,15],[921,15],[1071,15]]},"206":{"position":[[342,14]]},"208":{"position":[[192,15]]},"256":{"position":[[66,15]]}}}],["your_function(self",{"_index":636,"t":{"73":{"position":[[1100,19]]}}}],["your_keywords_ai_api_key",{"_index":1482,"t":{"198":{"position":[[539,27]]}}}],["your_llm_model_nam",{"_index":1407,"t":{"194":{"position":[[1087,22]]}}}],["your_llm_nam",{"_index":1435,"t":{"194":{"position":[[2687,14],[3044,16],[3713,16]]}}}],["your_llm_name>.pi",{"_index":1386,"t":{"194":{"position":[[176,18]]}}}],["your_project_path",{"_index":1455,"t":{"194":{"position":[[4274,19]]}}}],["yourimplement",{"_index":1623,"t":{"224":{"position":[[471,20]]}}}],["yourllmservic",{"_index":1415,"t":{"194":{"position":[[1515,14],[2313,14],[2473,14],[2709,14]]}}}],["yourllmservice(completionservic",{"_index":1418,"t":{"194":{"position":[[1657,33]]}}}],["yourllmserviceconfig",{"_index":1394,"t":{"194":{"position":[[534,20],[1745,22]]}}}],["yourllmserviceconfig(llmserviceconfig",{"_index":1397,"t":{"194":{"position":[[751,39]]}}}],["zhipu",{"_index":1264,"t":{"156":{"position":[[39,5]]},"192":{"position":[[36,5]]}}}],["zhipuai",{"_index":1027,"t":{"111":{"position":[[598,7]]},"156":{"position":[[72,7]]},"192":{"position":[[69,7],[207,7],[292,10],[389,10],[469,7]]},"235":{"position":[[67,7]]}}}]],"pipeline":["stemmer"]}}] \ No newline at end of file +[{"documents":[{"i":40,"t":"CLI Only Mode","u":"/TaskWeaver/docs/advanced/cli_only","b":["Docs","Advanced Features"]},{"i":45,"t":"Code Verification","u":"/TaskWeaver/docs/advanced/code_verification","b":["Docs","Advanced Features"]},{"i":52,"t":"Prompt Compression","u":"/TaskWeaver/docs/advanced/compression","b":["Docs","Advanced Features"]},{"i":56,"t":"Auto Plugin Selection","u":"/TaskWeaver/docs/advanced/plugin_selection","b":["Docs","Advanced Features"]},{"i":64,"t":"Telemetry","u":"/TaskWeaver/docs/advanced/telemetry","b":["Docs","Advanced Features"]},{"i":74,"t":"Code Execution","u":"/TaskWeaver/docs/code_execution","b":["Docs"]},{"i":86,"t":"Attachment","u":"/TaskWeaver/docs/concepts/attachment","b":["Docs","Concepts"]},{"i":88,"t":"Application","u":"/TaskWeaver/docs/concepts/app","b":["Docs","Concepts"]},{"i":90,"t":"Conversation","u":"/TaskWeaver/docs/concepts/conversation","b":["Docs","Concepts"]},{"i":92,"t":"Plugin","u":"/TaskWeaver/docs/concepts/plugin","b":["Docs","Concepts"]},{"i":94,"t":"Project","u":"/TaskWeaver/docs/concepts/project","b":["Docs","Concepts"]},{"i":96,"t":"Post","u":"/TaskWeaver/docs/concepts/post","b":["Docs","Concepts"]},{"i":98,"t":"Round","u":"/TaskWeaver/docs/concepts/round","b":["Docs","Concepts"]},{"i":100,"t":"Session","u":"/TaskWeaver/docs/concepts/session","b":["Docs","Concepts"]},{"i":102,"t":"More about Configurations","u":"/TaskWeaver/docs/configurations/configurations_in_detail","b":["Docs","Configurations"]},{"i":112,"t":"Role","u":"/TaskWeaver/docs/concepts/role","b":["Docs","Concepts"]},{"i":114,"t":"Configuration File","u":"/TaskWeaver/docs/configurations/overview","b":["Docs","Configurations"]},{"i":116,"t":"","u":"/TaskWeaver/docs/customization/","b":["Customization"]},{"i":123,"t":"Customizing Examples","u":"/TaskWeaver/docs/customization/example/","b":["Docs","Customization","Example"]},{"i":129,"t":"FAQ","u":"/TaskWeaver/docs/FAQ","b":["Docs"]},{"i":148,"t":"Experience","u":"/TaskWeaver/docs/customization/experience/","b":["Docs","Customization","Experience"]},{"i":155,"t":"","u":"/TaskWeaver/docs/llms/","b":["Supported LLMs"]},{"i":176,"t":"Azure OpenAI","u":"/TaskWeaver/docs/llms/aoai","b":["Docs","Supported LLMs"]},{"i":181,"t":"Handcrafted Experience","u":"/TaskWeaver/docs/customization/experience/handcrafted_experience","b":["Docs","Customization","Experience"]},{"i":187,"t":"Anthropic (Claude)","u":"/TaskWeaver/docs/llms/anthropic","b":[]},{"i":189,"t":"Gemini","u":"/TaskWeaver/docs/llms/gemini","b":["Docs","Supported LLMs"]},{"i":191,"t":"GroqChat","u":"/TaskWeaver/docs/llms/groq","b":[]},{"i":193,"t":"Customized LLM API","u":"/TaskWeaver/docs/llms/customized_llm_api","b":["Docs","Supported LLMs"]},{"i":195,"t":"Keywords AI","u":"/TaskWeaver/docs/llms/Keywords-AI","b":["Docs","Supported LLMs"]},{"i":197,"t":"GLM","u":"/TaskWeaver/docs/llms/glm","b":["Docs","Supported LLMs"]},{"i":199,"t":"LiteLLM","u":"/TaskWeaver/docs/llms/liteLLM","b":["Docs","Supported LLMs"]},{"i":201,"t":"Ollama","u":"/TaskWeaver/docs/llms/ollama","b":["Docs","Supported LLMs"]},{"i":203,"t":"OpenAI","u":"/TaskWeaver/docs/llms/openai","b":["Docs","Supported LLMs"]},{"i":205,"t":"Multi LLM APIs","u":"/TaskWeaver/docs/llms/multi-llm","b":["Docs","Supported LLMs"]},{"i":207,"t":"Memory","u":"/TaskWeaver/docs/memory","b":["Docs"]},{"i":213,"t":"QWen","u":"/TaskWeaver/docs/llms/qwen","b":["Docs","Supported LLMs"]},{"i":215,"t":"An Example of Developing a New Plugin","u":"/TaskWeaver/docs/plugin/how_to_develop_a_new_plugin","b":["Docs","Customization","Plugin"]},{"i":223,"t":"Multiple YAML files to one Python implementation","u":"/TaskWeaver/docs/plugin/multi_yaml_single_impl","b":["Docs","Customization","Plugin"]},{"i":227,"t":"Overview","u":"/TaskWeaver/docs/overview","b":["Docs"]},{"i":229,"t":"Plugin Introduction","u":"/TaskWeaver/docs/plugin/plugin_intro","b":["Docs","Customization","Plugin"]},{"i":239,"t":"The Plugin-Only Mode","u":"/TaskWeaver/docs/plugin/plugin_only","b":["Docs","Advanced Features"]},{"i":246,"t":"Quick Start","u":"/TaskWeaver/docs/quickstart","b":["Docs"]},{"i":259,"t":"Terminal","u":"/TaskWeaver/docs/usage/cmd","b":["Docs","Usage Options"]},{"i":261,"t":"Library","u":"/TaskWeaver/docs/usage/library","b":["Docs","Usage Options"]},{"i":263,"t":"All-in-One Docker Image","u":"/TaskWeaver/docs/usage/docker","b":["Docs","Usage Options"]},{"i":273,"t":"Web UI","u":"/TaskWeaver/docs/usage/webui","b":["Docs","Usage Options"]}],"index":{"version":"2.3.9","fields":["t"],"fieldVectors":[["t/40",[0,3.152,1,2.685]],["t/45",[2,2.685,3,3.152]],["t/52",[4,3.152,5,3.152]],["t/56",[6,2.564,7,1.597,8,2.564]],["t/64",[9,4.092]],["t/74",[2,2.685,10,3.152]],["t/86",[11,4.092]],["t/88",[12,4.092]],["t/90",[13,4.092]],["t/92",[7,2.549]],["t/94",[14,4.092]],["t/96",[15,4.092]],["t/98",[16,4.092]],["t/100",[17,4.092]],["t/102",[18,3.152,19,2.685]],["t/112",[20,4.092]],["t/114",[19,2.685,21,2.685]],["t/116",[]],["t/123",[22,2.685,23,2.685]],["t/129",[24,4.092]],["t/148",[25,3.485]],["t/155",[]],["t/176",[26,3.152,27,2.685]],["t/181",[25,2.685,28,3.152]],["t/187",[29,3.152,30,3.152]],["t/189",[31,4.092]],["t/191",[32,4.092]],["t/193",[22,2.184,33,2.184,34,2.184]],["t/195",[35,3.152,36,3.152]],["t/197",[37,4.092]],["t/199",[38,4.092]],["t/201",[39,4.092]],["t/203",[27,3.485]],["t/205",[33,2.184,34,2.184,40,2.564]],["t/207",[41,4.092]],["t/213",[42,4.092]],["t/215",[7,1.345,23,1.84,43,2.16,44,2.16]],["t/223",[21,1.399,45,1.643,46,1.643,47,1.399,48,1.643,49,1.643]],["t/227",[50,4.092]],["t/229",[7,1.963,51,3.152]],["t/239",[1,2.685,7,1.963]],["t/246",[52,3.152,53,3.152]],["t/259",[54,4.092]],["t/261",[55,4.092]],["t/263",[47,2.184,56,2.564,57,2.564]],["t/273",[58,3.152,59,3.152]]],"invertedIndex":[["ai",{"_index":36,"t":{"195":{"position":[[9,2]]}}}],["anthrop",{"_index":29,"t":{"187":{"position":[[0,9]]}}}],["api",{"_index":34,"t":{"193":{"position":[[15,3]]},"205":{"position":[[10,4]]}}}],["applic",{"_index":12,"t":{"88":{"position":[[0,11]]}}}],["attach",{"_index":11,"t":{"86":{"position":[[0,10]]}}}],["auto",{"_index":6,"t":{"56":{"position":[[0,4]]}}}],["azur",{"_index":26,"t":{"176":{"position":[[0,5]]}}}],["claud",{"_index":30,"t":{"187":{"position":[[10,8]]}}}],["cli",{"_index":0,"t":{"40":{"position":[[0,3]]}}}],["code",{"_index":2,"t":{"45":{"position":[[0,4]]},"74":{"position":[[0,4]]}}}],["compress",{"_index":5,"t":{"52":{"position":[[7,11]]}}}],["configur",{"_index":19,"t":{"102":{"position":[[11,14]]},"114":{"position":[[0,13]]}}}],["convers",{"_index":13,"t":{"90":{"position":[[0,12]]}}}],["custom",{"_index":22,"t":{"123":{"position":[[0,11]]},"193":{"position":[[0,10]]}}}],["develop",{"_index":43,"t":{"215":{"position":[[14,10]]}}}],["docker",{"_index":56,"t":{"263":{"position":[[11,6]]}}}],["exampl",{"_index":23,"t":{"123":{"position":[[12,8]]},"215":{"position":[[3,7]]}}}],["execut",{"_index":10,"t":{"74":{"position":[[5,9]]}}}],["experi",{"_index":25,"t":{"148":{"position":[[0,10]]},"181":{"position":[[12,10]]}}}],["faq",{"_index":24,"t":{"129":{"position":[[0,3]]}}}],["file",{"_index":21,"t":{"114":{"position":[[14,4]]},"223":{"position":[[14,5]]}}}],["gemini",{"_index":31,"t":{"189":{"position":[[0,6]]}}}],["glm",{"_index":37,"t":{"197":{"position":[[0,3]]}}}],["groqchat",{"_index":32,"t":{"191":{"position":[[0,8]]}}}],["handcraft",{"_index":28,"t":{"181":{"position":[[0,11]]}}}],["imag",{"_index":57,"t":{"263":{"position":[[18,5]]}}}],["implement",{"_index":49,"t":{"223":{"position":[[34,14]]}}}],["introduct",{"_index":51,"t":{"229":{"position":[[7,12]]}}}],["keyword",{"_index":35,"t":{"195":{"position":[[0,8]]}}}],["librari",{"_index":55,"t":{"261":{"position":[[0,7]]}}}],["litellm",{"_index":38,"t":{"199":{"position":[[0,7]]}}}],["llm",{"_index":33,"t":{"193":{"position":[[11,3]]},"205":{"position":[[6,3]]}}}],["memori",{"_index":41,"t":{"207":{"position":[[0,6]]}}}],["mode",{"_index":1,"t":{"40":{"position":[[9,4]]},"239":{"position":[[16,4]]}}}],["more",{"_index":18,"t":{"102":{"position":[[0,4]]}}}],["multi",{"_index":40,"t":{"205":{"position":[[0,5]]}}}],["multipl",{"_index":45,"t":{"223":{"position":[[0,8]]}}}],["new",{"_index":44,"t":{"215":{"position":[[27,3]]}}}],["ollama",{"_index":39,"t":{"201":{"position":[[0,6]]}}}],["on",{"_index":47,"t":{"223":{"position":[[23,3]]},"263":{"position":[[7,3]]}}}],["openai",{"_index":27,"t":{"176":{"position":[[6,6]]},"203":{"position":[[0,6]]}}}],["overview",{"_index":50,"t":{"227":{"position":[[0,8]]}}}],["plugin",{"_index":7,"t":{"56":{"position":[[5,6]]},"92":{"position":[[0,6]]},"215":{"position":[[31,6]]},"229":{"position":[[0,6]]},"239":{"position":[[4,6]]}}}],["post",{"_index":15,"t":{"96":{"position":[[0,4]]}}}],["project",{"_index":14,"t":{"94":{"position":[[0,7]]}}}],["prompt",{"_index":4,"t":{"52":{"position":[[0,6]]}}}],["python",{"_index":48,"t":{"223":{"position":[[27,6]]}}}],["quick",{"_index":52,"t":{"246":{"position":[[0,5]]}}}],["qwen",{"_index":42,"t":{"213":{"position":[[0,4]]}}}],["role",{"_index":20,"t":{"112":{"position":[[0,4]]}}}],["round",{"_index":16,"t":{"98":{"position":[[0,5]]}}}],["select",{"_index":8,"t":{"56":{"position":[[12,9]]}}}],["session",{"_index":17,"t":{"100":{"position":[[0,7]]}}}],["start",{"_index":53,"t":{"246":{"position":[[6,5]]}}}],["telemetri",{"_index":9,"t":{"64":{"position":[[0,9]]}}}],["termin",{"_index":54,"t":{"259":{"position":[[0,8]]}}}],["ui",{"_index":59,"t":{"273":{"position":[[4,2]]}}}],["verif",{"_index":3,"t":{"45":{"position":[[5,12]]}}}],["web",{"_index":58,"t":{"273":{"position":[[0,3]]}}}],["yaml",{"_index":46,"t":{"223":{"position":[[9,4]]}}}]],"pipeline":["stemmer"]}},{"documents":[{"i":42,"t":"Demo","u":"/TaskWeaver/docs/advanced/cli_only","h":"#demo","p":40},{"i":43,"t":"How to enable","u":"/TaskWeaver/docs/advanced/cli_only","h":"#how-to-enable","p":40},{"i":46,"t":"Why do we need code verification?","u":"/TaskWeaver/docs/advanced/code_verification","h":"#why-do-we-need-code-verification","p":45},{"i":48,"t":"How to use code verification?","u":"/TaskWeaver/docs/advanced/code_verification","h":"#how-to-use-code-verification","p":45},{"i":50,"t":"How is code verification implemented?","u":"/TaskWeaver/docs/advanced/code_verification","h":"#how-is-code-verification-implemented","p":45},{"i":54,"t":"Configurations","u":"/TaskWeaver/docs/advanced/compression","h":"#configurations","p":52},{"i":58,"t":"Auto Plugin Selection Overview","u":"/TaskWeaver/docs/advanced/plugin_selection","h":"#auto-plugin-selection-overview","p":56},{"i":60,"t":"Auto Plugin Selection Configuration","u":"/TaskWeaver/docs/advanced/plugin_selection","h":"#auto-plugin-selection-configuration","p":56},{"i":62,"t":"Auto Plugin Selection Preparation","u":"/TaskWeaver/docs/advanced/plugin_selection","h":"#auto-plugin-selection-preparation","p":56},{"i":66,"t":"How to enable tracing","u":"/TaskWeaver/docs/advanced/telemetry","h":"#how-to-enable-tracing","p":64},{"i":68,"t":"Tracing Infrastructure Configuration","u":"/TaskWeaver/docs/advanced/telemetry","h":"#tracing-infrastructure-configuration","p":64},{"i":70,"t":"How to view the metrics","u":"/TaskWeaver/docs/advanced/telemetry","h":"#how-to-view-the-metrics","p":64},{"i":72,"t":"How to customize tracing","u":"/TaskWeaver/docs/advanced/telemetry","h":"#how-to-customize-tracing","p":64},{"i":76,"t":"Two Modes of Code Execution","u":"/TaskWeaver/docs/code_execution","h":"#two-modes-of-code-execution","p":74},{"i":78,"t":"How to Configure the Code Execution Mode","u":"/TaskWeaver/docs/code_execution","h":"#how-to-configure-the-code-execution-mode","p":74},{"i":80,"t":"How to customize the Docker image for code execution","u":"/TaskWeaver/docs/code_execution","h":"#how-to-customize-the-docker-image-for-code-execution","p":74},{"i":82,"t":"Limitations of the container Mode","u":"/TaskWeaver/docs/code_execution","h":"#limitations-of-the-container-mode","p":74},{"i":84,"t":"Restricting External Network Access for Docker Containers","u":"/TaskWeaver/docs/code_execution","h":"#restricting-external-network-access-for-docker-containers","p":74},{"i":104,"t":"Planner Configuration","u":"/TaskWeaver/docs/configurations/configurations_in_detail","h":"#planner-configuration","p":102},{"i":106,"t":"Session Configuration","u":"/TaskWeaver/docs/configurations/configurations_in_detail","h":"#session-configuration","p":102},{"i":108,"t":"Embedding Configuration","u":"/TaskWeaver/docs/configurations/configurations_in_detail","h":"#embedding-configuration","p":102},{"i":110,"t":"OpenAI Configuration","u":"/TaskWeaver/docs/configurations/configurations_in_detail","h":"#openai-configuration","p":102},{"i":117,"t":"🗃️ Plugin","u":"/TaskWeaver/docs/customization/","h":"","p":116},{"i":119,"t":"🗃️ Example","u":"/TaskWeaver/docs/customization/","h":"","p":116},{"i":121,"t":"🗃️ Experience","u":"/TaskWeaver/docs/customization/","h":"","p":116},{"i":125,"t":"Planner Examples","u":"/TaskWeaver/docs/customization/example/","h":"#planner-examples","p":123},{"i":127,"t":"CodeInterpreter Examples","u":"/TaskWeaver/docs/customization/example/","h":"#codeinterpreter-examples","p":123},{"i":130,"t":"Q: Why it takes so long to generate the output?","u":"/TaskWeaver/docs/FAQ","h":"#q-why-it-takes-so-long-to-generate-the-output","p":129},{"i":132,"t":"Q: Why TaskWeaver fails and the logs say \"Failed to connect to docker.daemon\"?","u":"/TaskWeaver/docs/FAQ","h":"#q-why-taskweaver-fails-and-the-logs-say-failed-to-connect-to-dockerdaemon","p":129},{"i":134,"t":"Q: Why I see errors saying the Planner failed to generate the send_to, message or other fields?","u":"/TaskWeaver/docs/FAQ","h":"#q-why-i-see-errors-saying-the-planner-failed-to-generate-the-send_to-message-or-other-fields","p":129},{"i":136,"t":"Q: How do I know if TaskWeaver can see my plugin?","u":"/TaskWeaver/docs/FAQ","h":"#q-how-do-i-know-if-taskweaver-can-see-my-plugin","p":129},{"i":138,"t":"Q: Why TaskWeaver cannot see my plugin?","u":"/TaskWeaver/docs/FAQ","h":"#q-why-taskweaver-cannot-see-my-plugin","p":129},{"i":140,"t":"Q: Why TaskWeaver can see my plugin but cannot call it?","u":"/TaskWeaver/docs/FAQ","h":"#q-why-taskweaver-can-see-my-plugin-but-cannot-call-it","p":129},{"i":142,"t":"Q: How to debug my plugin?","u":"/TaskWeaver/docs/FAQ","h":"#q-how-to-debug-my-plugin","p":129},{"i":144,"t":"Q: Why I see the error message \"RuntimeError: This event loop is already running\"?","u":"/TaskWeaver/docs/FAQ","h":"#q-why-i-see-the-error-message-runtimeerror-this-event-loop-is-already-running","p":129},{"i":146,"t":"Q: Why I see the error message \"Permissions assignment failed for secure file: Got '0o677' instead of '0o0600'.\" when running TaskWeaver?","u":"/TaskWeaver/docs/FAQ","h":"#q-why-i-see-the-error-message-permissions-assignment-failed-for-secure-file-got-0o677-instead-of-0o0600-when-running-taskweaver","p":129},{"i":149,"t":"Motivation","u":"/TaskWeaver/docs/customization/experience/","h":"#motivation","p":148},{"i":151,"t":"Quick start","u":"/TaskWeaver/docs/customization/experience/","h":"#quick-start","p":148},{"i":153,"t":"A walk-through example","u":"/TaskWeaver/docs/customization/experience/","h":"#a-walk-through-example","p":148},{"i":156,"t":"📄️ OpenAI","u":"/TaskWeaver/docs/llms/","h":"","p":155},{"i":158,"t":"📄️ Azure OpenAI","u":"/TaskWeaver/docs/llms/","h":"","p":155},{"i":160,"t":"📄️ LiteLLM","u":"/TaskWeaver/docs/llms/","h":"","p":155},{"i":162,"t":"📄️ Ollama","u":"/TaskWeaver/docs/llms/","h":"","p":155},{"i":164,"t":"📄️ Gemini","u":"/TaskWeaver/docs/llms/","h":"","p":155},{"i":166,"t":"📄️ QWen","u":"/TaskWeaver/docs/llms/","h":"","p":155},{"i":168,"t":"📄️ GLM","u":"/TaskWeaver/docs/llms/","h":"","p":155},{"i":170,"t":"📄️ Keywords AI","u":"/TaskWeaver/docs/llms/","h":"","p":155},{"i":172,"t":"📄️ Customized LLM API","u":"/TaskWeaver/docs/llms/","h":"","p":155},{"i":174,"t":"📄️ Multi LLM APIs","u":"/TaskWeaver/docs/llms/","h":"","p":155},{"i":177,"t":"Using API Key","u":"/TaskWeaver/docs/llms/aoai","h":"#using-api-key","p":176},{"i":179,"t":"Using Entra Authentication","u":"/TaskWeaver/docs/llms/aoai","h":"#using-entra-authentication","p":176},{"i":183,"t":"Create a handcrafted experience","u":"/TaskWeaver/docs/customization/experience/handcrafted_experience","h":"#create-a-handcrafted-experience","p":181},{"i":185,"t":"Load the handcrafted experience","u":"/TaskWeaver/docs/customization/experience/handcrafted_experience","h":"#load-the-handcrafted-experience","p":181},{"i":209,"t":"Role-wise Conversation History","u":"/TaskWeaver/docs/memory","h":"#role-wise-conversation-history","p":207},{"i":211,"t":"Shared Memory","u":"/TaskWeaver/docs/memory","h":"#shared-memory","p":207},{"i":217,"t":"Implement the python code","u":"/TaskWeaver/docs/plugin/how_to_develop_a_new_plugin","h":"#implement-the-python-code","p":215},{"i":219,"t":"Configure the schema","u":"/TaskWeaver/docs/plugin/how_to_develop_a_new_plugin","h":"#configure-the-schema","p":215},{"i":221,"t":"Call the plugin","u":"/TaskWeaver/docs/plugin/how_to_develop_a_new_plugin","h":"#call-the-plugin","p":215},{"i":225,"t":"Conclusion","u":"/TaskWeaver/docs/plugin/multi_yaml_single_impl","h":"#conclusion","p":223},{"i":231,"t":"Plugin Structure","u":"/TaskWeaver/docs/plugin/plugin_intro","h":"#plugin-structure","p":229},{"i":233,"t":"Plugin Implementation","u":"/TaskWeaver/docs/plugin/plugin_intro","h":"#plugin-implementation","p":229},{"i":235,"t":"Important Notes","u":"/TaskWeaver/docs/plugin/plugin_intro","h":"#important-notes","p":229},{"i":237,"t":"Plugin Schema","u":"/TaskWeaver/docs/plugin/plugin_intro","h":"#plugin-schema","p":229},{"i":240,"t":"What is the plugin-only mode?","u":"/TaskWeaver/docs/plugin/plugin_only","h":"#what-is-the-plugin-only-mode","p":239},{"i":242,"t":"How is the plugin-only mode implemented?","u":"/TaskWeaver/docs/plugin/plugin_only","h":"#how-is-the-plugin-only-mode-implemented","p":239},{"i":244,"t":"Which models support the plugin-only mode?","u":"/TaskWeaver/docs/plugin/plugin_only","h":"#which-models-support-the-plugin-only-mode","p":239},{"i":247,"t":"Installation","u":"/TaskWeaver/docs/quickstart","h":"#installation","p":246},{"i":249,"t":"Project Directory","u":"/TaskWeaver/docs/quickstart","h":"#project-directory","p":246},{"i":251,"t":"OpenAI Configuration","u":"/TaskWeaver/docs/quickstart","h":"#openai-configuration","p":246},{"i":253,"t":"Azure OpenAI","u":"/TaskWeaver/docs/quickstart","h":"#azure-openai","p":246},{"i":255,"t":"OpenAI","u":"/TaskWeaver/docs/quickstart","h":"#openai","p":246},{"i":257,"t":"Start TaskWeaver","u":"/TaskWeaver/docs/quickstart","h":"#start-taskweaver","p":246},{"i":265,"t":"Prerequisites","u":"/TaskWeaver/docs/usage/docker","h":"#prerequisites","p":263},{"i":267,"t":"Run TaskWeaver using the All-in-One Docker Image","u":"/TaskWeaver/docs/usage/docker","h":"#run-taskweaver-using-the-all-in-one-docker-image","p":263},{"i":269,"t":"How to run TaskWeaver on your own project directory","u":"/TaskWeaver/docs/usage/docker","h":"#how-to-run-taskweaver-on-your-own-project-directory","p":263},{"i":271,"t":"How to access your local files in the container","u":"/TaskWeaver/docs/usage/docker","h":"#how-to-access-your-local-files-in-the-container","p":263}],"index":{"version":"2.3.9","fields":["t"],"fieldVectors":[["t/42",[0,5.446]],["t/43",[1,4.739]],["t/46",[2,3.987,3,2.358,4,3.129]],["t/48",[3,2.358,4,3.129,5,2.875]],["t/50",[3,2.358,4,3.129,6,2.875]],["t/54",[7,2.755]],["t/58",[8,2.76,9,1.431,10,2.76,11,3.516]],["t/60",[7,1.779,8,2.76,9,1.431,10,2.76]],["t/62",[8,2.76,9,1.431,10,2.76,12,3.516]],["t/66",[1,4.006,13,3.613]],["t/68",[7,2.017,13,3.129,14,3.987]],["t/70",[15,4.603,16,4.603]],["t/72",[13,3.613,17,3.613]],["t/76",[3,2.079,18,3.516,19,2.207,20,2.76]],["t/78",[3,2.079,7,1.779,19,2.207,20,2.76]],["t/80",[3,1.86,17,2.468,20,2.468,21,2.468,22,2.737]],["t/82",[19,2.502,23,3.987,24,3.129]],["t/84",[21,2.232,24,2.232,25,2.844,26,2.844,27,2.844,28,2.475]],["t/104",[7,2.329,29,3.613]],["t/106",[7,2.329,30,4.603]],["t/108",[7,2.329,31,4.603]],["t/110",[7,2.329,32,2.889]],["t/117",[9,1.874,33,2.035]],["t/119",[33,2.035,34,3.319]],["t/121",[33,2.035,35,3.613]],["t/125",[29,3.613,34,3.319]],["t/127",[34,3.319,36,4.603]],["t/130",[37,1.671,38,3.145,39,3.145,40,2.737,41,3.145]],["t/132",[37,1.379,42,1.453,43,3.136,44,2.596,45,2.596,46,2.596]],["t/134",[29,1.615,37,1.093,40,1.791,43,1.615,47,1.292,48,1.615,49,2.058,50,2.058,51,1.615,52,2.058]],["t/136",[9,1.28,37,1.671,42,1.76,47,1.974,53,3.145]],["t/138",[9,1.431,37,1.868,42,1.967,47,2.207]],["t/140",[9,1.28,37,1.671,42,1.76,47,1.974,54,2.737]],["t/142",[9,1.623,37,2.118,55,3.987]],["t/144",[37,1.174,47,1.387,48,1.735,51,1.735,56,2.211,57,2.211,58,2.211,59,2.211,60,1.594]],["t/146",[37,0.856,42,0.902,43,1.265,47,1.012,48,1.265,51,1.265,60,1.162,61,1.612,62,1.612,63,1.612,64,1.403,65,1.612,66,1.612,67,1.612]],["t/149",[68,5.446]],["t/151",[69,4.603,70,4.006]],["t/153",[34,2.875,71,3.987,72,3.987]],["t/156",[32,2.889,33,2.035]],["t/158",[32,2.502,33,1.763,73,3.47]],["t/160",[33,2.035,74,4.603]],["t/162",[33,2.035,75,4.603]],["t/164",[33,2.035,76,4.603]],["t/166",[33,2.035,77,4.603]],["t/168",[33,2.035,78,4.603]],["t/170",[33,1.763,79,3.987,80,3.987]],["t/172",[17,2.76,33,1.554,81,3.06,82,2.76]],["t/174",[33,1.554,81,3.06,82,2.76,83,3.516]],["t/177",[5,2.875,82,3.129,84,3.987]],["t/179",[5,2.875,85,3.987,86,3.987]],["t/183",[35,3.129,87,3.987,88,3.47]],["t/185",[35,3.129,88,3.47,89,3.987]],["t/209",[90,3.516,91,3.516,92,3.516,93,3.516]],["t/211",[94,4.603,95,4.603]],["t/217",[3,2.358,6,2.875,96,3.987]],["t/219",[7,2.329,97,4.006]],["t/221",[9,1.874,54,4.006]],["t/225",[98,5.446]],["t/231",[9,1.874,99,4.603]],["t/233",[6,3.319,9,1.874]],["t/235",[100,4.603,101,4.603]],["t/237",[9,1.874,97,4.006]],["t/240",[9,1.874,19,2.889]],["t/242",[6,2.875,9,1.623,19,2.502]],["t/244",[9,1.431,19,2.207,102,3.516,103,3.516]],["t/247",[104,5.446]],["t/249",[105,4.006,106,4.006]],["t/251",[7,2.329,32,2.889]],["t/253",[32,2.889,73,4.006]],["t/255",[32,3.418]],["t/257",[42,2.576,70,4.006]],["t/265",[107,5.446]],["t/267",[5,2.051,21,2.232,22,2.475,42,1.591,60,2.051,108,2.844]],["t/269",[42,1.967,60,2.535,105,3.06,106,3.06]],["t/271",[24,2.76,28,3.06,64,3.06,109,3.516]]],"invertedIndex":[["",{"_index":33,"t":{"117":{"position":[[0,3]]},"119":{"position":[[0,3]]},"121":{"position":[[0,3]]},"156":{"position":[[0,3]]},"158":{"position":[[0,3]]},"160":{"position":[[0,3]]},"162":{"position":[[0,3]]},"164":{"position":[[0,3]]},"166":{"position":[[0,3]]},"168":{"position":[[0,3]]},"170":{"position":[[0,3]]},"172":{"position":[[0,3]]},"174":{"position":[[0,3]]}}}],["0o0600",{"_index":67,"t":{"146":{"position":[[102,10]]}}}],["0o677",{"_index":65,"t":{"146":{"position":[[83,7]]}}}],["access",{"_index":28,"t":{"84":{"position":[[29,6]]},"271":{"position":[[7,6]]}}}],["ai",{"_index":80,"t":{"170":{"position":[[13,2]]}}}],["alreadi",{"_index":59,"t":{"144":{"position":[[65,7]]}}}],["api",{"_index":82,"t":{"172":{"position":[[19,3]]},"174":{"position":[[14,4]]},"177":{"position":[[6,3]]}}}],["assign",{"_index":62,"t":{"146":{"position":[[44,10]]}}}],["authent",{"_index":86,"t":{"179":{"position":[[12,14]]}}}],["auto",{"_index":8,"t":{"58":{"position":[[0,4]]},"60":{"position":[[0,4]]},"62":{"position":[[0,4]]}}}],["azur",{"_index":73,"t":{"158":{"position":[[4,5]]},"253":{"position":[[0,5]]}}}],["call",{"_index":54,"t":{"140":{"position":[[47,4]]},"221":{"position":[[0,4]]}}}],["code",{"_index":3,"t":{"46":{"position":[[15,4]]},"48":{"position":[[11,4]]},"50":{"position":[[7,4]]},"76":{"position":[[13,4]]},"78":{"position":[[21,4]]},"80":{"position":[[38,4]]},"217":{"position":[[21,4]]}}}],["codeinterpret",{"_index":36,"t":{"127":{"position":[[0,15]]}}}],["conclus",{"_index":98,"t":{"225":{"position":[[0,10]]}}}],["configur",{"_index":7,"t":{"54":{"position":[[0,14]]},"60":{"position":[[22,13]]},"68":{"position":[[23,13]]},"78":{"position":[[7,9]]},"104":{"position":[[8,13]]},"106":{"position":[[8,13]]},"108":{"position":[[10,13]]},"110":{"position":[[7,13]]},"219":{"position":[[0,9]]},"251":{"position":[[7,13]]}}}],["connect",{"_index":45,"t":{"132":{"position":[[52,7]]}}}],["contain",{"_index":24,"t":{"82":{"position":[[19,9]]},"84":{"position":[[47,10]]},"271":{"position":[[38,9]]}}}],["convers",{"_index":92,"t":{"209":{"position":[[10,12]]}}}],["creat",{"_index":87,"t":{"183":{"position":[[0,6]]}}}],["custom",{"_index":17,"t":{"72":{"position":[[7,9]]},"80":{"position":[[7,9]]},"172":{"position":[[4,10]]}}}],["debug",{"_index":55,"t":{"142":{"position":[[10,5]]}}}],["demo",{"_index":0,"t":{"42":{"position":[[0,4]]}}}],["directori",{"_index":106,"t":{"249":{"position":[[8,9]]},"269":{"position":[[42,9]]}}}],["docker",{"_index":21,"t":{"80":{"position":[[21,6]]},"84":{"position":[[40,6]]},"267":{"position":[[36,6]]}}}],["docker.daemon",{"_index":46,"t":{"132":{"position":[[63,15]]}}}],["embed",{"_index":31,"t":{"108":{"position":[[0,9]]}}}],["enabl",{"_index":1,"t":{"43":{"position":[[7,6]]},"66":{"position":[[7,6]]}}}],["entra",{"_index":85,"t":{"179":{"position":[[6,5]]}}}],["error",{"_index":48,"t":{"134":{"position":[[13,6]]},"144":{"position":[[17,5]]},"146":{"position":[[17,5]]}}}],["event",{"_index":57,"t":{"144":{"position":[[51,5]]}}}],["exampl",{"_index":34,"t":{"119":{"position":[[4,7]]},"125":{"position":[[8,8]]},"127":{"position":[[16,8]]},"153":{"position":[[15,7]]}}}],["execut",{"_index":20,"t":{"76":{"position":[[18,9]]},"78":{"position":[[26,9]]},"80":{"position":[[43,9]]}}}],["experi",{"_index":35,"t":{"121":{"position":[[4,10]]},"183":{"position":[[21,10]]},"185":{"position":[[21,10]]}}}],["extern",{"_index":26,"t":{"84":{"position":[[12,8]]}}}],["fail",{"_index":43,"t":{"132":{"position":[[18,5],[41,7]]},"134":{"position":[[39,6]]},"146":{"position":[[55,6]]}}}],["field",{"_index":52,"t":{"134":{"position":[[88,7]]}}}],["file",{"_index":64,"t":{"146":{"position":[[73,5]]},"271":{"position":[[25,5]]}}}],["gemini",{"_index":76,"t":{"164":{"position":[[4,6]]}}}],["gener",{"_index":40,"t":{"130":{"position":[[27,8]]},"134":{"position":[[49,8]]}}}],["glm",{"_index":78,"t":{"168":{"position":[[4,3]]}}}],["handcraft",{"_index":88,"t":{"183":{"position":[[9,11]]},"185":{"position":[[9,11]]}}}],["histori",{"_index":93,"t":{"209":{"position":[[23,7]]}}}],["imag",{"_index":22,"t":{"80":{"position":[[28,5]]},"267":{"position":[[43,5]]}}}],["implement",{"_index":6,"t":{"50":{"position":[[25,12]]},"217":{"position":[[0,9]]},"233":{"position":[[7,14]]},"242":{"position":[[28,12]]}}}],["import",{"_index":100,"t":{"235":{"position":[[0,9]]}}}],["infrastructur",{"_index":14,"t":{"68":{"position":[[8,14]]}}}],["instal",{"_index":104,"t":{"247":{"position":[[0,12]]}}}],["instead",{"_index":66,"t":{"146":{"position":[[91,7]]}}}],["key",{"_index":84,"t":{"177":{"position":[[10,3]]}}}],["keyword",{"_index":79,"t":{"170":{"position":[[4,8]]}}}],["know",{"_index":53,"t":{"136":{"position":[[12,4]]}}}],["limit",{"_index":23,"t":{"82":{"position":[[0,11]]}}}],["litellm",{"_index":74,"t":{"160":{"position":[[4,7]]}}}],["llm",{"_index":81,"t":{"172":{"position":[[15,3]]},"174":{"position":[[10,3]]}}}],["load",{"_index":89,"t":{"185":{"position":[[0,4]]}}}],["local",{"_index":109,"t":{"271":{"position":[[19,5]]}}}],["log",{"_index":44,"t":{"132":{"position":[[32,4]]}}}],["long",{"_index":39,"t":{"130":{"position":[[19,4]]}}}],["loop",{"_index":58,"t":{"144":{"position":[[57,4]]}}}],["memori",{"_index":95,"t":{"211":{"position":[[7,6]]}}}],["messag",{"_index":51,"t":{"134":{"position":[[71,7]]},"144":{"position":[[23,7]]},"146":{"position":[[23,7]]}}}],["metric",{"_index":16,"t":{"70":{"position":[[16,7]]}}}],["mode",{"_index":19,"t":{"76":{"position":[[4,5]]},"78":{"position":[[36,4]]},"82":{"position":[[29,4]]},"240":{"position":[[24,5]]},"242":{"position":[[23,4]]},"244":{"position":[[37,5]]}}}],["model",{"_index":102,"t":{"244":{"position":[[6,6]]}}}],["motiv",{"_index":68,"t":{"149":{"position":[[0,10]]}}}],["multi",{"_index":83,"t":{"174":{"position":[[4,5]]}}}],["need",{"_index":2,"t":{"46":{"position":[[10,4]]}}}],["network",{"_index":27,"t":{"84":{"position":[[21,7]]}}}],["note",{"_index":101,"t":{"235":{"position":[[10,5]]}}}],["ollama",{"_index":75,"t":{"162":{"position":[[4,6]]}}}],["on",{"_index":108,"t":{"267":{"position":[[32,3]]}}}],["openai",{"_index":32,"t":{"110":{"position":[[0,6]]},"156":{"position":[[4,6]]},"158":{"position":[[10,6]]},"251":{"position":[[0,6]]},"253":{"position":[[6,6]]},"255":{"position":[[0,6]]}}}],["output",{"_index":41,"t":{"130":{"position":[[40,7]]}}}],["overview",{"_index":11,"t":{"58":{"position":[[22,8]]}}}],["permiss",{"_index":61,"t":{"146":{"position":[[31,12]]}}}],["planner",{"_index":29,"t":{"104":{"position":[[0,7]]},"125":{"position":[[0,7]]},"134":{"position":[[31,7]]}}}],["plugin",{"_index":9,"t":{"58":{"position":[[5,6]]},"60":{"position":[[5,6]]},"62":{"position":[[5,6]]},"117":{"position":[[4,6]]},"136":{"position":[[42,7]]},"138":{"position":[[32,7]]},"140":{"position":[[29,6]]},"142":{"position":[[19,7]]},"221":{"position":[[9,6]]},"231":{"position":[[0,6]]},"233":{"position":[[0,6]]},"237":{"position":[[0,6]]},"240":{"position":[[12,6]]},"242":{"position":[[11,6]]},"244":{"position":[[25,6]]}}}],["prepar",{"_index":12,"t":{"62":{"position":[[22,11]]}}}],["prerequisit",{"_index":107,"t":{"265":{"position":[[0,13]]}}}],["project",{"_index":105,"t":{"249":{"position":[[0,7]]},"269":{"position":[[34,7]]}}}],["python",{"_index":96,"t":{"217":{"position":[[14,6]]}}}],["q",{"_index":37,"t":{"130":{"position":[[0,2]]},"132":{"position":[[0,2]]},"134":{"position":[[0,2]]},"136":{"position":[[0,2]]},"138":{"position":[[0,2]]},"140":{"position":[[0,2]]},"142":{"position":[[0,2]]},"144":{"position":[[0,2]]},"146":{"position":[[0,2]]}}}],["quick",{"_index":69,"t":{"151":{"position":[[0,5]]}}}],["qwen",{"_index":77,"t":{"166":{"position":[[4,4]]}}}],["restrict",{"_index":25,"t":{"84":{"position":[[0,11]]}}}],["role",{"_index":90,"t":{"209":{"position":[[0,4]]}}}],["run",{"_index":60,"t":{"144":{"position":[[73,9]]},"146":{"position":[[118,7]]},"267":{"position":[[0,3]]},"269":{"position":[[7,3]]}}}],["runtimeerror",{"_index":56,"t":{"144":{"position":[[31,14]]}}}],["say",{"_index":49,"t":{"134":{"position":[[20,6]]}}}],["schema",{"_index":97,"t":{"219":{"position":[[14,6]]},"237":{"position":[[7,6]]}}}],["secur",{"_index":63,"t":{"146":{"position":[[66,6]]}}}],["see",{"_index":47,"t":{"134":{"position":[[9,3]]},"136":{"position":[[35,3]]},"138":{"position":[[25,3]]},"140":{"position":[[22,3]]},"144":{"position":[[9,3]]},"146":{"position":[[9,3]]}}}],["select",{"_index":10,"t":{"58":{"position":[[12,9]]},"60":{"position":[[12,9]]},"62":{"position":[[12,9]]}}}],["send_to",{"_index":50,"t":{"134":{"position":[[62,8]]}}}],["session",{"_index":30,"t":{"106":{"position":[[0,7]]}}}],["share",{"_index":94,"t":{"211":{"position":[[0,6]]}}}],["start",{"_index":70,"t":{"151":{"position":[[6,5]]},"257":{"position":[[0,5]]}}}],["structur",{"_index":99,"t":{"231":{"position":[[7,9]]}}}],["support",{"_index":103,"t":{"244":{"position":[[13,7]]}}}],["take",{"_index":38,"t":{"130":{"position":[[10,5]]}}}],["taskweav",{"_index":42,"t":{"132":{"position":[[7,10]]},"136":{"position":[[20,10]]},"138":{"position":[[7,10]]},"140":{"position":[[7,10]]},"146":{"position":[[126,11]]},"257":{"position":[[6,10]]},"267":{"position":[[4,10]]},"269":{"position":[[11,10]]}}}],["through",{"_index":72,"t":{"153":{"position":[[7,7]]}}}],["trace",{"_index":13,"t":{"66":{"position":[[14,7]]},"68":{"position":[[0,7]]},"72":{"position":[[17,7]]}}}],["two",{"_index":18,"t":{"76":{"position":[[0,3]]}}}],["us",{"_index":5,"t":{"48":{"position":[[7,3]]},"177":{"position":[[0,5]]},"179":{"position":[[0,5]]},"267":{"position":[[15,5]]}}}],["verif",{"_index":4,"t":{"46":{"position":[[20,13]]},"48":{"position":[[16,13]]},"50":{"position":[[12,12]]}}}],["view",{"_index":15,"t":{"70":{"position":[[7,4]]}}}],["walk",{"_index":71,"t":{"153":{"position":[[2,4]]}}}],["wise",{"_index":91,"t":{"209":{"position":[[5,4]]}}}]],"pipeline":["stemmer"]}},{"documents":[{"i":40,"t":"TaskWeaver's CLI-only mode enables users to effortlessly communicate with the Command Line Interface (CLI) using natural language.","s":"CLI Only Mode","u":"/TaskWeaver/docs/advanced/cli_only","p":40},{"i":45,"t":"Code Verification","s":"Code Verification","u":"/TaskWeaver/docs/advanced/code_verification","p":45},{"i":52,"t":"After chatting for a few rounds, the chat history can become quite long, especially when we have code and execution results in it.","s":"Prompt Compression","u":"/TaskWeaver/docs/advanced/compression","p":52},{"i":56,"t":"In TaskWeaver, we provide an auto plugin selection mechanism to dynamically select the best plugin for each user request.","s":"Auto Plugin Selection","u":"/TaskWeaver/docs/advanced/plugin_selection","p":56},{"i":64,"t":"TaskWeaver now supports tracing with OpenTelemetry,","s":"Telemetry","u":"/TaskWeaver/docs/advanced/telemetry","p":64},{"i":74,"t":"💡We have set the container mode as default for code execution, especially when the usage of the agent","s":"Code Execution","u":"/TaskWeaver/docs/code_execution","p":74},{"i":86,"t":"An attachment is a data concept in TaskWeaver which contains additional data other than the text message in the post.","s":"Attachment","u":"/TaskWeaver/docs/concepts/attachment","p":86},{"i":88,"t":"The TaskWeaverApp is the main class of the TaskWeaver library. It is the entry point for the library and is used to create and run tasks.","s":"Application","u":"/TaskWeaver/docs/concepts/app","p":88},{"i":90,"t":"A conversation is a data concept in TaskWeaver which contains a dialog between the user and the TaskWeaver app.","s":"Conversation","u":"/TaskWeaver/docs/concepts/conversation","p":90},{"i":92,"t":"Plugins are the user-defined functions that extend TaskWeaver CodeInterpreter's capabilities.","s":"Plugin","u":"/TaskWeaver/docs/concepts/plugin","p":92},{"i":94,"t":"A project folder is a directory that stores the configuration files, plugins, examples, logs, and workspace data.","s":"Project","u":"/TaskWeaver/docs/concepts/project","p":94},{"i":96,"t":"The post is a data concept in TaskWeaver which contains a single message in the conversation.","s":"Post","u":"/TaskWeaver/docs/concepts/post","p":96},{"i":98,"t":"A round is a data concept in TaskWeaver which contains a single round of chat between the user and the TaskWeaver app.","s":"Round","u":"/TaskWeaver/docs/concepts/round","p":98},{"i":100,"t":"A session is a conversation instance that the user has with the TaskWeaver app.","s":"Session","u":"/TaskWeaver/docs/concepts/session","p":100},{"i":102,"t":"More details about important configurations.","s":"More about Configurations","u":"/TaskWeaver/docs/configurations/configurations_in_detail","p":102},{"i":112,"t":"The role is a concept in TaskWeaver which represents the different roles in the conversation system.","s":"Role","u":"/TaskWeaver/docs/concepts/role","p":112},{"i":114,"t":"An overview of all configurations available in the config file, which is located at project/taskweaver_config.json.","s":"Configuration File","u":"/TaskWeaver/docs/configurations/overview","p":114},{"i":116,"t":"Learn how to customize TaskWeaver","s":"","u":"/TaskWeaver/docs/customization/","p":116},{"i":123,"t":"There are currently two types of examples: (1) Planner examples and (2) CodeInterpreter examples.","s":"Customizing Examples","u":"/TaskWeaver/docs/customization/example/","p":123},{"i":129,"t":"Q: Why it takes so long to generate the output?","s":"FAQ","u":"/TaskWeaver/docs/FAQ","p":129},{"i":148,"t":"Motivation","s":"Experience","u":"/TaskWeaver/docs/customization/experience/","p":148},{"i":155,"t":"Learn how to call models from different LLMs","s":"","u":"/TaskWeaver/docs/llms/","p":155},{"i":176,"t":"Using LLMs from OpenAI/AOAI","s":"Azure OpenAI","u":"/TaskWeaver/docs/llms/aoai","p":176},{"i":181,"t":"We have introduced the motivation of the experience module in Experience.","s":"Handcrafted Experience","u":"/TaskWeaver/docs/customization/experience/handcrafted_experience","p":181},{"i":187,"t":"Using LLMs from Anthropic (Claude)","s":"Anthropic (Claude)","u":"/TaskWeaver/docs/llms/anthropic","p":187},{"i":189,"t":"1. Create an account on Google AI and get your API key.","s":"Gemini","u":"/TaskWeaver/docs/llms/gemini","p":189},{"i":191,"t":"1. Groq was founded in 2016 by Chief Executive Officer Jonathan Ross, a former Google LLC engineer who invented the search giant's TPU machine learning processors. Go to Groq and register an account and get the API key from here. More details can be found here.","s":"GroqChat","u":"/TaskWeaver/docs/llms/groq","p":191},{"i":193,"t":"We welcome developers to use your customized LLM API in TaskWeaver.","s":"Customized LLM API","u":"/TaskWeaver/docs/llms/customized_llm_api","p":193},{"i":195,"t":"Using LLMs from Keywords AI and have better observability.","s":"Keywords AI","u":"/TaskWeaver/docs/llms/Keywords-AI","p":195},{"i":197,"t":"1. GLM (ChatGLM) is a LLM developed by Zhipu AI and Tsinghua KEG. Go to ZhipuAI and register an account and get the API key. More details can be found here.","s":"GLM","u":"/TaskWeaver/docs/llms/glm","p":197},{"i":199,"t":"Using LLMs from LiteLLM","s":"LiteLLM","u":"/TaskWeaver/docs/llms/liteLLM","p":199},{"i":201,"t":"1. Go to Ollama and follow the instructions to serve a LLM model on your local environment.","s":"Ollama","u":"/TaskWeaver/docs/llms/ollama","p":201},{"i":203,"t":"Using LLMs from OpenAI","s":"OpenAI","u":"/TaskWeaver/docs/llms/openai","p":203},{"i":205,"t":"In some cases, you may want to use different LLMs for different components.","s":"Multi LLM APIs","u":"/TaskWeaver/docs/llms/multi-llm","p":205},{"i":207,"t":"The primary purpose of the memory module is to store the information that is required to maintain the context of the conversation.","s":"Memory","u":"/TaskWeaver/docs/memory","p":207},{"i":213,"t":"1. QWen (Tongyi Qianwen) is a LLM developed by Alibaba. Go to QWen and register an account and get the API key. More details can be found here (in Chinese).","s":"QWen","u":"/TaskWeaver/docs/llms/qwen","p":213},{"i":215,"t":"How to develop a new plugin","s":"An Example of Developing a New Plugin","u":"/TaskWeaver/docs/plugin/how_to_develop_a_new_plugin","p":215},{"i":223,"t":"Multiple YAML files to one Python implementation","s":"Multiple YAML files to one Python implementation","u":"/TaskWeaver/docs/plugin/multi_yaml_single_impl","p":223},{"i":227,"t":">> [INIT_PLAN] 1. search xbox price 2. report the result to the user >>> [PLAN] 1. instruct CodeInterpreter to search xbox price 2. report the result to the user >>> [CURRENT_PLAN_STEP] 1. instruct CodeInterpreter to search xbox price >>> [SEND_TO] CodeInterpreter >>> [MESSAGE] Please search xbox price >>> [PLANNER->CODEINTERPRETER] Please search xbox price Back to the Code Interpreter, the auto plugin selection mechanism is triggered. We can check the log file task_weaver.log again to see the auto plugin selector selected the top-3 plugins with the highest cosine similarity scores. 023-12-18 14:24:34,513 - INFO - Planner talk to CodeInterpreter: Please search xbox price using klarna_search plugin 2023-12-18 14:24:34,669 - INFO - Selected plugins: ['klarna_search', 'sql_pull_data', 'paper_summary'] 2023-12-18 14:24:34,669 - INFO - Selected plugin pool: ['klarna_search', 'sql_pull_data', 'paper_summary'] Then the Code Interpreter will generate the code using the selected plugins. >>> [THOUGHT] ProgramApe will call the klarna_search plugin function to search for Xbox prices. >>> [PYTHON] search_results, description = klarna_search(query=\"xbox\") search_results, description >>> [VERIFICATION] NONE >>> [STATUS] SUCCESS >>> [RESULT] The execution of the generated python code above has succeeded The result of above Python code after execution is: ( name price url attributes 0 Microsoft Xbox Series X - Black Edition $399.00 https://www.klarna.com/us/shopping/pl/cl52/495... [Release Year:2020, Included Accessories:1 gam... 1 Microsoft Xbox Series S 1TB - Black $349.00 https://www.klarna.com/us/shopping/pl/cl52/320... [Included Accessories:1 gamepad, Media Type:DV... .. ... ... ... ... 3 Xbox Series S – Starter Bundle $239.00 https://www.klarna.com/us/shopping/pl/cl52/320... [Platform:Xbox One] 4 Microsoft Xbox Series X 1TB Console - Diablo I... $385.58 https://www.klarna.com/us/shopping/pl/cl52/320... [Release Year:2023, Included Accessories:1 gam... [5 rows x 4 columns], 'The response is a dataframe with the following columns: name, price, url, attributes. The attributes column is a list of tags. The price is in the format of $xx.xx.') >>> [CODEINTERPRETER->PLANNER] The following python code has been executed: ```python search_results, description = klarna_search(query=\"xbox\") search_results, description ``` The execution of the generated python code above has succeeded The result of above Python code after execution is: ( name price url attributes 0 Microsoft Xbox Series X - Black Edition $399.00 https://www.klarna.com/us/shopping/pl/cl52/495... [Release Year:2020, Included Accessories:1 gam... 1 Microsoft Xbox Series S 1TB - Black $349.00 https://www.klarna.com/us/shopping/pl/cl52/320... [Included Accessories:1 gamepad, Media Type:DV... .. ... ... ... ... 3 Xbox Series S – Starter Bundle $239.00 https://www.klarna.com/us/shopping/pl/cl52/320... [Platform:Xbox One] 4 Microsoft Xbox Series X 1TB Console - Diablo I... $385.58 https://www.klarna.com/us/shopping/pl/cl52/320... [Release Year:2023, Included Accessories:1 gam... [5 rows x 4 columns], 'The response is a dataframe with the following columns: name, price, url, attributes. The attributes column is a list of tags. The price is in the format of $xx.xx.') Finally, the Planner will report the result to the user. >>> [INIT_PLAN] 1. search xbox price using klarna_search plugin 2. report the result to the user >>> [PLAN] 1. instruct CodeInterpreter to search xbox price using klarna_search plugin 2. report the result to the user >>> [CURRENT_PLAN_STEP] 2. report the result to the user >>> [SEND_TO] User >>> [MESSAGE] Here are some Xbox prices I found: 1. Microsoft Xbox Series X - Black Edition: $399.00 2. Microsoft Xbox Series S 1TB - Black: $349.00 3. Xbox Series S – Starter Bundle: $239.00 4. Microsoft Xbox Series X 1TB Console - Diablo Immortal Edition: $385.58 Please note that these prices are subject to change and availability. >>> [PLANNER->USER] Here are some Xbox prices I found: 1. Microsoft Xbox Series X - Black Edition: $399.00 2. Microsoft Xbox Series S 1TB - Black: $349.00 3. Xbox Series S – Starter Bundle: $239.00 4. Microsoft Xbox Series X 1TB Console - Diablo Immortal Edition: $385.58 Please note that these prices are subject to change and availability. TaskWeaver: Here are some Xbox prices I found: 1. Microsoft Xbox Series X - Black Edition: $399.00 2. Microsoft Xbox Series S 1TB - Black: $349.00 3. Xbox Series S – Starter Bundle: $239.00 4. Microsoft Xbox Series X 1TB Console - Diablo Immortal Edition: $385.58 Please note that these prices are subject to change and availability.","s":"Auto Plugin Selection Preparation","u":"/TaskWeaver/docs/advanced/plugin_selection","h":"#auto-plugin-selection-preparation","p":56},{"i":65,"t":"TaskWeaver now supports tracing with OpenTelemetry, which is one of the most popular open-source observability frameworks. This allows you to trace the following: Interactions between roles, i.e., the Planner, the CodeInterpreter, and the Executor. The time consumed by each role and major components of TaskWeaver. The prompts sent to the LLM and the responses received from the LLM. The status of the tasks and the errors encountered. The number of tokens consumed by each role. The following screenshot shows a trace of a simple task: analyzing an uploaded file. From this view, you can see the timeline of the task execution, which breaks majorly into three parts: The planning phase, where the Planner decides the sub-tasks to be executed. The code generation and execution phase, where the CodeGenerator generates the code and the CodeExecutor executes it. The reply phase, where the Planner sends the reply to the user. The bars with a black line represent the critical path of the task execution, which is the longest path through the task execution. This is useful for identifying the bottleneck of the task execution. We can clearly see that, currently, the task execution is dominated by the calls to the LLM. We can click the span (a unit of work in the trace) to see the details of the span, including the logs and the attributes. The screenshot below shows the details of the span of Planner's reply function: From this view, we can see the user query, the prompt sent to the LLM, and the tokens consumed (prompt_size and output_size) by the LLM. We also recorded the generated code, the posts between different roles, etc. in the trace. There are also views of the trace, for example the call graph view, which shows the call hierarchy of the spans. Here is the call graph of the trace:","s":"Telemetry","u":"/TaskWeaver/docs/advanced/telemetry","h":"","p":64},{"i":67,"t":"Tracing is by default disabled. To enable tracing, you need to install packages required by OpenTelemetry. Please check the OpenTelemetry website for the installation guide. It basically requires you to install the opentelemetry-api, opentelemetry-sdk, opentelemetry-exporter-otlp, opentelemetry-instrumentation and tiktoken packages. To count the number of tokens consumed during task execution, you also need to install the tiktoken package. We now only support the tokenizers of the OpenAI models. After installing the packages, you can enable tracing by setting the tracing.enabled=true in the project configuration file. The default tokenizer target model is gpt-4, if you want to use another model, you can set the tracing.tokenizer_target_model in the project configuration file. You can find the available models in the tiktoken code. A typical configuration for tracing in the project configuration file is as follows: { \"tracing.enabled\": true, \"tracing.exporter\": \"otlp\", \"tracing.endpoint\": \"http://127.0.0.1:4317\", \"tracing.tokenizer_target_model\": \"gpt-4\" } Next, we need to set up the infrastructure for tracing. The following diagram shows the architecture of a toy tracing system. It is a toy system and the data is not persisted. In a real-world scenario, you need to set up a more robust system. The instrumentation in the TaskWeaver code will send the traces and metrics to the OpenTelemetry collector. An OpenTelemetry collector is a component that receives traces and metrics from the instrumentation, does some processing, and exports them to another collector or a backend. In our case, we configure the collector to export the traces to a Jaeger backend and the metrics to a Prometheus backend. You can run the following command to set up the infrastructure: cd /TaskWeaver/tracing docker-compose up You shall see a bunch of logs from the containers. Take a look at the logs to see if there are any errors. If no errors are found, you can access the Prometheus frontend at http://localhost:9090 and the Jaeger frontend at http://localhost:16686. In this setup, we assume you are running the containers on the same machine of TaskWeaver. If you are running the containers on different machines, you need to configure the endpoint of the OpenTelemetry collector in the TaskWeaver configuration file. The default endpoint is http://127.0.0.1:4317, you can set the tracing.endpoint in the project configuration file to change the endpoint address.","s":"How to enable tracing","u":"/TaskWeaver/docs/advanced/telemetry","h":"#how-to-enable-tracing","p":64},{"i":69,"t":"Both Jaeger and Prometheus are popular open-source monitoring systems. We have prepared a docker-compose file to set up the infrastructure in /TaskWeaver/tracing_configure/docker-compose.yaml. The content of the file is as follows: version: '3' services: optl-collector: image: otel/opentelemetry-collector:0.96.0 command: [\"--config=/etc/collector-config.yaml\"] volumes: - ./collector-config.yaml:/etc/collector-config.yaml ports: - \"4317:4317\" # Expose the gRPC receiver port for the collector depends_on: - jaeger jaeger: image: jaegertracing/all-in-one:1.54 ports: - \"16686:16686\" # Jaeger UI prometheus: image: prom/prometheus:latest ports: - \"9090:9090\" # Prometheus UI volumes: - ./prometheus-config.yml:/etc/prometheus/prometheus.yml command: [\"--config.file=/etc/prometheus/prometheus.yml\"] depends_on: - optl-collector If you read the file, you can see that we use the otl/opentelemetry-collector image to set up the OpenTelemetry collector, We only expose the gRPC receiver port for the collector, which is 4317. The collector configuration file is collector-config.yaml, which is mounted to the container. The configuration file is as follows: receivers: otlp: protocols: grpc: endpoint: 0.0.0.0:4317 http: endpoint: 0.0.0.0:4318 exporters: debug: verbosity: detailed otlp: endpoint: \"jaeger:4317\" tls: insecure: true prometheus: endpoint: \"0.0.0.0:9464\" service: pipelines: traces: receivers: [otlp] exporters: [otlp] metrics: receivers: [otlp] exporters: [prometheus] logs: receivers: [otlp] exporters: [debug] Because Jaeger is compatible with the OpenTelemetry collector, we can export the traces to Jaeger by setting the otlp exporter. We also export the metrics to Prometheus by setting the prometheus exporter. The prometheus-config.yml file is the configuration file for Prometheus, which is as follows: scrape_configs: - job_name: optl-collector scrape_interval: 5s static_configs: - targets: [\"optl-collector:9464\"] We only scrape the metrics from the OpenTelemetry collector.","s":"Tracing Infrastructure Configuration","u":"/TaskWeaver/docs/advanced/telemetry","h":"#tracing-infrastructure-configuration","p":64},{"i":71,"t":"In the first section, we have explained how to view the traces in the Jaeger frontend. Viewing the metrics in the Prometheus frontend is more complicated as each metric is a time series. A time series is a sequence of data points, which are usually timestamped. OpenTelemetry allows to add attributes to the metrics, so that you can filter the metrics by the attributes. In our current implementation, we only have one metric called prompt_size which records the size of the prompt sent to the LLM. In Prometheus, you should be able to see a time series for the prompt_size metric, namely prompt_size_total. prompt_size_total is the accumulated prompt size of all the traces which increases monotonically. We annotate the traces with the only one attribute called direction, which can be either input or output. They are indicating the input prompt size and the LLM response output size, respectively. You can query the metrics in the Prometheus frontend. The query language is called PromQL which is quite powerful. You can refer to the Prometheus documentation for the details of the query language. The query for the above chart is increase(prompt_size_total[10m]), which means to show the increase of the token consumption in the last 10 minutes sliding window. If you want to use Grafana to visualize the metrics, you can set up a Grafana instance and add Prometheus as the data source. This can be done by appending the following content to the docker-compose.yaml file: grafana: image: grafana/grafana-enterprise:latest ports: - \"3000:3000\" # Grafana UI environment: - GF_SECURITY_ADMIN_PASSWORD=secret # You should change 'secret' to a password of your choosing - GF_USERS_ALLOW_SIGN_UP=false volumes: - grafana_data:/var/lib/grafana depends_on: - prometheus volumes: grafana_data:","s":"How to view the metrics","u":"/TaskWeaver/docs/advanced/telemetry","h":"#how-to-view-the-metrics","p":64},{"i":73,"t":"The instrumentation of TaskWeaver is done by the OpenTelemetry Python SDK. So, if you want to customize the tracing, you need to modify the TaskWeaver code. In TaskWeaver, we add a layer of abstraction to the OpenTelemetry SDK, so that it is easier to hide the details of the OpenTelemetry SDK from the TaskWeaver code. You can find the abstraction layer in the taskweaver.module.tracing module. In the taskweaver.module.tracing module, we define the Tracing class, which is a wrapper of the OpenTelemetry SDK. The Tracing class provides the following methods: set_span_status: Set the status of the span. set_span_attribute: Set the attribute of the span. set_span_exception: Set the exception of the span. add_prompt_size: Add the prompt size to the span. In addition, we define the decorator tracing_decorator (or the non-class version tracing_decorator_non_class) to trace the function calls. When you need to create a context for tracing, you can use with get_tracer().start_as_current_span(\"span_name\") as span: # your code When you need to trace a function, you can use @tracing_decorator def your_function(self, *args, **kwargs): # your code","s":"How to customize tracing","u":"/TaskWeaver/docs/advanced/telemetry","h":"#how-to-customize-tracing","p":64},{"i":75,"t":"💡We have set the container mode as default for code execution, especially when the usage of the agent is open to untrusted users. Refer to Docker Security for better understanding of the security features of Docker. To opt for the local mode, you need to explicitly set the execution_service.kernel_mode parameter in the taskweaver_config.json file to local. TaskWeaver is a code-first agent framework, which means that it always converts the user request into code and executes the code to generate the response. In our current implementation, we use a Jupyter Kernel to execute the code. We choose Jupyter Kernel because it is a well-established tool for interactive computing, and it supports many programming languages.","s":"Code Execution","u":"/TaskWeaver/docs/code_execution","h":"","p":74},{"i":77,"t":"TaskWeaver supports two modes of code execution: local and container. The container mode is the default mode. The key difference between the two modes is that the container mode executes the code inside a Docker container, which provides a more secure environment for code execution, while the local mode executes the code as a subprocess of the TaskWeaver process. As a result, in the local mode, if the user has malicious intent, the user could potentially instruct TaskWeaver to execute harmful code on the host machine. In addition, the LLM could also generate harmful code, leading to potential security risks. danger Please be cautious when using the local mode, especially when the usage of the agent is open to untrusted users.","s":"Two Modes of Code Execution","u":"/TaskWeaver/docs/code_execution","h":"#two-modes-of-code-execution","p":74},{"i":79,"t":"To configure the code execution mode, you need to set the execution_service.kernel_mode parameter in the taskweaver_config.json file. The value of the parameter could be local or container. The default value is container. TaskWeaver supports the local mode without any additional setup. However, to use the container mode, there are a few prerequisites: Docker is installed on the host machine. A Docker image is built and available on the host machine for code execution. The execution_service.kernel_mode parameter is set to container in the taskweaver_config.json file. Once the code repository is cloned to your local machine, you can build the Docker image by running the following command in the root directory of the code repository: cd scripts # based on your OS ./build_executor.ps1 # for Windows ./build_executor.sh # for Linux or macOS After the Docker image is built, you can run docker images to check if a Docker image named taskweavercontainers/taskweaver-executor is available. If the prerequisite is met, you can now run TaskWeaver in the container mode. After running TaskWeaver in the container mode, you can check if the container is running by running docker ps. You should see a container of image taskweavercontainers/taskweaver-executor running after executing some code.","s":"How to Configure the Code Execution Mode","u":"/TaskWeaver/docs/code_execution","h":"#how-to-configure-the-code-execution-mode","p":74},{"i":81,"t":"You may want to customize the Docker image for code execution to include additional packages or libraries, especially for your developed plugins. The current Docker image for code execution only includes the dependencies specified in the TaskWeaver/requirements.txt file. To customize the Docker image, you need to modify the Dockerfile at TaskWeaver/docker/ces_container/Dockerfile and rebuild the Docker image. When you open the Dockerfile, you will see the following content, and you can add additional packages or libraries by adding the corresponding RUN command. In this example, we add the sentence-transformers package to the Docker image. FROM python:3.10-slim ... # TODO: Install additional packages for plugins RUN pip install --no-cache-dir --no-warn-script-location --user sentence-transformers ... Then, you need to rebuild the Docker image by running the build_executor.sh script at TaskWeaver/scripts/build_executor.sh or TaskWeaver/scripts/build.ps1 depending on your operating system. cd TaskWeaver/scripts ./build_executor.sh # or ./build_executor.ps1 if you are using Windows If you have successfully rebuilt the Docker image, you can check the new image by running docker images. After building the Docker image, you need to restart the TaskWeaver agent to use the new Docker image.","s":"How to customize the Docker image for code execution","u":"/TaskWeaver/docs/code_execution","h":"#how-to-customize-the-docker-image-for-code-execution","p":74},{"i":83,"t":"The container mode is more secure than the local mode, but it also has some limitations: The startup time of the container mode is longer than the local mode, because it needs to start a Docker container. As the Jupyter Kernel is running inside a Docker container, it has limited access to the host machine. We are mapping the project/workspace/sessions/ directory to the container, so the code executed in the container can access the files in it. One implication of this is that the user cannot ask the agent to load a file from the host machine, because the file is not available in the container. Instead, the user needs to upload the file either using the /upload command in the console or the upload button in the web interface. We have installed required packages in the Docker image to run the Jupyter Kernel. If the user needs to use a package that is not available in the Docker image, the user needs to add the package to the Dockerfile (at TaskWeaver/ces_container/Dockerfile) and rebuild the Docker image.","s":"Limitations of the container Mode","u":"/TaskWeaver/docs/code_execution","h":"#limitations-of-the-container-mode","p":74},{"i":85,"t":"In some cases, the agent developer may want to restrict the Docker container's access to the external network, e.g., the internet. In other words, the agent developer only wants to run the code in the container but does not allow either the plugins or the generated code to access the internet. The following approach is a common way to restrict a Docker container's access to the internet while still allowing inbound connections on specific ports: Creating a Docker network with enable_ip_masquerade set to false: By default, Docker uses IP masquerading (a form of network address translation or NAT) to allow containers to communicate with external networks with the source IP address being the host IP address. When you set enable_ip_masquerade to false for a custom Docker network, you prevent containers on that network from having their IP addresses masqueraded, effectively blocking them from accessing the internet. To create such a network in Docker, you would use the following command: docker network create --opt com.docker.network.bridge.enable_ip_masquerade=false my_non_internet_network Any container connected to my_non_internet_network will not have internet access due to the disabled IP masquerade. Now, you can run docker network inspect my_non_internet_network and you will see an output similar to the following: \"Config\": [ { \"Subnet\": \"172.19.0.0/16\", \"Gateway\": \"172.19.0.1\" } ] This shows the subnet of the docker network, all containers connected to this network will have an IP address in this subnet. Establishing a rule on the host's firewall or using iptables: This step is about setting up rules to block outgoing traffic from the Docker network's subnet to any external addresses. This adds an additional layer of security to ensure that even if IP masquerade is somehow enabled or if the container finds another route, the traffic will still be blocked. On a Linux host using iptables, you might add a rule like this: iptables -I FORWARD -s -j DROP Replace with the actual subnet used by your Docker network. In the previous example, the subnet is 172.19.0.0/16. This rule drops all forwarding traffic from that subnet. On a Windows host, you would create a similar rule within the Windows Firewall to block outgoing traffic from the Docker network's subnet. Keep in mind that this approach can be considered good practice if you understand the implications and have a specific need to isolate your container from the internet. However, it could also complicate network troubleshooting and container communication if not managed properly. Always ensure you are testing these configurations in a safe environment before applying them to production systems.","s":"Restricting External Network Access for Docker Containers","u":"/TaskWeaver/docs/code_execution","h":"#restricting-external-network-access-for-docker-containers","p":74},{"i":87,"t":"An attachment is a data concept in TaskWeaver which contains additional data other than the text message in the post. @dataclass class Attachment: \"\"\"Attachment is the unified interface for responses attached to the text massage. Args: type: the type of the attachment, which can be \"thought\", \"code\", \"markdown\", or \"execution_result\". content: the content of the response element. id: the unique id of the response element. \"\"\" id: str type: AttachmentType content: str extra: Optional[Any] = None AttachmentType is an Enum class that contains the types of the attachment, which can be \"thought\", \"code\", \"markdown\", or \"execution_result\". content is the content of the response element, which can be the code snippet, the markdown text, or the execution result.","s":"Attachment","u":"/TaskWeaver/docs/concepts/attachment","h":"","p":86},{"i":89,"t":"The TaskWeaverApp is the main class of the TaskWeaver library. It is the entry point for the library and is used to create and run tasks. A TaskWeaverApp instance is created by calling the TaskWeaverApp.__init__ constructor. class TaskWeaverApp(object): def __init__( self, app_dir: Optional[str] = None, use_local_uri: Optional[bool] = None, config: Optional[Dict[str, Any]] = None, **kwargs: Any, ) -> None: \"\"\" Initialize the TaskWeaver app. :param app_dir: The project directory. :param use_local_uri: Whether to use local URI for artifacts. :param config: The configuration. :param kwargs: The additional arguments. \"\"\" The app_dir parameter is the path to the project directory. The use_local_uri parameter is a boolean that specifies whether to use local URIs for artifacts. If the artifacts are stored locally, the use_local_uri parameter should be set to True. This is useful if TaskWeaver is being used as a remote service and the artifacts are then remote URIs. The config parameter is a dictionary that contains the configuration settings for the app. Any settings in the config parameter will override existing settings in the configuration file or environment variables. The TaskWeaverApp class has the following methods: def get_session( self, session_id: Optional[str] = None, ) -> Session: \"\"\" Get the session. Return a new session if the session ID is not provided. :param session_id: The session ID. :return: The session. \"\"\" The get_session method is used to get a session. If the session_id parameter is not provided, a new session is created. A session is a conversation instance that the user has with the TaskWeaver app. We shall discuss the Session class later. def stop(self) -> None: \"\"\" Stop the TaskWeaver app. This function must be called before the app exits. \"\"\" The stop method is used to stop the TaskWeaver app. This method must be called before the app exits. An example of creating a TaskWeaverApp instance is shown below: from taskweaver.app.app import TaskWeaverApp app = TaskWeaverApp(app_dir=\"path/to/project/\") session = app.get_session() round = session.send_message(\"Hello, how can I help you?\") print(round) app.stop() In this example, a TaskWeaverApp instance is created with the project directory set to \"path/to/project/\". A session is then created using the get_session method, and a message is sent to the session. The response will be the entire conversation round that was generated by the TaskWeaver app. Finally, the stop method is called to stop the TaskWeaver app.","s":"Application","u":"/TaskWeaver/docs/concepts/app","h":"","p":88},{"i":91,"t":"A conversation is a data concept in TaskWeaver which contains a dialog between the user and the TaskWeaver app. Each session has a corresponding conversation. @dataclass class Conversation: \"\"\"A conversation denotes the interaction with the user, which is a collection of rounds. The conversation is also used to construct the Examples. Args: id: the unique id of the conversation. rounds: a list of rounds. plugins: a list of plugins that are used in the conversation. enabled: whether the conversation is enabled, used for Example only. \"\"\" id: str = \"\" rounds: List[Round] = field(default_factory=list) plugins: List[PluginEntry] = field(default_factory=list) roles: List[str] = field(default_factory=list) enabled: bool = True A conversation is a collection of rounds, where each round starts with the user's input and ends with the TaskWeaver app's response to the user. The plugins are the plugins available in the conversation, and the roles are the roles that the conversation is associated with. In TaskWeaver, the conversation is also used to store the Examples. The examples in the project folder are parsed into Conversations in the memory, and then composed into the prompt of the Planner or the CodeInterpreter. The enabled flag is used to control if this conversation is presented in the prompt.","s":"Conversation","u":"/TaskWeaver/docs/concepts/conversation","h":"","p":90},{"i":93,"t":"Plugins are the user-defined functions that extend TaskWeaver CodeInterpreter's capabilities. More details about plugins can be found in the Plugin Introduction. In TaskWeaver, the collection of available plugins are attached to the Conversation object.","s":"Plugin","u":"/TaskWeaver/docs/concepts/plugin","h":"","p":92},{"i":95,"t":"A project folder is a directory that stores the configuration files, plugins, examples, logs, and workspace data. A TaskWeaverApp instance is associated with a project folder. The project folder is created by the user and contains all the necessary files and folders for the TaskWeaverApp to run. The following is a typical project directory structure: 📦project ┣ 📜taskweaver_config.json # the project configuration file for TaskWeaver ┣ 📂plugins # the folder to store plugins ┣ 📂planner_examples # the folder to store planner examples ┣ 📂codeinterpreter_examples # the folder to store code interpreter examples ┣ 📂logs # the folder to store logs, will be generated after program starts ┗ 📂workspace # the directory stores session data, will be generated after program starts ┗ 📂 session_id ┣ 📂ces # the folder used by the code execution service ┣ 📂cwd # the current working directory to run the generated code ┗ other session data The workspace folder stores the session data, which includes the code execution service (CES) folder and the current working directory (CWD) folder. Therefore, if the code execution results in any files, they will be stored in the CWD folder. If you are running in local mode and want to load files from your local file system, the CWD is the base directory to load the files from.","s":"Project","u":"/TaskWeaver/docs/concepts/project","h":"","p":94},{"i":97,"t":"The post is a data concept in TaskWeaver which contains a single message in the conversation. @dataclass class Post: \"\"\" A post is the message used to communicate between two roles. It should always have a text_message to denote the string message, while other data formats should be put in the attachment. The role can be either a User, a Planner, or others. Args: id: the unique id of the post. send_from: the role who sends the post. send_to: the role who receives the post. message: the text message in the post. attachment_list: a list of attachments in the post. \"\"\" id: str send_from: RoleName send_to: RoleName message: str attachment_list: List[Attachment] A post is the message used to communicate between two roles. It should always have a text message to denote the string message. In addition, a post has send_from and send_to roles, which are the roles who send and receive the post, respectively. In some cases, the send_from and send_to roles are the same, to denote the self-communication of the role. The attachment_list is a list of attachments in the post. The attachment is used to store various data other than the text message, such as the code snippet or an artifact file path. An attachment may be used only by the role who sends the post, or it may be used by the role who receives the post. In usual cases, the message will present in the prompt as the past chat rounds. However, the message can sometimes be too long and should only be kept in the current round. In the next round, the message will be deleted from the prompt to keep the prompt short. As an example, the CodeInterpreter may generate a long execution result, which only needs to be kept in the current round. In this case, we provide a way of annotating the message (or part of the message) to be kept in the current round only. message = PromptUtil.wrap_text_with_delimiter(message, delimiter=PromptUtil.DELIMITER_TEMPORAL) In this way, the message will be kept in the current round only, and will not be presented in the prompt since the next round.","s":"Post","u":"/TaskWeaver/docs/concepts/post","h":"","p":96},{"i":99,"t":"A round is a data concept in TaskWeaver which contains a single round of chat between the user and the TaskWeaver app. @dataclass class Round: \"\"\"A round is the basic unit of conversation in the project, which is a collection of posts. Args: id: the unique id of the round. post_list: a list of posts in the round. user_query: the query of the user. state: the state of the round. \"\"\" id: str user_query: str state: RoundState post_list: List[Post] user_query is the query of the user, and post_list is a list of posts in the round. The state is among \"finished\", \"failed\", \"created\". When the round is created, the state is \"created\". When the round is finished successfully, the state is \"finished\". When the round is failed, the state is \"failed\".","s":"Round","u":"/TaskWeaver/docs/concepts/round","h":"","p":98},{"i":101,"t":"A session is a conversation instance that the user has with the TaskWeaver app. A new session is created when the user interacts with the app. When the user finishes interacting with the app, the session should be closed. TaskWeaver allows multiple sessions to be created and managed by the app. Therefore, multiple users can interact with the app at the same time in different sessions. A new session is created by calling the get_session method of the TaskWeaverApp class. In the background, the get_session method creates a new Session instance. class Session: @inject def __init__( self, session_id: str, workspace: Workspace, app_injector: Injector, logger: TelemetryLogger, tracing: Tracing, config: AppSessionConfig, role_registry: RoleRegistry, ) -> None: \"\"\" Initialize the session. :param session_id: The session ID. :param workspace: The workspace. :param app_injector: The app injector. :param logger: The logger. :param tracing: The tracing. :param config: The configuration. :param role_registry: The role registry. \"\"\" info In TaskWeaver, we use an injector to take care of most dependency injection. The Session class has the following methods: def send_message( self, message: str, event_handler: Optional[SessionEventHandler] = None, files: Optional[List[Dict[Literal[\"name\", \"path\", \"content\"], Any]]] = None, ) -> Round: \"\"\" Send a message. :param message: The message. :param event_handler: The event handler. :param files: The files. :return: The chat round. \"\"\" send_message is used to send a message to the app. The message parameter is the text message that the user sends to the app. The event_handler parameter is a function that handles events during the conversation. We have defined a variety of events that can be handled by the event handler. Each event has a specific type and a message. By implementing the event handler, you can customize the display of events during the conversation. A very simple example of an event handler is shown below: class ConsoleEventHandler(SessionEventHandler): def handle(self, event: TaskWeaverEvent): print(event.t, event.msg) session.send_message(\"Hello, how can I help you?\", ConsoleEventHandler()) The ConsoleEventHandler class is a simple event handler that prints the event type and message to the console. The files parameter is used to upload files to the app for processing. def stop(self) -> None: \"\"\" Stop the session. This function must be called before the session exits. \"\"\" The stop method is used to stop the session. def update_session_var( self, variables: Dict[str, str] ): \"\"\" Update the session variables. :param variables: The variables to update. \"\"\" The update_session_var method is used to update the session variables. A session variable is a key-value pair that is only available in a specific session. Session variables can be used in the plugins to store information that is specific to the session. For example, you can store different user names in the session variables of different sessions. Then, in the plugin, you can access the user name by using the session variable. @register_plugin class PluginClass(Plugin): def __call__(self, argument1: str): ... # this line of code in the plugin implementation self.ctx.get_session_var(\"user_name\", \"anonymous\") ... The update_session_var method can be called multiple times to update multiple session variables.","s":"Session","u":"/TaskWeaver/docs/concepts/session","h":"","p":100},{"i":103,"t":"More details about important configurations.","s":"More about Configurations","u":"/TaskWeaver/docs/configurations/configurations_in_detail","h":"","p":102},{"i":105,"t":"planner.example_base_path: The folder to store planner examples. The default value is ${AppBaseDir}/planner_examples. If you want to create your own planner examples, you can add them to this folder. More details about example can referred to example. planner.prompt_compression: At times, lengthy conversations with the Planner may exceed the input limitations of the LLM model. To address this issue, we can compress the chat history and send it to the LLM model. The default value for this setting is false. More details about prompt_compression can be referred to prompt_compression. planner.use_experience: Whether to use experience summarized from the previous chat history in planner. The default value is false. planner.llm_alias: The alias of the LLM used by the Planner. If you do not specify the LLM for the Planner, the primary LLM will be used by default.","s":"Planner Configuration","u":"/TaskWeaver/docs/configurations/configurations_in_detail","h":"#planner-configuration","p":102},{"i":107,"t":"session.max_internal_chat_round_num: the maximum number of internal chat rounds between Planner and Code Interpreter. If the number of internal chat rounds exceeds this number, the session will be terminated. The default value is 10. session.roles: the roles included for the conversation. The default value is [\"planner\", \"code_interpreter\"]. TaskWeaver has 3 code interpreters: code_interpreter: it will generate Python code to fulfill the user's request. This is the default code interpreter. code_interpreter_plugin_only: please refer to plugin_only_mode for more details. code_interpreter_cli_only: allow users to directly communicate with the Command Line Interface (CLI) in natural language. Please refer to cli_only_mode for more details. If you do not specify planner in the roles, you will enter the \"no-planner\" mode. It allows users to directly communicate with the worker role, such as code_interpreter. In this mode, users can only send messages to the CodeInterpreter and receive messages from the CodeInterpreter. Note that only single worker role is allowed in the \"no-planner\" mode because all user requests will be sent to the worker role directly. Here is an example: ========================================================= _____ _ _ __ |_ _|_ _ ___| | _ | | / /__ ____ __ _____ _____ | |/ _` / __| |/ /| | /| / / _ \\/ __ `/ | / / _ \\/ ___/ | | (_| \\__ \\ < | |/ |/ / __/ /_/ /| |/ / __/ / |_|\\__,_|___/_|\\_\\|__/|__/\\___/\\__,_/ |___/\\___/_/ ========================================================= TaskWeaver: I am TaskWeaver, an AI assistant. To get started, could you please enter your request? Human: generate 10 random numbers >>> [PYTHON]Starting... import numpy as np random_numbers = np.random.rand(10) random_numbers >>> [VERIFICATION] NONE >>> [STATUS]Starting... SUCCESS >>> [RESULT] The execution of the generated python code above has succeeded The result of above Python code after execution is: array([0.09918602, 0.68732778, 0.44413814, 0.4756623 , 0.48302334, 0.8286594 , 0.80994359, 0.35677263, 0.45719317, 0.68240194]) >>> [CODEINTERPRETER->PLANNER] The following python code has been executed: ```python import numpy as np random_numbers = np.random.rand(10) random_numbers ``` The execution of the generated python code above has succeeded The result of above Python code after execution is: array([0.09918602, 0.68732778, 0.44413814, 0.4756623 , 0.48302334, 0.8286594 , 0.80994359, 0.35677263, 0.45719317, 0.68240194]) TaskWeaver: The following python code has been executed: ```python import numpy as np random_numbers = np.random.rand(10) random_numbers ``` The execution of the generated python code above has succeeded The result of above Python code after execution is: array([0.09918602, 0.68732778, 0.44413814, 0.4756623 , 0.48302334, 0.8286594 , 0.80994359, 0.35677263, 0.45719317, 0.68240194])","s":"Session Configuration","u":"/TaskWeaver/docs/configurations/configurations_in_detail","h":"#session-configuration","p":102},{"i":109,"t":"In TaskWeaver, we support various embedding models to generate embeddings for auto plugin selection. llm.embedding_api_type: The type of the embedding API. We support the following types: openai qwen ollama sentence_transformers glm llm.embedding_model: The embedding model name. The model name should be aligned with llm.embedding_api_type. We only list some embedding models we have tested below: openai text-embedding-ada-002 qwen text-embedding-v1 ollama llama2 sentence_transformers all-mpnet-base-v2 multi-qa-mpnet-base-dot-v1 all-distilroberta-v1 all-MiniLM-L12-v2 multi-qa-MiniLM-L6-cos-v1 zhipuai embedding-2 You also can use other embedding models supported by the above embedding APIs.","s":"Embedding Configuration","u":"/TaskWeaver/docs/configurations/configurations_in_detail","h":"#embedding-configuration","p":102},{"i":111,"t":"Today, more and more inference frameworks support OpenAI compatible APIs. However, different models may have different configurations. Here are some supported configurations for other models adapted for OpenAI API. llm.openai.support_system_role: Whether to support system role in the conversation. The default value is True. For the models that do not support system role, you can set this value to False, and the system role will be replaced by the user role. llm.openai.require_alternative_roles: Whether to require alternative roles in the conversation. The default value is False. We notice that some models may require exactly alternative roles in the conversation. If you set this value to True, the system will check consecutive user messages in the conversation history. If there is, the system will add a dummy assistant message in between. llm.openai.support_constrained_generation: Whether to support constrained generation in the conversation. The default value is False. Some inferencing frameworks like vllm and llama.cpp support constrained generation. Currently, we only support vllm. If you want to use this feature, you can set this value to True. llm.openai.json_schema_enforcer: This is configured together with llm.openai.support_constrained_generation. If you want to use constrained generation. There are two valid options: lm-format-enforcer and outlines.","s":"OpenAI Configuration","u":"/TaskWeaver/docs/configurations/configurations_in_detail","h":"#openai-configuration","p":102},{"i":113,"t":"The role is a concept in TaskWeaver which represents the different roles in the conversation system. The Planner and CodeInterpreter are two examples of roles in TaskWeaver. class Role: @inject def __init__( self, config: ModuleConfig, logger: TelemetryLogger, tracing: Tracing, event_emitter: SessionEventEmitter, role_entry: Optional[RoleEntry] = None, ): \"\"\" The base class for all roles. \"\"\" info We use the inject decorator from the injector package to inject the dependencies into the role class. We allow adding extra roles into the system by inheriting the Role class and implementing the role in the taskweaver.ext_role module. We have provided examples on how to implement a new role. A very simple example is the Echo role which echoes the user's message back to the user. A role should have at least two files: role_name.py and role_name.role.yaml. The files of the role should be put in the taskweaver/ext_role/role_name folder. We need to follow the convention of the role name, which is exactly the same as the folder name, otherwise an exception will be raised. We typically use the style of snake_case for the role name. In the role_name.role.yaml file, we define the role's configuration. This following is echo.role.yaml of the Echo role configuration. alias: Echo module: taskweaver.ext_role.echo.echo.Echo intro : |- - Echo is responsible for echoing the user input. The configuration file contains the following fields: alias: the alias of the role, which is the name of role shown in the prompt and the conversation. module: the module path of the role class. TaskWeaver will import the module and instantiate the role class. intro: the introduction of the role, which will be shown in Planner's prompt for choosing the role for certain tasks. In the role_name.py file, we define the role class. The following is echo.py of the Echo role class. class EchoConfig(RoleConfig): def _configure(self): # configuration for the Echo role # can be configured in the project configuration file with `echo.decorator` self.decorator = self._get_str(\"decorator\", \"\") class Echo(Role): @inject def __init__( self, config: EchoConfig, logger: TelemetryLogger, tracing: Tracing, event_emitter: SessionEventEmitter, role_entry: RoleEntry, ): # configuration for the parent class; this is required super().__init__(config, logger, tracing, event_emitter, role_entry) def reply(self, memory: Memory, **kwargs) -> Post: rounds = memory.get_role_rounds( role=self.alias, include_failure_rounds=False, ) # obtain the query from the last round last_post = rounds[-1].post_list[-1] post_proxy = self.event_emitter.create_post_proxy(self.alias) post_proxy.update_send_to(last_post.send_from) post_proxy.update_message( self.config.decorator + last_post.message + self.config.decorator ) return post_proxy.end() The role implementation should inherit the Role class and implement the reply method. The above example demonstrates how to get the query from the last round. The reply function of the Echo role is simply echoing the user's message back to the user with optional decoration. The reply function should return a Post object, which is the response of the role to the user. We provide facilities to help the role to interact with the memory, the event emitter, and the logger. For example, the event_emitter.create_post_proxy function is used to create a PostProxy object, which is a helper class to create a Post object. The PostProxy object is used to update the Post object with the new message, send_to, and other attributes. Once the PostProxy object is updated, the event emitter will send this event to a handler to display the event to a frontend. To enable the role in TaskWeaver, we need to add the role configuration to the taskweaver_config.json file. The following is an example of the taskweaver_config.json file with the Echo role configuration in addition to the Planner and CodeInterpreter roles. Note that the name of the role should be the same as the folder name of the role, not the alias. { \"session.roles\": [\"planner\", \"echo\", \"code_interpreter\"] } tip How to determine if I should create a new role? or implement a new plugin for the CodeInterpreter? The answer depends on the functionality you want to implement. If the functionality is to reply in text message given a user query, and you don't envision the need to process the reply text in code, you should create a new role. In contrast, if the functionality is to process the user query and return the result in a structured format, or if both input and output are in a structured format, you should implement a new plugin for the CodeInterpreter.","s":"Role","u":"/TaskWeaver/docs/concepts/role","h":"","p":112},{"i":115,"t":"An overview of all configurations available in the config file, which is located at project/taskweaver_config.json. You can edit this file to configure TaskWeaver. tip The configuration file is in JSON format. So for boolean values, use true or false instead of True or False. For null values, use null instead of None or \"null\". All other values should be strings in double quotes. The following table lists the parameters in the configuration file: Parameter Description Default Value llm.model The model name used by the language model. gpt-4 llm.api_base The base URL of the OpenAI API. https://api.openai.com/v1 llm.api_key The API key of the OpenAI API. null llm.api_type The type of the OpenAI API, could be openai or azure. openai llm.api_version The version of the OpenAI API. 2023-07-01-preview llm.response_format The response format of the OpenAI API, could be json_object, text or null. json_object llm.embedding_api_type The type of the embedding API sentence_transformers llm.embedding_model The name of the embedding model all-mpnet-base-v2 code_interpreter.code_verification_on Whether to enable code verification. false code_interpreter.allowed_modules The list of allowed modules to import in code generation. [\"pandas\", \"matplotlib\", \"numpy\", \"sklearn\", \"scipy\", \"seaborn\", \"datetime\", \"typing\"], if the list is empty, no modules would be allowed code_interpreter.blocked_functions The list of functions to block from code generation. [\"__import__\", \"eval\", \"exec\", \"execfile\", \"compile\", \"open\", \"input\", \"raw_input\", \"reload\"] logging.log_file The name of the log file. taskweaver.log logging.log_folder The folder to store the log file. logs plugin.base_path The folder to store plugins. ${AppBaseDir}/plugins planner.example_base_path The folder to store planner examples. ${AppBaseDir}/planner_examples planner.prompt_compression Whether to compress the chat history for planner. false planner.use_experience Whether to use experience summarized from the previous chat history in planner. false code_generator.example_base_path The folder to store code interpreter examples. ${AppBaseDir}/codeinterpreter_examples code_generator.prompt_compression Whether to compress the chat history for code interpreter. false code_generator.enable_auto_plugin_selection Whether to enable auto plugin selection. false code_generator.use_experience Whether to use experience summarized from the previous chat history in code generator. false code_generator.auto_plugin_selection_topk The number of auto selected plugins in each round. 3 session.max_internal_chat_round_num The maximum number of internal chat rounds between Planner and Code Interpreter. 10 session.roles The roles included for the conversation. [\"planner\", \"code_interpreter\"] round_compressor.rounds_to_compress The number of rounds to compress. 2 round_compressor.rounds_to_retain The number of rounds to retain. 3 execution_service.kernel_mode The mode of the code executor, could be local or container. local tip ${AppBaseDir} is the project directory. tip Up to 11/30/2023, the json_object and text options of llm.response_format is only supported by the OpenAI models later than 1106. If you are using an older version of OpenAI model, you need to set the llm.response_format to null. tip Read this for more information for planner.prompt_compression and code_generator.prompt_compression. tip We support to set configurations via environment variables. You need to transform the configuration key to uppercase and replace the dot with underscore. For example, llm.model should be set as LLM_MODEL, llm.api_base should be set as LLM_API_BASE, etc.","s":"Configuration File","u":"/TaskWeaver/docs/configurations/overview","h":"","p":114},{"i":118,"t":"3 items","s":"🗃️ Plugin","u":"/TaskWeaver/docs/customization/","h":"","p":116},{"i":120,"t":"1 item","s":"🗃️ Example","u":"/TaskWeaver/docs/customization/","h":"","p":116},{"i":122,"t":"2 items","s":"🗃️ Experience","u":"/TaskWeaver/docs/customization/","h":"","p":116},{"i":124,"t":"There are currently two types of examples: (1) Planner examples and (2) CodeInterpreter examples. Planning examples are used to demonstrate how the Planner should plan for a specific query from the User. Code generation examples are used to help the CodeInterpreter generate code or orchestrate plugins to perform a specific task. Both types of examples are actually the conversation between a collection of roles, such as the User, the Planner, and the CodeInterpreter. Each conversation consists of one or more rounds, and each round has a User query and contains one or more posts. A post is a message sent from one role to another role, and it may contain some attachments. One example looks like this: enabled: True rounds: - User_query: ping state: created post_list: - message: ping send_from: User send_to: Planner attachment_list: [] - message: pong send_from: Planner send_to: User attachment_list: [] We explicitly break all examples into the two types only to make it easier to understand and maintain. When the roles are initialized, each role will only read the examples of its type. tip All the text field in the examples such as the messages are in Markdown format.","s":"Customizing Examples","u":"/TaskWeaver/docs/customization/example/","h":"","p":123},{"i":126,"t":"A planning example tells LLMs how to plan for a specific query from the User, talk to the CodeInterpreter, receive the execution result from the CodeInterpreter, and summarize the execution result. The following is an example of a conversation between the User, the Planner, and the CodeInterpreter. One of the purposes of this example is to teach the Planner on the annotation of the dependencies between the steps in the plan. Another purpose is to teach the Planner to follow the right output format. enabled: True rounds: - User_query: count the rows of /home/data.csv state: created post_list: - message: count the rows of /home/data.csv send_from: User send_to: Planner attachment_list: - message: Please load the data file /home/data.csv and count the rows of the loaded data send_from: Planner send_to: CodeInterpreter attachment_list: - type: init_plan content: |- 1. load the data file 2. count the rows of the loaded data 3. report the result to the User - type: plan content: |- 1. instruct CodeInterpreter to load the data file and count the rows of the loaded data 2. report the result to the User - type: current_plan_step content: 1. instruct CodeInterpreter to load the data file and count the rows of the loaded data - message: Load the data file /home/data.csv successfully and there are 100 rows in the data file send_from: CodeInterpreter send_to: Planner attachment_list: - message: The data file /home/data.csv is loaded and there are 100 rows in the data file send_from: Planner send_to: User attachment_list: - type: init_plan content: |- 1. load the data file 2. count the rows of the loaded data 3. report the result to the User - type: plan content: |- 1. instruct CodeInterpreter to load the data file and count the rows of the loaded data 2. report the result to the User - type: current_plan_step content: 2. report the result to the User tip To better understand the attachments including init_plan, plan, and current_plan_step, please refer to the Planner's prompt. In this example, there are 4 posts: The first post is sent from the User to the Planner. The message is \"count the rows of /home/data.csv\", which must be the same with the User query. The second post is sent from the Planner to the CodeInterpreter. The message is \"Please load the data file /home/data.csv and count the rows of the loaded data\". The attachment list contains 3 attachments: The first attachment is the initial plan. The second attachment is the final plan. The third attachment is the current plan step. The third post is sent from the CodeInterpreter to the Planner. The message is \"Load the data file /home/data.csv successfully and there are 100 rows in the data file\". The fourth post is sent from the Planner to the User. The message is \"The data file /home/data.csv is loaded and there are 100 rows in the data file\". The attachment list contains 3 attachments, which are the same as the second post.","s":"Planner Examples","u":"/TaskWeaver/docs/customization/example/","h":"#planner-examples","p":123},{"i":128,"t":"A CodeInterpreter example tells CodeInterpreter how to generate code or orchestrate plugins to perform a specific task. The task is always from the Planner. The purpose of this example is to teach CodeInterpreter how to handle errors in execution. enabled: True rounds: - User_query: read file /abc/def.txt state: finished post_list: - message: read file /abc/def.txt send_from: Planner send_to: CodeInterpreter attachment_list: [] - message: I'm sorry, I cannot find the file /abc/def.txt. An FileNotFoundException has been raised. send_from: CodeInterpreter send_to: Planner attachment_list: - type: thought content: \"{ROLE_NAME} will generate a code snippet to read the file /abc/def.txt and present the content to the User.\" - type: python content: |- file_path = \"/abc/def.txt\" with open(file_path, \"r\") as file: file_contents = file.read() print(file_contents) - type: verification content: CORRECT - type: code_error content: No code error. - type: execution_status content: FAILURE - type: execution_result content: FileNotFoundException, the file /abc/def.txt does not exist. tip Read the prompt of the code generation to better understand the attachments in the example code generator prompt. This conversation has two posts: The first post is sent from the Planner to the CodeInterpreter. The message is \"Please read file /abc/def.txt\". The second post is sent from the CodeInterpreter to the Planner. The message is \"read file /abc/def.txt\". The attachment list contains 6 attachments: The first attachment is the thought of the CodeInterpreter. The second attachment is the generated code, which is in python. The third attachment is the verification status, which is CORRECT, INCORRECT, or NONE. The fourth attachment is the verification error message. The fifth attachment is the execution status, which is SUCCESS, FAILURE, or NONE. The sixth attachment is the execution result, which is a markdown string. In this example, verification is about whether the generated code is correct or not. We implemented a module to verify the generated code. If the code is syntactically incorrect, or the code violates the constraints, the verification status will be INCORRECT and some error messages will be returned. A verification of NONE means that the code has not been verified, which means verification has been turned off. In this example, execution_status is about whether the generated code can be executed successfully or not. If the execution is successful, the execution status will be SUCCESS and the execution result will be returned. Otherwise, the execution status will be FAILURE and some error messages will be returned. A execution_status of NONE means that the code has not been executed.","s":"CodeInterpreter Examples","u":"/TaskWeaver/docs/customization/example/","h":"#codeinterpreter-examples","p":123},{"i":131,"t":"A: In the default setting, TaskWeaver typically goes through the following steps to generate the output: The User sends a query to the Planner. The Planner generates a plan based on the query and sends the plan to the CodeInterpreter. The CodeInterpreter executes the plan and sends the execution result back to the Planner. The Planner summarizes the execution result and sends the summary to the User. The User receives the summary from the Planner. In some cases, the Planer and CodeInterpreter can go back and forth multiple times to generate the output. This process can take a long time, mostly due to the latency of calling the LLMs. To speed up the process, you can try the following: Use a smaller LLM model, such as GPT-3.5 instead of GPT-4. However, you need to experiment with your use case to see if the smaller model can still generate the output correctly. Use the CodeInterpreter only mode, which skips the Planner and generates the code directly from the User query. This mode is faster because it skips the planning step. However, you should check if your use case needs the planning step.","s":"Q: Why it takes so long to generate the output?","u":"/TaskWeaver/docs/FAQ","h":"#q-why-it-takes-so-long-to-generate-the-output","p":129},{"i":133,"t":"A: This error typically happens when TaskWeaver is running in the container mode and cannot connect to the Docker daemon. We have switched to the container mode by default to provide a more secure environment for code execution. To opt out of the container mode, you can set the execution_service.kernel_mode parameter to local in the taskweaver_config.json file. However, you should be aware that TaskWeaver can interact with the host machine directly in the local mode, which may have security risks.","s":"Q: Why TaskWeaver fails and the logs say \"Failed to connect to docker.daemon\"?","u":"/TaskWeaver/docs/FAQ","h":"#q-why-taskweaver-fails-and-the-logs-say-failed-to-connect-to-dockerdaemon","p":129},{"i":135,"t":"A: This is typically due to that the LLM failed to generate its output follow our schema. In Planner's prompt, we asked the LLM to generate a JSON object that contains send_to, message, init_plan, plan, and current_plan_step. Missing any of these fields will cause the parsing error. The most effective way to mitigate this issue is to use switch to more powerful LLM model, such as GPT-3.5 or GPT-4.","s":"Q: Why I see errors saying the Planner failed to generate the send_to, message or other fields?","u":"/TaskWeaver/docs/FAQ","h":"#q-why-i-see-errors-saying-the-planner-failed-to-generate-the-send_to-message-or-other-fields","p":129},{"i":137,"t":"A: A simple way to check if TaskWeaver can see your plugin is to ask \"What can you do?\" to TaskWeaver. The typical response is to list all the available plugins like the following: I can assist you with various tasks, including: - Detecting anomalies in time series data. - Rendering text into ASCII art. - Searching and comparing prices from thousands of online shops (US only). - Telling a joke. If you have a specific task in mind, please let me know, and I'll do my best to assist you. If you see your plugin in the list, it means TaskWeaver can see your plugin. But this is not a reliable way to check if TaskWeaver can see your plugin because the response is generated by the LLM. A more reliable way is to check the prompt of the Planner. You can find the prompts from project/workspace/sessions//planner_prompt_log_xxxx.yaml. Then, search for this section as follows: CodeInterpreter has the following plugin functions and their required parameters need to be provided before the execution: - anomaly_detection: anomaly_detection function identifies anomalies from an input DataFrame of time series. It will add a new column \\\"Is_Anomaly\\\", where each entry will be marked with \\\"True\\\" if the value is an anomaly or \\\"False\\\" otherwise. Arguments required: df: DataFrame, time_col_name: str, value_col_name: str - ascii_render: This plugin renders the input text into ASCII art form. Arguments required: text: str - klarna_search: Search and compare prices from thousands of online shops. Only available in the US. This plugin only takes user requests when searching for merchandise. If not clear, confirm with the user if they want to search for merchandise from Klarna. Arguments required: query: str - tell_joke: Call this plugin to tell a joke. Check if your plugin is in the list. If it is, it means TaskWeaver can see your plugin.","s":"Q: How do I know if TaskWeaver can see my plugin?","u":"/TaskWeaver/docs/FAQ","h":"#q-how-do-i-know-if-taskweaver-can-see-my-plugin","p":129},{"i":139,"t":"First, make sure you have read our Plugin Introduction and this tutorial carefully. You should have two files in the plugins folder, e.g., ascii_render.py and ascii_render.yaml. Now, if TaskWeaver cannot see your plugin, the root cause is typically syntax errors in the yaml file. Check the console output if you are using the command line interface, or the console logs if you are using the web interface. You may see the following error message: failed to loading component from .yaml, skipping: Yaml loading failed due to: The error message will tell you the reason why the yaml file cannot be loaded. It is typically easy to fix the syntax errors by using a yaml linter (e.g., in Visual Studio Code) or an online yaml linter. If you have checked the syntax of the yaml file and TaskWeaver still cannot see your plugin, please check if the yaml file has included all the required fields such as the parameters and returns fields.","s":"Q: Why TaskWeaver cannot see my plugin?","u":"/TaskWeaver/docs/FAQ","h":"#q-why-taskweaver-cannot-see-my-plugin","p":129},{"i":141,"t":"A: In this case, you may see the generated code has called the plugin function, but the execution result is an error message saying that the plugin function is undefined. If this happens, please check the console output if you are using the command line interface, or the console logs if you are using the web interface. You may see the following error message: Plugin failed to load: Plugin failed to register: failed to load plugin This error message will tell you the reason why the plugin function cannot be loaded. It is typically easy to fix the errors by checking the console output or logs. The root cause is typically errors in the python file that causes the plugin function cannot be loaded. Typical errors include syntax errors, missing imports, or missing packages. Note that this sort of error is not caused by the implementation \"inside\" the plugin function. Otherwise, the errors would be caught during the execution of the plugin function, not during the loading of the plugin function.","s":"Q: Why TaskWeaver can see my plugin but cannot call it?","u":"/TaskWeaver/docs/FAQ","h":"#q-why-taskweaver-can-see-my-plugin-but-cannot-call-it","p":129},{"i":143,"t":"A: We are working on a debugging tool to help you debug your plugin. For now, a simple way to debug your plugin is to define a main function in the python file and run it in your local environment. For example, you can define a main function in ascii_render.py as follows: if __name__ == \"__main__\": from taskweaver.plugin.context import temp_context with temp_context() as temp_ctx: render = AsciiRenderPlugin(name=\"ascii_render\", ctx=temp_ctx, config={}) print(render(text=\"hello world!\")) In this main function, we create a temporary context and call the plugin function with some input. You need not change the plugin implementation. Just add the main function to the end of the python file. Then, run the python file in your local environment. If there are any errors, you can see them in the console output. If you have the configurations section in the yaml file, you can manually set the configurations in the config parameter of the plugin constructor. We currently do not read the yaml file, so you need to make sure that the configurations are set correctly in the config parameter. For example, if an integer configuration max_length is defined in the yaml file, you can set it in the config parameter as follows: config = { \"max_length\": 100 } Then, pass the config to the plugin constructor. As yaml is type sensitive, you need to make sure that the type of the configuration is correct.","s":"Q: How to debug my plugin?","u":"/TaskWeaver/docs/FAQ","h":"#q-how-to-debug-my-plugin","p":129},{"i":145,"t":"A: We use a Jupyter Kernel to execute the code in TaskWeaver. The Jupyter Kernel uses an event loop to manage the execution of the code. If you see the error message \"RuntimeError: This event loop is already running.\", it typically means that the event loop is already running. This is typically caused by the environment where TaskWeaver is running. For example, if you are running TaskWeaver in a Jupyter Notebook.","s":"Q: Why I see the error message \"RuntimeError: This event loop is already running\"?","u":"/TaskWeaver/docs/FAQ","h":"#q-why-i-see-the-error-message-runtimeerror-this-event-loop-is-already-running","p":129},{"i":147,"t":"A: This error message typically happens when TaskWeaver is running in the container mode on a Windows machine with WSL. One can refer to this issue for more details. The fix is to set JUPYTER_ALLOW_INSECURE_WRITES=true for the container.","s":"Q: Why I see the error message \"Permissions assignment failed for secure file: Got '0o677' instead of '0o0600'.\" when running TaskWeaver?","u":"/TaskWeaver/docs/FAQ","h":"#q-why-i-see-the-error-message-permissions-assignment-failed-for-secure-file-got-0o677-instead-of-0o0600-when-running-taskweaver","p":129},{"i":150,"t":"The agent developers can add examples to guide the planning and code generation. Alternatively, we also provide another way of saving user experiences to long-term memory. In practice, if the user asks TaskWeaver to solve a hard problem. TaskWeaver can first go wrong. But after several attempts or the user gives more instructions, the agent can finally solve the problem. However, next time, if the user asks a similar problem or even exactly the same problem. The agent is still hard to come up with the right solution at first because it does not memorize the experiences. Therefore, we proposed a mechanism called experience memory. Here is the basic idea. A user can issue a command to TaskWeaver to save chat history and then extract experience tips from it and save them into the experience pool. Later, when the agent sees similar requests, it will retrieve the experience from the memory to guide its planning and code generation. An experience tip is about what should do or should not do when seeing a request like this. We will add the retrieved experiences to the prompt when received a similar request afterward.","s":"Motivation","u":"/TaskWeaver/docs/customization/experience/","h":"#motivation","p":148},{"i":152,"t":"In this quick start tutorial, we are going to show you how to enable the experience feature and save the chat history to the experience pool. To enable the experience feature, you need to set the planner.use_experience and code_generator.use_experience parameter in the configuration file to true. So, both the Planner and CodeInterpreter can use the experience to guide the planning and code generation. Start a new conversation with TaskWeaver. You will find experience directory is created in your project directory. Note that it is empty now because we have not saved any chat history yet. If you think the current chat history is worth saving, you can save it by typing command /save in the console chat interface. And you will find a new file named raw_exp_{session_id}.yaml created in the experience directory. Restart TaskWeaver and start a new conversation. In the initialization stage, TaskWeaver will read the raw_exp_{session_id}.yaml file and make a summarization in a new file named exp_{session_id}.yaml. This process may take a while because TaskWeaver needs to call the LLM model to extract the experience tips from the chat history. Next time, when user send a similar query to TaskWeaver, it will retrieve the relevant experience and load it into the system prompt (for Planner and CodeInterpreter). In this way, the experience can be used to guide the future conversation. info The experience folder is created in the project directory. You can change the location of the experience folder by setting the session.experience_dir parameter in the configuration file.","s":"Quick start","u":"/TaskWeaver/docs/customization/experience/","h":"#quick-start","p":148},{"i":154,"t":"Start a new conversation with TaskWeaver. Send a request \"calculate the mean value of ./project/sample_data/data_demo.csv\" to TaskWeaver. You will find TaskWeaver made a mistake, calculating the mean value of the non-numerical column. After several attempts, TaskWeaver fixed this issue. ========================================================= _____ _ _ __ |_ _|_ _ ___| | _ | | / /__ ____ __ _____ _____ | |/ _` / __| |/ /| | /| / / _ \\/ __ `/ | / / _ \\/ ___/ | | (_| \\__ \\ < | |/ |/ / __/ /_/ /| |/ / __/ / |_|\\__,_|___/_|\\_\\|__/|__/\\___/\\__,_/ |___/\\___/_/ ========================================================= TaskWeaver ▶ I am TaskWeaver, an AI assistant. To get started, could you please enter your request? Human ▶ calculate the mean value of d:/demo_data.csv ╭───< Planner > ├─► [init_plan] │ 1. load the data file │ 2. calculate the mean value of the loaded data │ 3. report the result to the user ├─► [plan] │ 1. instruct CodeInterpreter to load the data file and calculate the mean value of the loaded data │ 2. report the result to the user ├─► [current_plan_step] 1. instruct CodeInterpreter to load the data file and calculate the mean value of the loaded data ├──● Please load the data file d:/demo_data.csv and calculate the mean value of the loaded data ╰──● sending message to CodeInterpreter ╭───< CodeInterpreter > ├─► [thought] ProgramApe will generate a code snippet to load the data file d:/demo_data.csv and calculate the mean value of the loaded data using pandas. ├─► [python] │ import pandas as pd │ │ data_file_path = \"d:/demo_data.csv\" │ data_df = pd.read_csv(data_file_path) │ mean_value = data_df.mean() │ mean_value ├─► [verification] NONE ├─► [code_error] No code verification is performed. ├─► [execution_status] FAILURE ├─► [execution_result] │ The execution of the generated python code above has failed │ │ During execution, the following messages were logged: │ Traceback (most recent call last): │ │ Cell In[1], line 5 │ mean_value = data_df.mean() │ │ File D:\\python_project\\Octopus\\venv\\Lib\\site-packages\\pandas\\core\\frame.py:11335 in mean │ result = super().mean(axis, skipna, numeric_only, **kwargs) │ │ File D:\\python_project\\Octopus\\venv\\Lib\\site-packages\\pandas\\core\\generic.py:11984 in mean │ return self._stat_function( │ │ File D:\\python_project\\Octopus\\venv\\Lib\\site-packages\\pandas\\core\\generic.py:11941 in _stat_function │ return self._reduce( │ │ File D:\\python_project\\Octopus\\venv\\Lib\\site-packages\\pandas\\core\\frame.py:11204 in _reduce │ res = df._mgr.reduce(blk_func) │ │ File D:\\python_project\\Octopus\\venv\\Lib\\site-packages\\pandas\\core\\internals\\managers.py:1459 in reduce │ nbs = blk.reduce(func) │ │ File D:\\python_project\\Octopus\\venv\\Lib\\site-packages\\pandas\\core\\internals\\blocks.py:377 in reduce │ result = func(self.values) │ │ File D:\\python_project\\Octopus\\venv\\Lib\\site-packages\\pandas\\core\\frame.py:11136 in blk_func │ ret │ ├─► [artifact_paths] [] ├──● The following python code has been executed: │ ```python │ import pandas as pd │ │ data_file_path = \"d:/demo_data.csv\" │ data_df = pd.read_csv(data_file_path) │ mean_value = data_df.mean() │ mean_value │ ``` │ │ │ The execution of the generated python code above has failed │ │ During execution, the following messages were logged: │ Traceback (most recent call last): │ │ Cell In[1], line 5 │ mean_value = data_df.mean() │ │ File D:\\python_project\\Octopus\\venv\\Lib\\site-packages\\pandas\\core\\frame.py:11335 in mean │ result = super().mean(axis, skipna, numeric_only, **kwargs) │ │ File D:\\python_project\\Octopus\\venv\\Lib\\site-packages\\pandas\\core\\generic.py:11984 in mean │ return self._stat_function( │ │ File D:\\python_project\\Octopus\\venv\\Lib\\site-packages\\pandas\\core\\generic.py:11941 in _stat_function │ return self._reduce( │ │ File D:\\python_project\\Octopus\\venv\\Lib\\site-packages\\pandas\\core\\frame.py:11204 in _reduce │ res = df._mgr.reduce(blk_func) │ │ File D:\\python_project\\Octopus\\venv\\Lib\\site-packages\\pandas\\core\\internals\\managers.py:1459 in reduce │ nbs = blk.reduce(func) │ │ File D:\\python_project\\Octopus\\venv\\Lib\\site-packages\\pandas\\core\\internals\\blocks.py:377 in reduce │ result = func(self.values) │ │ File D:\\python_project\\Octopus\\venv\\Lib\\site-packages\\pandas\\core\\frame.py:11136 in blk_func │ ret │ ├─► [revise_message] │ The execution of the previous generated code has failed. If you think you can fix the problem by rewriting the code, please generate code and run it again. │ Otherwise, please explain the problem to me. ╰──● sending message to CodeInterpreter ╭───< CodeInterpreter > ├─► [thought] ProgramApe will generate a code snippet to load the data file d:/demo_data.csv and calculate the mean value of the loaded data using pandas, considering the execution │ error. ├─► [python] │ import pandas as pd │ │ data_file_path = \"d:/demo_data.csv\" │ data_df = pd.read_csv(data_file_path) │ mean_value = data_df.mean(axis=0, numeric_only=True) │ mean_value ├─► [verification] NONE ├─► [code_error] No code verification is performed. ├─► [execution_status] SUCCESS ├─► [execution_result] │ The execution of the generated python code above has succeeded │ │ The result of above Python code after execution is: │ Count 78172.75 │ dtype: float64 ├─► [artifact_paths] [] ├──● The following python code has been executed: │ ```python │ import pandas as pd │ │ data_file_path = \"d:/demo_data.csv\" │ data_df = pd.read_csv(data_file_path) │ mean_value = data_df.mean(axis=0, numeric_only=True) │ mean_value │ ``` │ │ │ The execution of the generated python code above has succeeded │ │ The result of above Python code after execution is: │ Count 78172.75 │ dtype: float64 ╰──● sending message to Planner ╭───< Planner > ├─► [init_plan] │ 1. load the data file │ 2. calculate the mean value of the loaded data │ 3. report the result to the user ├─► [plan] │ 1. instruct CodeInterpreter to load the data file and calculate the mean value of the loaded data │ 2. report the result to the user ├─► [current_plan_step] 2. report the result to the user ├──● The mean value of the data in d:/demo_data.csv is 78172.75 ╰──● sending message to User TaskWeaver ▶ The mean value of the data in d:/demo_data.csv is 78172.75 We can issue the /save command from the console chat interface to save the chat history. Then, after we restart TaskWeaver, we can see the experience summarized from the last chat history is below: exp_id: 20231228-073922-9b411afd experience_text: \"User Query: get the mean value of d:/demo_data.csv Error Resolution: - Error 1: The initial code failed to execute because it tried to calculate the mean value of all columns, including non-numeric columns. - Resolution 1: The code was revised to check for non-numeric columns and only calculate the mean value for numeric columns. Preferences: - Preference 1: The user prefers to calculate the mean value of the \"Count\" column in the data.\" raw_experience_path: D:\\project\\experience\\raw_exp_20231228-073922-9b411afd.yaml embedding_model: text-embedding-ada-002 embedding: ... Send a similar request \"calculate the variance value of ./project/sample_data/data_demo.csv\" to TaskWeaver. You will find TaskWeaver will not make the same mistake again. It will ask User to confirm the column name to calculate the variance value. ========================================================= _____ _ _ __ |_ _|_ _ ___| | _ | | / /__ ____ __ _____ _____ | |/ _` / __| |/ /| | /| / / _ \\/ __ `/ | / / _ \\/ ___/ | | (_| \\__ \\ < | |/ |/ / __/ /_/ /| |/ / __/ / |_|\\__,_|___/_|\\_\\|__/|__/\\___/\\__,_/ |___/\\___/_/ ========================================================= TaskWeaver ▶ I am TaskWeaver, an AI assistant. To get started, could you please enter your request? Human ▶ calculate the variance value of d:/demo_data.csv ╭───< Planner >TaskWeaver] preparing <=�=> ├─► [init_plan] │ 1. load the data file │ 2. confirm the columns to calculate variance │ 3. calculate the variance value for the selected columns │ 4. report the result to the user ├─► [plan] ▶ [Planner][plan] 1. instruct CodeInterpreter to load the data file 2. confirm the columns to calcu <=�=> │ 1. instruct CodeInterpreter to load the data file │ 2. confirm the columns to calculate variance ├─► [current_plan_step] 1. instruct CodeInterpreter to load the data file load the data file <=�=> ├──● Please load the data file d:/demo_data.csva file d:/demo_dat <=�=> ╰──● sending message to CodeInterpreter ╭───< CodeInterpreter > ├─► [thought] ProgramApe will generate a code snippet to load the data file d:/demo_data.csv using pandas.demo_data.csv using panda <=�=> ├─► [python]▶ [CodeInterpreter][python] import pandas as pd data_file_path = \"d:/demo_data.csv\" df = pd.read_csv(data_fil <=�=> │ import pandas as pd │ │ data_file_path = \"d:/demo_data.csv\" │ df = pd.read_csv(data_file_path) │ df ├─► [verification] NONE ├─► [code_error] No code verification is performed. ├─► [execution_status] SUCCESS] executing code <=�=> ├─► [execution_result] │ The execution of the generated python code above has succeeded │ │ The result of above Python code after execution is: │ TimeBucket Count │ 0 2023-02-01T00:00:00Z 67814 │ 1 2023-02-01T04:00:00Z 84569 │ .. ... ... │ 718 2023-05-31T16:00:00Z 89912 │ 719 2023-05-31T20:00:00Z 87249 │ │ [720 rows x 2 columns] ├─► [artifact_paths] [] ├──● The following python code has been executed: │ ```python │ import pandas as pd │ │ data_file_path = \"d:/demo_data.csv\" │ df = pd.read_csv(data_file_path) │ df │ ``` │ │ │ The execution of the generated python code above has succeeded │ │ The result of above Python code after execution is: │ TimeBucket Count │ 0 2023-02-01T00:00:00Z 67814 │ 1 2023-02-01T04:00:00Z 84569 │ .. ... ... │ 718 2023-05-31T16:00:00Z 89912 │ 719 2023-05-31T20:00:00Z 87249 │ │ [720 rows x 2 columns] ╰──● sending message to Planner ╭───< Planner >CodeInterpreter] finished <=�=> ├─► [init_plan] │ 1. load the data file │ 2. confirm the columns to calculate variance │ 3. calculate the variance value for the selected columns │ 4. report the result to the user ├─► [plan] ▶ [Planner][plan] 1. instruct CodeInterpreter to load the data file 2. confirm the columns to calculate var <=�=> │ 1. instruct CodeInterpreter to load the data file │ 2. confirm the columns to calculate variance ├─► [current_plan_step] 2. confirm the columns to calculate variance calculate varia <=�=> ├──● The data file d:/demo_data.csv is loaded. The columns in the data are: │ │ 1. TimeBucket │ 2. Count │ │ Please specify which column(s) you would like to calculate the variance for. ╰──● sending message to User TaskWeaver ▶ The data file d:/demo_data.csv is loaded. The columns in the data are: 1. TimeBucket 2. Count Please specify which column(s) you would like to calculate the variance for. Human ▶ Count ╭───< Planner >TaskWeaver] preparing <=�=> ├─► [init_plan] │ 1. load the data file │ 2. confirm the columns to calculate variance │ 3. calculate the variance value for the selected columns │ 4. report the result to the user ├─► [plan] │ 1. instruct CodeInterpreter to load the data file │ 2. confirm the columns to calculate variance │ 3. instruct CodeInterpreter to calculate the variance value for the Count column │ 4. report the result to the user ├─► [current_plan_step] 3. instruct CodeInterpreter to calculate the variance value for the Count columnor the Count col <=�=> ├──● Please calculate the variance value for the Count column in the loaded datalumn in the loaded <=�=> ╰──● sending message to CodeInterpreter ╭───< CodeInterpreter > ├─► [thought] ProgramApe will generate a code snippet to calculate the variance value for the Count column in the loaded data. column in the loaded dat <=�=> ├─► [python]▶ [CodeInterpreter][python] variance_count = df['Count'].var() varia <=�=> │ variance_count = df['Count'].var() │ variance_count ├─► [verification] NONE ├─► [code_error] No code verification is performed. ├─► [execution_status] SUCCESS] executing code <=�=> ├─► [execution_result] │ The execution of the generated python code above has succeeded │ │ The result of above Python code after execution is: │ 263514550.45479834 ├─► [artifact_paths] [] ├──● The following python code has been executed: │ ```python │ variance_count = df['Count'].var() │ variance_count │ ``` │ │ │ The execution of the generated python code above has succeeded │ │ The result of above Python code after execution is: │ 263514550.45479834 ╰──● sending message to Planner ╭───< Planner >CodeInterpreter] finished <=�=> ├─► [init_plan] │ 1. load the data file │ 2. confirm the columns to calculate variance │ 3. calculate the variance value for the selected columns │ 4. report the result to the user ├─► [plan] │ 1. instruct CodeInterpreter to load the data file │ 2. confirm the columns to calculate variance │ 3. instruct CodeInterpreter to calculate the variance value for the Count column │ 4. report the result to the user ├─► [current_plan_step] 4. report the result to the user result to the u <=�=> ├──● The variance value for the Count column in the data file d:/demo_data.csv is 263,514,550.45a.csv is 263,51 <=�=> ╰──● sending message to User TaskWeaver ▶ The variance value for the Count column in the data file d:/demo_data.csv is 263,514,550.45","s":"A walk-through example","u":"/TaskWeaver/docs/customization/experience/","h":"#a-walk-through-example","p":148},{"i":157,"t":"Using LLMs from OpenAI","s":"📄️ OpenAI","u":"/TaskWeaver/docs/llms/","h":"","p":155},{"i":159,"t":"Using LLMs from OpenAI/AOAI","s":"📄️ Azure OpenAI","u":"/TaskWeaver/docs/llms/","h":"","p":155},{"i":161,"t":"Using LLMs from LiteLLM","s":"📄️ LiteLLM","u":"/TaskWeaver/docs/llms/","h":"","p":155},{"i":163,"t":"1. Go to Ollama and follow the instructions to serve a LLM model on your local environment.","s":"📄️ Ollama","u":"/TaskWeaver/docs/llms/","h":"","p":155},{"i":165,"t":"1. Create an account on Google AI and get your API key.","s":"📄️ Gemini","u":"/TaskWeaver/docs/llms/","h":"","p":155},{"i":167,"t":"1. QWen (Tongyi Qianwen) is a LLM developed by Alibaba. Go to QWen and register an account and get the API key. More details can be found here (in Chinese).","s":"📄️ QWen","u":"/TaskWeaver/docs/llms/","h":"","p":155},{"i":169,"t":"1. GLM (ChatGLM) is a LLM developed by Zhipu AI and Tsinghua KEG. Go to ZhipuAI and register an account and get the API key. More details can be found here.","s":"📄️ GLM","u":"/TaskWeaver/docs/llms/","h":"","p":155},{"i":171,"t":"Using LLMs from Keywords AI and have better observability.","s":"📄️ Keywords AI","u":"/TaskWeaver/docs/llms/","h":"","p":155},{"i":173,"t":"We welcome developers to use your customized LLM API in TaskWeaver.","s":"📄️ Customized LLM API","u":"/TaskWeaver/docs/llms/","h":"","p":155},{"i":175,"t":"In some cases, you may want to use different LLMs for different components.","s":"📄️ Multi LLM APIs","u":"/TaskWeaver/docs/llms/","h":"","p":155},{"i":178,"t":"Create an account on Azure OpenAI and get your API key. Create a new deployment of the model and get the deployment name. Add the following to your taskweaver_config.json file: { \"llm.api_base\":\"YOUR_AOAI_ENDPOINT\", // in the format of https://.openai.azure.com\" \"llm.api_key\":\"YOUR_API_KEY\", \"llm.api_type\":\"azure\", \"llm.auth_mode\":\"api-key\", \"llm.model\":\"gpt-4-1106-preview\", // this is known as deployment_name in Azure OpenAI \"llm.response_format\": \"json_object\" } info For model versions or after 1106, llm.response_format can be set to json_object. However, for the earlier models, which do not support JSON response explicitly, llm.response_format should be set to null. Start TaskWeaver and chat with TaskWeaver. You can refer to the Quick Start for more details.","s":"Using API Key","u":"/TaskWeaver/docs/llms/aoai","h":"#using-api-key","p":176},{"i":180,"t":"Create an account on Azure OpenAI and assign the proper Azure RBAC Role to your account (or service principal). Create a new deployment of the model and get the deployment name. Add the following to your taskweaver_config.json file: { \"llm.api_base\":\"YOUR_AOAI_ENDPOINT\", // in the format of https://.openai.azure.com\" \"llm.api_type\":\"azure_ad\", \"llm.auth_mode\":\"default_azure_credential\", \"llm.model\":\"gpt-4-1106-preview\", // this is known as deployment_name in Azure OpenAI \"llm.response_format\": \"json_object\" } Install extra dependencies: pip install azure-identity Optionally configure additional environment variables or dependencies for the specifying authentication method: Internally, authentication is handled by the DefaultAzureCredential class from the azure-identity package. It would try to authenticate using a series of methods depending on the availability in current running environment (such as environment variables, managed identity, etc.). You can refer to the official documentation for more details. For example, you can specify different environment variables to control the authentication method: Authenticating with AzureCLI (recommended for local development): Install AzureCLI and ensure az is available in your PATH. Then run the following command to login: az login Authenticating with Managed Identity (recommended for Azure environment): If you are running TaskWeaver on Azure, you can use Managed Identity for authentication. You can check the document for specific Azure services on how to enable Managed Identity. When using user assigned managed identity, you can set the following environment variable to specify the client ID of the managed identity: export AZURE_CLIENT_ID=\"YOUR_CLIENT_ID\" Authenticating with Service Principal: You can follow the docs in the official documentation to specify the environment variables for Service Principal authentication. Start TaskWeaver and chat with TaskWeaver.","s":"Using Entra Authentication","u":"/TaskWeaver/docs/llms/aoai","h":"#using-entra-authentication","p":176},{"i":182,"t":"We have introduced the motivation of the experience module in Experience. In the quick start guide, we have shown how to extract experiences and lessons from the current conversation. However, a more common scenario is that you have a handcrafted experience that you want to use to guide the agent.","s":"Handcrafted Experience","u":"/TaskWeaver/docs/customization/experience/handcrafted_experience","h":"","p":181},{"i":184,"t":"To create a handcrafted experience, you need to create a YAML file that contains the experience. The YAML file should have the following structure: exp_id: the-id-of-the-experience experience_text: the content of the experience The file should be saved in the experience folder in the project directory. The file name should be prefixed with handcrafted_exp_{exp_id}. For example, if the exp_id is 1, the file name should be handcrafted_exp_1.yaml. tip Do not use underscores in the exp_id field in order to avoid conflicts with the file name. In the experience_text field, you can write the content of the experience in Markdown format. For example: exp_id: 1 experience_text: |- - Say \"world\" if you hear \"hello\". - Say \"peace\" if you hear \"love\".","s":"Create a handcrafted experience","u":"/TaskWeaver/docs/customization/experience/handcrafted_experience","h":"#create-a-handcrafted-experience","p":181},{"i":186,"t":"Loading the handcrafted experience is the same with loading the extracted experience. If either planner.use_experience or code_generator.use_experience is set to True in the project configuration file taskweaver_config.json, the handcrafted experience will be loaded at the time of starting the agent. If your agent is running, you need to restart the agent to load the handcrafted experience.","s":"Load the handcrafted experience","u":"/TaskWeaver/docs/customization/experience/handcrafted_experience","h":"#load-the-handcrafted-experience","p":181},{"i":188,"t":"Create an account on Anthropic and get your API key from the Anthropic Console. Add the following to your taskweaver_config.json file: { \"llm.api_type\": \"anthropic\", \"llm.api_base\": \"https://api.anthropic.com/v1/messages\", \"llm.api_key\": \"YOUR_API_KEY\", \"llm.model\": \"claude-3-opus\" } tip llm.model is the model name you want to use. You can find the list of available Claude models in the Anthropic API documentation. info Anthropic's Claude API doesn't have a specific response_format parameter like OpenAI. If you need structured output, you should instruct Claude to respond in a specific format (e.g., JSON) within your prompts. caution Anthropic doesn't provide a native embedding service. If you need embeddings, you'll need to configure a different service for that functionality. Start TaskWeaver and chat with TaskWeaver using Claude. You can refer to the Quick Start for more details. Remember to replace YOUR_API_KEY with your actual Anthropic API key.","s":"Anthropic (Claude)","u":"/TaskWeaver/docs/llms/anthropic","h":"","p":187},{"i":190,"t":"Create an account on Google AI and get your API key. Add the following content to your taskweaver_config.json file: { \"llm.api_type\": \"google_genai\", \"llm.google_genai.api_key\": \"YOUR_API_KEY\", \"llm.google_genai.model\": \"gemini-pro\" } Start TaskWeaver and chat with TaskWeaver. You can refer to the Quick Start for more details.","s":"Gemini","u":"/TaskWeaver/docs/llms/gemini","h":"","p":189},{"i":192,"t":"Groq was founded in 2016 by Chief Executive Officer Jonathan Ross, a former Google LLC engineer who invented the search giant's TPU machine learning processors. Go to Groq and register an account and get the API key from here. More details can be found here. Install the required packages groq. pip install groq Add the following configuration to taskweaver_config.json: { \"llm.api_base\": \"https://console.groq.com/\", \"llm.api_key\": \"YOUR_API_KEY\", \"llm.api_type\": \"groq\", \"llm.model\": \"mixtral-8x7b-32768\" } tip NOTE: llm.model is the model name of Groq LLM API. You can find the model name in the Groq LLM model list. Start TaskWeaver and chat with TaskWeaver. You can refer to the Quick Start for more details.","s":"GroqChat","u":"/TaskWeaver/docs/llms/groq","h":"","p":191},{"i":194,"t":"We welcome developers to use your customized LLM API in TaskWeaver. In this tutorial, we will show you how to contribute your LLM API to TaskWeaver. Create a new Python script .py in the taskweaver/llm folder. Import the CompletionService, LLMServiceConfig and EmbeddingService from taskweaver.llm.base and other necessary libraries. from injector import inject from taskweaver.llm.base import CompletionService, EmbeddingService, LLMServiceConfig from taskweaver.llm.util import ChatMessageType ... Create a new class YourLLMServiceConfig that inherits from LLMServiceConfig and implements the _configure method. In this method, you can set the name, API key, model name, backup model name, and embedding model name of your LLM. class YourLLMServiceConfig(LLMServiceConfig): def _configure(self) -> None: self._set_name(\"your_llm_name\") shared_api_key = self.llm_module_config.api_key self.api_key = self._get_str( \"api_key\", shared_api_key, ) shared_model = self.llm_module_config.model self.model = self._get_str( \"model\", shared_model if shared_model is not None else \"your_llm_model_name\", ) shared_backup_model = self.llm_module_config.backup_model self.backup_model = self._get_str( \"backup_model\", shared_backup_model if shared_backup_model is not None else self.model, ) shared_embedding_model = self.llm_module_config.embedding_model self.embedding_model = self._get_str( \"embedding_model\", shared_embedding_model if shared_embedding_model is not None else self.model, ) Create a new class YourLLMService that inherits from CompletionService and EmbeddingService and implements the chat_completion and get_embeddings methods. class YourLLMService(CompletionService, EmbeddingService): @inject def __init__(self, config: YourLLMServiceConfig): self.config = config pass def chat_completion( self, messages: List[ChatMessageType], stream: bool = True, temperature: Optional[float] = None, max_tokens: Optional[int] = None, top_p: Optional[float] = None, stop: Optional[List[str]] = None, **kwargs: Any, ) -> Generator[ChatMessageType, None, None]: pass def get_embeddings(self, strings: List[str]) -> List[List[float]]: pass Note: We set stream mode by default in chat_completion. You need to use self.config to get the configuration variables of your LLM API (e.g., api key/model name) in YourLLMService class. The get_embeddings method is optional. If you need to import other libraries for your LLM API, please import them in __init__ function of YourLLMService class. You can refer to QWen dashscope library import for an example. Register your LLM service in taskweaver/llm/__init__.py by adding your LLM service to the LLMApi __init__ function . ...... from .your_llm_name import YourLLMService # import your LLM service here class LLMApi(object): @inject def __init__(self, config: LLMModuleConfig, injector: Injector) -> None: self.config = config self.injector = injector if self.config.api_type in [\"openai\", \"azure\", \"azure_ad\"]: self._set_completion_service(OpenAIService) ...... elif self.config.api_type == \"your_llm_name\": self._set_completion_service(YourLLMService) # register your LLM service here else: raise ValueError(f\"API type {self.config.api_type} is not supported\") if self.config.embedding_api_type in [\"openai\", \"azure\", \"azure_ad\"]: self._set_embedding_service(OpenAIService) ...... elif self.config.embedding_api_type == \"azure_ml\": self.embedding_service = PlaceholderEmbeddingService( \"Azure ML does not support embeddings yet. Please configure a different embedding API.\", ) # register your embedding service here, if do not have embedding service, please use `PlaceholderEmbeddingService` referring to the above line elif self.config.embedding_api_type == \"your_llm_name\": self._set_embedding_service(YourLLMService) else: raise ValueError( f\"Embedding API type {self.config.embedding_api_type} is not supported\", ) Configurate taskweaver_config.json file in the project dir based on your implemented LLM API. Run the following command to test your LLM API. If the LLM API is successfully set up, you will see the response from your LLM API. cd ./scripts python llm_api_test.py You also can specify the project dir and query to be sent to your LLM API by using the following command: python llm_api_test.py --project --query \"hello, what can you do?\"","s":"Customized LLM API","u":"/TaskWeaver/docs/llms/customized_llm_api","h":"","p":193},{"i":196,"t":"info Keywords AI is a unified developer platform where you can call 150+ LLM using the OpenAI format with one API key and get insights into your AI products. With 2 lines of code, you can build better AI products with complete observability. Sign in Keywords AI and generate an API key to call 150+ LLMs. tip The full list of supported models by Keywords AI can be found in the page. Add the following content to your taskweaver_config.json file: { \"llm.api_type\":\"openai\", \"llm.api_base\": \"https://api.keywordsai.co/api/\", \"llm.api_key\": \"Your_Keywords_AI_API_Key\", \"llm.model\": \"gpt-4o\", } info If the configuration does not work, please refer to Keywords AI documents to locally test whether you can send requests to the LLM. Open a new terminal, start TaskWeaver and chat. You can refer to the Quick Start for more details. Suppose you want your AI products to be more robust and have better observability, such as having fallback models when primary models fail or knowing more about user activities. In that case, you can add parameters like fallback_models and customer_identifier in the extra_body param from OpenAI.","s":"Keywords AI","u":"/TaskWeaver/docs/llms/Keywords-AI","h":"","p":195},{"i":198,"t":"GLM (ChatGLM) is a LLM developed by Zhipu AI and Tsinghua KEG. Go to ZhipuAI and register an account and get the API key. More details can be found here. Install the required packages dashscope. pip install zhipuai Add the following configuration to taskweaver_config.json: { \"llm.api_type\": \"zhipuai\", \"llm.model\": \"glm-4\", \"llm.embedding_model\": \"embedding-2\", \"llm.embedding_api_type\": \"zhipuai\", \"llm.api_key\": \"YOUR_API_KEY\" } NOTE: llm.model is the model name of zhipuai API. You can find the model name in the GLM model list. Start TaskWeaver and chat with TaskWeaver. You can refer to the Quick Start for more details.","s":"GLM","u":"/TaskWeaver/docs/llms/glm","h":"","p":197},{"i":200,"t":"info LiteLLM provides a unified interface to call 100+ LLMs using the same Input/Output format, including OpenAI, Huggingface, Anthropic, vLLM, Cohere, and even custom LLM API server. Taking LiteLLM as the bridge, many LLMs can be onboarded to TaskWeaver. Here we use the OpenAI Proxy Server provided by LiteLLM to make configuration. Install LiteLLM Proxy and configure the LLM server by following the instruction here. In general, there are a few steps: Install the package pip install litellm[proxy] Setup the API key and other necessary environment variables which vary by LLM. Taking Cohere as an example, it is required to setup export COHERE_API_KEY=my-api-key. Run LiteLLM proxy server by litellm --model MODEL_NAME --drop_params, for example, in Cohere, the model name can be command-nightly. The drop-params argument is used to ensure the API compatibility. Then, a server will be automatically started on http://0.0.0.0:8000. tip The full list of supported models by LiteLLM can be found in the page. Add the following content to your taskweaver_config.json file: { \"llm.api_base\": \"http://0.0.0.0:8000\", \"llm.api_key\": \"anything\", \"llm.model\": \"gpt-3.5-turbo\" } info llm.api_key and llm.model are mainly used as placeholder for API call, whose actual values are not used. If the configuration does not work, please refer to LiteLLM documents to locally test whether you can send requests to the LLM. Open a new terminal, start TaskWeaver and chat. You can refer to the Quick Start for more details.","s":"LiteLLM","u":"/TaskWeaver/docs/llms/liteLLM","h":"","p":199},{"i":202,"t":"Go to Ollama and follow the instructions to serve a LLM model on your local environment. We provide a short example to show how to configure the ollama in the following, which might change if ollama makes updates. install ollama and serve LLMs in local ## Install ollama on Linux & WSL2 curl https://ollama.ai/install.sh | sh ## Run the serving ollama serve Open another terminal and run: ollama run llama2:13b tip We recommend deploying the LLM with a parameter scale exceeding 13B for enhanced performance (such as Llama 2 13B). info When serving LLMs via Ollama, it will by default start a server at http://localhost:11434, which will later be used as the API base in taskweaver_config.json. Add following configuration to taskweaver_config.json: { \"llm.api_base\": \"http://localhost:11434\", \"llm.api_key\": \"ARBITRARY_STRING\", \"llm.api_type\": \"ollama\", \"llm.model\": \"llama2:13b\" } NOTE: llm.api_base is the URL started in the Ollama LLM server and llm.model is the model name of Ollama LLM, it should be same as the one you served before. Start TaskWeaver and chat with TaskWeaver. You can refer to the Quick Start for more details.","s":"Ollama","u":"/TaskWeaver/docs/llms/ollama","h":"","p":201},{"i":204,"t":"Create an account on OpenAI and get your API key. Add the following to your taskweaver_config.json file: { \"llm.api_type\":\"openai\", \"llm.api_base\": \"https://api.openai.com/v1\", \"llm.api_key\": \"YOUR_API_KEY\", \"llm.model\": \"gpt-4\", \"llm.response_format\": \"json_object\" } tip llm.model is the model name you want to use. You can find the list of models here. info For model versions equal or after 1106, llm.response_format can be set to json_object. However, for the earlier models which do not support JSON response explicitly, llm.response_format should be set to null. Start TaskWeaver and chat with TaskWeaver. You can refer to the Quick Start for more details.","s":"OpenAI","u":"/TaskWeaver/docs/llms/openai","h":"","p":203},{"i":206,"t":"In some cases, you may want to use different LLMs for different components. For example, you may want to use OpenAI GPT-4 for the Planner but use Google gemini-pro for the CodeInterpreter. In this part, we show you how to use different LLMs for different components. If you need only one LLM, you can have only the primary LLM settings in the taskweaver_config.json file. If you need multiple LLMs, you need to have ext_llms.llm_configs in the taskweaver_config.json file to specify the extra LLMs for different components. In the following, we show you how to configure the taskweaver_config.json file to use multiple LLMs. \"llm.api_type\":\"openai\", \"llm.api_base\": \"https://api.openai.com/v1\", \"llm.api_key\": \"YOUR_API_KEY\", \"llm.model\": \"gpt-3.5-turbo-1106\", \"llm.response_format\": \"json_object\" \"ext_llms.llm_configs\": { \"llm_A\": { \"llm.api_type\": \"openai\", \"llm.api_base\": \"https://api.openai.com/v1\", \"llm.api_key\": \"YOUR_API_KEY\", \"llm.model\": \"gpt-4-1106-preview\", \"llm.response_format\": \"json_object\", }, \"llm_B\": { \"llm.api_type\": \"google_genai\", \"llm.api_key\": \"YOUR_API_KEY\", \"llm.model\": \"gemini-pro\", }, }, The primary LLM settings are specified in the llm. fields and it is mandatory. ext_llms.llm_configs is optional and is a dict of extra LLMs for different components. If you do not specify it, only the primary LLM will be used. Specify the LLMs for different components in the taskweaver_config.json. For example, we want to use OpenAI GPT-4 for the Planner and use Google gemini-pro for the CodeInterpreter. \"planner.llm_alias\": \"llm_A\", \"code_generator.llm_alias\": \"llm_B\" tip If you do not specify the LLM for a component, the primary LLM will be used by default. In the above example, GPT-3.5-turbo-1106 will be used for both the Planner and the CodeInterpreter.","s":"Multi LLM APIs","u":"/TaskWeaver/docs/llms/multi-llm","h":"","p":205},{"i":208,"t":"The primary purpose of the memory module is to store the information that is required to maintain the context of the conversation. You can find the implementation code in taskweaver/memory/memory.py. We have introduced various concepts such as Round and Post in the concepts section, which are the building blocks of the Memory module. There are two kinds of information that are stored in the memory: Conversation History: This includes the conversation that has happened so far between the user and various roles in TaskWeaver. Shared Memory: This includes the information that is purposefully shared between the roles in TaskWeaver. Let's briefly discuss the two types of information.","s":"Memory","u":"/TaskWeaver/docs/memory","h":"","p":207},{"i":210,"t":"A TaskWeaver agent is composed of one or more roles. Each role have its own conversation history. In TaskWeaver, we orchestrate the roles in a star topology, where the Planner is at the center and the roles are at the periphery. The User only interacts with the Planner, and the Planner interacts with the roles, making planning and instructing other roles to carry out the tasks, as shown in the figure below. Though this fixed orchestration is a limitation, it reserves the independence of the roles. Each role does not need to know about the other roles, even their existence. For any peripheral role, the Planner is the only point of contact, i.e., its real \"User\", and it only focuses on its own expertise. It is the Planner's responsibility to leverage multiple roles for complex tasks and orchestrate them to achieve the goal. The conversation history of each role is stored in the memory. When a role needs to prepare a response, it can refer to the conversation history to understand the context of the conversation. Specifically, this typically is the process of preparing a prompt for the LLM, containing all the previous chat rounds and the current request. A role only cares about the Posts sent or received by itself.","s":"Role-wise Conversation History","u":"/TaskWeaver/docs/memory","h":"#role-wise-conversation-history","p":207},{"i":212,"t":"While we want to maintain the independence of the roles, there are cases where the roles need to share information. One common case is about information sharing between two peripheral roles. For example, the Planner may ask the Code Interpreter to generate code based on the guide provided by a Data Scientist role. In this case, the Planner needs to share the guide with the Code Interpreter. In theory, this can be done by the Planner repeating the guide to the Code Interpreter, shown in the figure below. However, we found that the Planner can fail to repeat the guide accurately, leading to miscommunication. Another use case is a role needing to store some control state that is shared among all roles. For example, the agent needs to handle multiple types of tasks. The \"type\" of the current user request is only determined by one role (e.g., namely TypeDeterminer), but all other roles need to know the type to prepare the response. In this case, the role that determines the type can store the type in the shared memory, and other roles can refer to the shared memory to get the type. tip The number in the arrows indicates the order of the information flow. For the aforementioned reasons, we introduced the concept of Shared Memory. The Shared Memory is a special Attachment that is appended to the post of the role who wants to share information. The attachment has a instance of SharedMemoryEntry in the extra field. The SharedMemoryEntry has the following fields: class SharedMemoryEntry: type: Literal[...] # The type of the shared memory entry content: str # The content of the shared information scope: Literal[\"round\", \"conversation\"] # The scope of the shared information id: str # The id of the shared memory entry Understanding the scope field is crucial to understand the Shared Memory. The scope field determines the scope of the shared information. If the scope is round, the shared information is only effective for the current round. Otherwise, if the scope is conversation, the shared information is effective for the whole conversation. One question may be why we do not store the shared information in a separate data structure, instead of the Attachment in Posts. The reason is that, if a Round fails, we need to remove the shared information within that Round as well. By storing the shared information in the Attachment, as a part of the Post, we can easily filter out the shared information based on the Round status. This is similar with designing the logging system of database operations in a transaction. The consumer of the shared information can use type to retrieve the shared memory entries that is effective for the current chat round, including the conversational ones. However, if one role has multiple shared memory entries with the same type, only the latest one is effective. In other words, later shared memory entries overwrite the previous ones with the same type from the same role. A reference implementation of the Shared Memory is provided in the taskweaver/planner/planner.py, where the Planner role shares the details of the plan with other roles.","s":"Shared Memory","u":"/TaskWeaver/docs/memory","h":"#shared-memory","p":207},{"i":214,"t":"QWen (Tongyi Qianwen) is a LLM developed by Alibaba. Go to QWen and register an account and get the API key. More details can be found here (in Chinese). Install the required packages dashscope. pip install dashscope Add the following configuration to taskweaver_config.json: { \"llm.api_type\": \"qwen\", \"llm.model\": \"qwen-max\", \"llm.api_key\": \"YOUR_API_KEY\" } NOTE: llm.model is the model name of QWen LLM API. You can find the model name in the QWen LLM model list. Start TaskWeaver and chat with TaskWeaver. You can refer to the Quick Start for more details.","s":"QWen","u":"/TaskWeaver/docs/llms/qwen","h":"","p":213},{"i":216,"t":"In this tutorial, we will introduce how to develop a strawman plugin in TaskWeaver. This plugin can render a input text in ascii art.","s":"An Example of Developing a New Plugin","u":"/TaskWeaver/docs/plugin/how_to_develop_a_new_plugin","h":"","p":215},{"i":218,"t":"Create a python file named ascii_render.py in the plugins folder. The file name should be the same as the plugin name. The plugin name is defined in the plugin schema. In this example, the plugin name is ascii_render. The following code is the template of the plugin implementation. from taskweaver.plugin import Plugin, register_plugin @register_plugin class PluginTemplate(Plugin): def __call__(self, *args, **kwargs): \"\"\"Implementation Starts\"\"\" result, description = YourImplementation() \"\"\"Implementation Ends\"\"\" # if your want to add artifact from the execution result, uncomment the following code # self.ctx.add_artifact( # name=\"artifact\", # file_name=\"artifact.csv\", # type=\"df\", # val=result, # ) return result, description The typical way of implementing the plugin is to change the code between Implementation Starts and Implementation Ends. Note that the return are two variables result and description. The result stores whatever output required for follow-up processing (e.g., a DataFrame). The description is a string to describe the result. Let's make some changes to the code and the result is as follows: from taskweaver.plugin import Plugin, register_plugin @register_plugin class AsciiRenderPlugin(Plugin): def __call__(self, text: str): import pyfiglet ascii_art_str = pyfiglet.figlet_format(text, font='isometric1') return ascii_art_str Note that this function depends on the package pyfiglet, so we need to install it with pip install pyfiglet.","s":"Implement the python code","u":"/TaskWeaver/docs/plugin/how_to_develop_a_new_plugin","h":"#implement-the-python-code","p":215},{"i":220,"t":"Next, we need to configure the schema so that the LLM can understand the function of the plugin. In the schema, there are several fields that should be filled, including name, enabled, required, description, parameters and returns. Please check Plugin Introduction for more details. Create a yaml file named ascii_render.yaml and copy the following content into it. name: ascii_render enabled: true required: true description: >- This plugin renders the input text into ASCII art form. The input should be a string and the output is also a string in ASCII art. For example, result = ascii_render(text='Hello World'). parameters: - name: text type: str required: true description: >- This is the input text to be rendered into ASCII art form. returns: - name: result type: str description: >- The rendered text in ASCII art.","s":"Configure the schema","u":"/TaskWeaver/docs/plugin/how_to_develop_a_new_plugin","h":"#configure-the-schema","p":215},{"i":222,"t":"After the plugin is implemented and configured, we can call the plugin in the conversation. The full conversation is as follows: ========================================================= _____ _ _ __ |_ _|_ _ ___| | _ | | / /__ ____ __ _____ _____ | |/ _` / __| |/ /| | /| / / _ \\/ __ `/ | / / _ \\/ ___/ | | (_| \\__ \\ < | |/ |/ / __/ /_/ /| |/ / __/ / |_|\\__,_|___/_|\\_\\|__/|__/\\___/\\__,_/ |___/\\___/_/ ========================================================= TaskWeaver: I am TaskWeaver, an AI assistant. To get started, could you please enter your request? Human: render ABC in ascii art >>> [INIT_PLAN] 1. Render the text 'ABC' into ASCII art >>> [PLAN] 1. Instruct CodeInterpreter to render the text 'ABC' into ASCII art >>> [CURRENT_PLAN_STEP] 1. Instruct CodeInterpreter to render the text 'ABC' into ASCII art >>> [SEND_TO] CodeInterpreter >>> [MESSAGE] Please render the text 'ABC' into ASCII art >>> [PLANNER->CODEINTERPRETER] Please render the text 'ABC' into ASCII art >>> [PYTHON] # Call the plugin function to render the text 'ABC' into ASCII art ascii_art_result = ascii_render(\"ABC\") ascii_art_result >>> [VERIFICATION] NONE >>> [STATUS] SUCCESS >>> [RESULT] The execution of the generated python code above has succeeded The result of above Python code after execution is: ___ ___ ___ /\\ \\ /\\ \\ /\\ \\ /::\\ \\ /::\\ \\ /::\\ \\ /:/\\:\\ \\ /:/\\:\\ \\ /:/\\:\\ \\ /::\\~\\:\\ \\ /::\\~\\:\\__\\ /:/ \\:\\ \\ /:/\\:\\ \\:\\__\\ /:/\\:\\ \\:|__| /:/__/ \\:\\__\\ \\/__\\:\\/:/ / \\:\\~\\:\\/:/ / \\:\\ \\ \\/__/ \\::/ / \\:\\ \\::/ / \\:\\ \\ /:/ / \\:\\/:/ / \\:\\ \\ /:/ / \\::/__/ \\:\\__\\ \\/__/ ~~ \\/__/ >>> [CODEINTERPRETER->PLANNER] The following python code has been executed: # Call the plugin function to render the text 'ABC' into ASCII art ascii_art_result = ascii_render(\"ABC\") ascii_art_result The execution of the generated python code above has succeeded The result of above Python code after execution is: ___ ___ ___ /\\ \\ /\\ \\ /\\ \\ /::\\ \\ /::\\ \\ /::\\ \\ /:/\\:\\ \\ /:/\\:\\ \\ /:/\\:\\ \\ /::\\~\\:\\ \\ /::\\~\\:\\__\\ /:/ \\:\\ \\ /:/\\:\\ \\:\\__\\ /:/\\:\\ \\:|__| /:/__/ \\:\\__\\ \\/__\\:\\/:/ / \\:\\~\\:\\/:/ / \\:\\ \\ \\/__/ \\::/ / \\:\\ \\::/ / \\:\\ \\ /:/ / \\:\\/:/ / \\:\\ \\ /:/ / \\::/__/ \\:\\__\\ \\/__/ ~~ \\/__/ >>> [INIT_PLAN] 1. Render the text 'ABC' into ASCII art >>> [PLAN] 1. Instruct CodeInterpreter to render the text 'ABC' into ASCII art >>> [CURRENT_PLAN_STEP] Report the ASCII art to the user >>> [SEND_TO] User >>> [MESSAGE] Here is the text 'ABC' rendered in ASCII art: ___ ___ ___ /\\ \\ /\\ \\ /\\ \\ /::\\ \\ /::\\ \\ /::\\ \\ /:/\\:\\ \\ /:/\\:\\ \\ /:/\\:\\ \\ /::\\~\\:\\ \\ /::\\~\\:\\__\\ /:/ \\:\\ \\ /:/\\:\\ \\:\\__\\ /:/\\:\\ \\:|__| /:/__/ \\:\\__\\ \\/__\\:\\/:/ / \\:\\~\\:\\/:/ / \\:\\ \\ \\/__/ \\::/ / \\:\\ \\::/ / \\:\\ \\ /:/ / \\:\\/:/ / \\:\\ \\ /:/ / \\::/__/ \\:\\__\\ \\/__/ ~~ \\/__/ >>> [PLANNER->USER] Here is the text 'ABC' rendered in ASCII art: ___ ___ ___ /\\ \\ /\\ \\ /\\ \\ /::\\ \\ /::\\ \\ /::\\ \\ /:/\\:\\ \\ /:/\\:\\ \\ /:/\\:\\ \\ /::\\~\\:\\ \\ /::\\~\\:\\__\\ /:/ \\:\\ \\ /:/\\:\\ \\:\\__\\ /:/\\:\\ \\:|__| /:/__/ \\:\\__\\ \\/__\\:\\/:/ / \\:\\~\\:\\/:/ / \\:\\ \\ \\/__/ \\::/ / \\:\\ \\::/ / \\:\\ \\ /:/ / \\:\\/:/ / \\:\\ \\ /:/ / \\::/__/ \\:\\__\\ \\/__/ ~~ \\/__/ TaskWeaver: Here is the text 'ABC' rendered in ASCII art: ___ ___ ___ /\\ \\ /\\ \\ /\\ \\ /::\\ \\ /::\\ \\ /::\\ \\ /:/\\:\\ \\ /:/\\:\\ \\ /:/\\:\\ \\ /::\\~\\:\\ \\ /::\\~\\:\\__\\ /:/ \\:\\ \\ /:/\\:\\ \\:\\__\\ /:/\\:\\ \\:|__| /:/__/ \\:\\__\\ \\/__\\:\\/:/ / \\:\\~\\:\\/:/ / \\:\\ \\ \\/__/ \\::/ / \\:\\ \\::/ / \\:\\ \\ /:/ / \\:\\/:/ / \\:\\ \\ /:/ / \\::/__/ \\:\\__\\ \\/__/ ~~ \\/__/ info Check the FAQs if you have any issues in developing a plugin before submitting an issue on GitHub.","s":"Call the plugin","u":"/TaskWeaver/docs/plugin/how_to_develop_a_new_plugin","h":"#call-the-plugin","p":215},{"i":224,"t":"In practice, you may want to have multiple plugins that share the same implementation. For example, you may want to have two plugins that both pull data from a database, but one pulls data from database A and the other pulls data from database B. In this case, the plugin implementation code is the same, but the plugin configuration is different. It would be cumbersome to copy and paste the same implementation code to two different files. To solve this problem, TaskWeaver allows you to have multiple plugin configurations that share the same implementation. Here is an example of the plugin configuration for the two plugins that pull data from database A and B respectively: The configuration for the plugin that pulls data from database A: name: sql_pull_data_from_A code: sql_pull_data ... description: >- Pull data from a SQL database A. The database A contains information about merchandise sales. examples: |- df, description = sql_pull_data_from_A(\"pull data from time_series table\") parameters: ... returns: ... configurations: ... sqlite_db_path: /path/to/sqlite_A.db The configuration for the plugin that pulls data from database B: name: sql_pull_data_from_B code: sql_pull_data ... description: >- Pull data from a SQL database B. The database B contains information about customer information. examples: |- df, description = sql_pull_data_from_B(\"pull data from time_series table\") parameters: ... returns: ... configurations: ... sqlite_db_path: /path/to/sqlite_B.db Let's discuss the differences between the two configurations. First, you can see that the name field is different, and the names are different from the python file name (without extension) which is sql_pull_data.py. This name is used in CodeInterpreter for code generation. So, you can see that in the examples field, the function name is sql_pull_data_from_A and sql_pull_data_from_B, respectively. Second, you can see that the code field is the same, and the code file name is sql_pull_data.py. This means that the two plugins share the same implementation code. The code field is optional, and if you don't specify it, the plugin name will be used as the code file name without the extension. Third, you can see that the configurations field is different, and the sqlite_db_path is different. This means that the two plugins have different configurations. This is typically the key reason why you want to have multiple plugin configurations that share the same implementation. Finally, you can see that the description field is different, and the descriptions are different. This is important because the Planner and the CodeInterpreter will use the description to make decisions and generate code. The two descriptions should be explicit enough to distinguish the two plugins. Otherwise, the Planner and the CodeInterpreter may not be able to make the right decisions.","s":"Multiple YAML files to one Python implementation","u":"/TaskWeaver/docs/plugin/multi_yaml_single_impl","h":"","p":223},{"i":226,"t":"When you meet the situation where you want to have multiple plugin configurations that share the same implementation, you can use the code field to specify the code file name, and use the configurations field to specify the configurations. The name field is used to distinguish the plugins, and the description field is used to help the Planner and the CodeInterpreter make right decisions.","s":"Conclusion","u":"/TaskWeaver/docs/plugin/multi_yaml_single_impl","h":"#conclusion","p":223},{"i":228,"t":"TaskWeaver is a code-first agent framework for seamlessly planning and executing data analytics tasks. This innovative framework interprets user requests through coded snippets and efficiently coordinates a variety of plugins in the form of functions to execute data analytics or workflow automation tasks. Highlighted Features Rich data structure - TaskWeaver allows you to work with rich data structures in Python, such as Lists, Dictionaries, or Pandas DataFrames, instead of having to restrict to text strings. Customized algorithms - TaskWeaver allows you to encapsulate your own algorithms or functions into plugins (in the form of Python functions), and orchestrate them to achieve complex tasks. Incorporating domain-specific knowledge - TaskWeaver is designed to be easily incorporating domain-specific knowledge, such as the knowledge or experience in task planning and code generation, to improve the reliability of task execution. Stateful conversation - TaskWeaver is designed to support stateful conversation which means you can interact with your data in memory across multiple chat rounds. Code verification - TaskWeaver is designed to verify the generated code before execution. It can detect potential issues in the generated code and automatically fix them. Security consideration - TaskWeaver supports running code inside a sandbox environment to prevent malicious code execution. It also provides a basic session management to keep different users' data separate. Easy to debug - TaskWeaver is designed to be easy to debug. We have detailed logs, metrics, and traces, instrumenting using OpenTelemetry, to help you understand what is going on under the simple chat interface. Easy to extend - TaskWeaver is designed to be easily extended to accomplish more complex tasks. Beyond the plugins, you can create extra roles, define how they interact with the Planner and orchestrate them to achieve more complex tasks. Easy to use - TaskWeaver is designed to be easy to use. We provide a set of sample plugins and a tutorial to help you get started. We also provide a all-in-one Docker image to help you quickly play with TaskWeaver.","s":"Overview","u":"/TaskWeaver/docs/overview","h":"","p":227},{"i":230,"t":"Plugins are the units that could be orchestrated by TaskWeaver's CodeInterpreter. One could view the plugins as tools that the LLM can utilize to accomplish certain tasks. In TaskWeaver, each plugin is represented as a Python function that can be called within the generated code snippet. One concrete example would be pulling data from database and apply anomaly detection. The generated code (simplified) looks like follows: df, data_description = sql_pull_data(query=\"pull data from time_series table\") anomaly_df, anomaly_description = anomaly_detection(df, time_col_name=\"ts\", value_col_name=\"val\") The generated code snippet above calls two plugins: sql_pull_data and anomaly_detection. The sql_pull_data plugin pulls data from a database, and the anomaly_detection plugin detects anomalies in the data.","s":"Plugin Introduction","u":"/TaskWeaver/docs/plugin/plugin_intro","h":"","p":229},{"i":232,"t":"A plugin involves two files: Plugin Implementation: a Python file that defines the plugin Plugin Schema: a file in yaml that defines the schema of the plugin","s":"Plugin Structure","u":"/TaskWeaver/docs/plugin/plugin_intro","h":"#plugin-structure","p":229},{"i":234,"t":"The plugin function needs to be implemented in Python. To be coordinated with the orchestration by TaskWeaver, a plugin python file consists of two parts: Plugin function implementation code TaskWeaver plugin decorator Here we exhibit an example of the anomaly detection plugin as the following code: import pandas as pd from pandas.api.types import is_numeric_dtype from taskweaver.plugin import Plugin, register_plugin @register_plugin class AnomalyDetectionPlugin(Plugin): def __call__(self, df: pd.DataFrame, time_col_name: str, value_col_name: str): \"\"\" anomaly_detection function identifies anomalies from an input dataframe of time series. It will add a new column \"Is_Anomaly\", where each entry will be marked with \"True\" if the value is an anomaly or \"False\" otherwise. :param df: the input data, must be a dataframe :param time_col_name: name of the column that contains the datetime :param value_col_name: name of the column that contains the numeric values. :return df: a new df that adds an additional \"Is_Anomaly\" column based on the input df. :return description: the description about the anomaly detection results. \"\"\" try: df[time_col_name] = pd.to_datetime(df[time_col_name]) except Exception: print(\"Time column is not datetime\") return if not is_numeric_dtype(df[value_col_name]): try: df[value_col_name] = df[value_col_name].astype(float) except ValueError: print(\"Value column is not numeric\") return mean, std = df[value_col_name].mean(), df[value_col_name].std() cutoff = std * 3 lower, upper = mean - cutoff, mean + cutoff df[\"Is_Anomaly\"] = df[value_col_name].apply(lambda x: x < lower or x > upper) anomaly_count = df[\"Is_Anomaly\"].sum() description = \"There are {} anomalies in the time series data\".format(anomaly_count) self.ctx.add_artifact( name=\"anomaly_detection_results\", # a brief description of the artifact file_name=\"anomaly_detection_results.csv\", # artifact file name type=\"df\", # artifact data type, support chart/df/file/txt/svg val=df, # variable to be dumped ) return df, description You need to go through the following steps to register a plugin: import the TaskWeaver plugin decorator from taskWeaver.plugin import Plugin, register_plugin create your plugin class inherited from Plugin parent class (e.g., AnomalyDetectionPlugin(Plugin)), which is decorated by @register_plugin implement your plugin function in __call__ method of the plugin class. We provide an example process of developing a new plugin in this tutorial. tip A good practice in a plugin implementation is to return a description of the result in natural language. As LLMs only understand natural language, it is important to let the model understand what the execution result is. In the example implementation above, the description says how many anomalies are detected. In other cases such as loading a csv file, a good description could be showing the schema of the loaded data. This description can be used by the LLM to plan the next steps.","s":"Plugin Implementation","u":"/TaskWeaver/docs/plugin/plugin_intro","h":"#plugin-implementation","p":229},{"i":236,"t":"If the functionality of your plugin depends on additional libraries or packages, it is essential to ensure that they are installed before proceeding. If you wish to persist intermediate results, such as data, figures, or prompts, in your plugin implementation, TaskWeaver provides an add_artifact API that allows you to store these results in the workspace. In the example we provide, if you have performed anomaly detection and obtained results in the form of a CSV file, you can utilize the add_artifact API to save this file as an artifact. The artifacts are stored in the project/workspace/session_id/cwd folder in the project directory. self.ctx.add_artifact( name=\"anomaly_detection_results\", # a brief description of the artifact file_name=\"anomaly_detection_results.csv\", # artifact file name type=\"df\", # artifact data type, support chart/df/file/txt/svg val=df, # variable to be dumped )","s":"Important Notes","u":"/TaskWeaver/docs/plugin/plugin_intro","h":"#important-notes","p":229},{"i":238,"t":"The plugin schema is composed of several parts: *name: The main function name of the Python code. enabled: determine whether the plugin is enabled for selection during conversations. The default value is true. plugin_only: determine if this plugin is enabled under the plugin-only mode. The default value is false. code: the code file name of the plugin. The default value is the same as the plugin name. *descriptions: A brief description that introduces the plugin function. *parameters: This section lists all the input parameter information. It includes the parameter's name, type, whether it is required or optional, and a description providing more details about the parameter. *returns: This section lists all the return value information. It includes the return value's name, type, and description that provides information about the value that is returned by the function. configurations: the configuration parameters for the plugin. The default value is an empty dictionary. tip The addition of any extra fields or missing of mandatory fields (marked by * above) would result in a validation failure within the plugin schema. The plugin schema is required to be written in YAML format. Here is the plugin schema example of the above anomaly detection plugin: name: anomaly_detection enabled: true plugin_only: false required: false description: >- anomaly_detection function identifies anomalies from an input DataFrame of time series. It will add a new column \"Is_Anomaly\", where each entry will be marked with \"True\" if the value is an anomaly or \"False\" otherwise. parameters: - name: df type: DataFrame required: true description: >- the input data from which we can identify the anomalies with the 3-sigma algorithm. - name: time_col_name type: str required: true description: name of the column that contains the datetime - name: value_col_name type: str required: true description: name of the column that contains the numeric values. returns: - name: df type: DataFrame description: >- This DataFrame extends the input DataFrame with a newly-added column \"Is_Anomaly\" containing the anomaly detection result. - name: description type: str description: This is a string describing the anomaly detection results. info Without specifying the code field, the plugin schema will use the plugin name as the code file name. For example, the plugin name is anomaly_detection and the code file name is anomaly_detection.py. In cases where the plugin name is not the same as the code file name, you can specify the code name (code file) in the plugin schema to ensure clarity and accuracy. For example, the plugin name is anomaly_detection and the code file name is anomaly_detection_code.py. Then, you can specify the code name in the plugin schema as follows: code: anomaly_detection_code Note that the code file name should be the same as the code name without the .py extension. Refer to Multiple YAML files to one Python implementation for more information on how to use this feature. info When using common code that requires some configuration parameter modifications for different plugins, it is important to specify these configuration parameters in the plugin schema. The configuration parameters are specified in the plugin schema as follows: configurations: key1: value1 key2: value2 These configuration parameters can be accessed in the plugin implementation as follows: self.config.get(\"key1\") self.config.get(\"key2\") info When this plugin is enabled for the plugin-only mode, set the plugin_only field to true. The default value is false. Note that all plugins will be loaded in the non-plugin-only mode which is the default mode. But in the plugin-only mode, only the plugins with plugin_only: true will be loaded.","s":"Plugin Schema","u":"/TaskWeaver/docs/plugin/plugin_intro","h":"#plugin-schema","p":229},{"i":241,"t":"The plugin-only mode is a restricted mode of TaskWeaver that only allows you to use plugins. Compared to the full mode, the plugin-only mode has the following restrictions: The generated code only contains the calls to the plugins. For example, the following code only calls the ascii_render plugin and does not contain any \"free-form\" code. r1=ascii_render(**{\"text\":\"Hello\"}) r1 Only the plugins with plugin_only: true in the yaml file will be loaded. For example, the following plugin will be loaded in the plugin-only mode: name: ascii_render plugin_only: true ... If this field is not specified, the default value is false. For plugins in the plugin-only mode, the argument type can only be str, int, boolean, or float. Other types such as DataFrame are not allowed. Essentially, we consider these plugins only produce \"text-like\" output that can be directly consumed by the LLM. To support the plugin-only mode, we developed a new role called PluginOrchestrator. To enable the plugin-only mode, you can add the configuration \"session.roles\": [\"planner\", \"code_interpreter_plugin_only\"] in the project configuration file taskweaver_config.json. info Although the plugin-only mode is restricted, it is still useful in some scenarios. For example, you may want to use TaskWeaver to only generate the code to call a certain plugin, and you want to get the response from the plugin directly, without generating any other code for safety reasons.","s":"What is the plugin-only mode?","u":"/TaskWeaver/docs/plugin/plugin_only","h":"#what-is-the-plugin-only-mode","p":239},{"i":243,"t":"The plugin-only mode is implemented based on the function calling mode of LLMs. In this mode, the LLM is trained to generate a JSON object that contains the function name and the arguments. For example, the following JSON object is generated by the LLM: { \"function\": \"ascii_render\", \"arguments\": { \"text\": \"Hello\" } } With this JSON object, we assemble the code to call the plugin: r1=ascii_render(**{\"text\":\"Hello\"}) r1 Then, we execute the code and get the response from the plugin. Therefore, the code is not directly generated by the LLM in the plugin-only mode.","s":"How is the plugin-only mode implemented?","u":"/TaskWeaver/docs/plugin/plugin_only","h":"#how-is-the-plugin-only-mode-implemented","p":239},{"i":245,"t":"Currently, the plugin-only mode is only supported by OpenAI models ZhipuAI models Likely other models that are compatible with the OpenAI models will also support the plugin-only mode.","s":"Which models support the plugin-only mode?","u":"/TaskWeaver/docs/plugin/plugin_only","h":"#which-models-support-the-plugin-only-mode","p":239},{"i":248,"t":"You can install TaskWeaver by running the following command: # [optional] create a conda environment to isolate the dependencies # conda create -n taskweaver python=3.10 # conda activate taskweaver # clone the repository git clone https://github.com/microsoft/TaskWeaver.git cd TaskWeaver # install the requirements pip install -r requirements.txt","s":"Installation","u":"/TaskWeaver/docs/quickstart","h":"#installation","p":246},{"i":250,"t":"TaskWeaver runs as a process, you need to create a project directory to store plugins and configuration files. We provided a sample project directory in the project folder. You can copy the project folder to your workspace. A project directory typically contains the following files and folders: 📦project ┣ 📜taskweaver_config.json # the project configuration file for TaskWeaver ┣ 📂plugins # the folder to store plugins ┣ 📂planner_examples # the folder to store planner examples ┣ 📂codeinterpreter_examples # the folder to store code interpreter examples ┣ 📂logs # the folder to store logs, will be generated after program starts ┗ 📂workspace # the directory stores session data, will be generated after program starts ┗ 📂 session_id ┣ 📂ces # the folder used by the code execution service ┣ 📂cwd # the current working directory to run the generated code ┗ other session data","s":"Project Directory","u":"/TaskWeaver/docs/quickstart","h":"#project-directory","p":246},{"i":252,"t":"Before running TaskWeaver, you need to provide your OpenAI API key and other necessary information. You can do this by editing the taskweaver_config.json file. If you are using Azure OpenAI, you need to set the following parameters in the taskweaver_config.json file:","s":"OpenAI Configuration","u":"/TaskWeaver/docs/quickstart","h":"#openai-configuration","p":246},{"i":254,"t":"{ \"llm.api_base\": \"https://xxx.openai.azure.com/\", \"llm.api_key\": \"your_api_key\", \"llm.api_type\": \"azure\", \"llm.api_version\": \"the api version\", \"llm.model\": \"the model name, e.g., gpt-4\" # In Azure OpenAI, the model name is the deployment_name }","s":"Azure OpenAI","u":"/TaskWeaver/docs/quickstart","h":"#azure-openai","p":246},{"i":256,"t":"{ \"llm.api_key\": \"the api key\", \"llm.model\": \"the model name, e.g., gpt-4\" } 💡 Only the latest OpenAI API supports the json_object response format. If you are using an older version of OpenAI API, you need to set the \"llm.response_format\"=null in the taskweaver_config.json file. More configuration options can be found in the configuration documentation.","s":"OpenAI","u":"/TaskWeaver/docs/quickstart","h":"#openai","p":246},{"i":258,"t":"# assume you are in the TaskWeaver folder cloned from the repository python -m taskweaver -p ./project/ # -p is the path to the project directory This will start the TaskWeaver process and you can interact with it through the command line (CLI) interface. If everything goes well, you will see the following prompt: ========================================================= _____ _ _ __ |_ _|_ _ ___| | _ | | / /__ ____ __ _____ _____ | |/ _` / __| |/ /| | /| / / _ \\/ __ `/ | / / _ \\/ ___/ | | (_| \\__ \\ < | |/ |/ / __/ /_/ /| |/ / __/ / |_|\\__,_|___/_|\\_\\|__/|__/\\___/\\__,_/ |___/\\___/_/ ========================================================= TaskWeaver: I am TaskWeaver, an AI assistant. To get started, could you please enter your request? Human: ___ There are other ways to start TaskWeaver: A Chainlit UI interface: TaskWeaver provides an experimental web-based interface to interact with the system. A Library: You can also use TaskWeaver as a library in your Python code. The all-in-one Docker image: We provide a Docker image that contains all the dependencies to run TaskWeaver.","s":"Start TaskWeaver","u":"/TaskWeaver/docs/quickstart","h":"#start-taskweaver","p":246},{"i":260,"t":"This is the command line interface for TaskWeaver. You can interact with TaskWeaver through this interface. Follow the instruction in Quick Start to clone the repository and fill in the necessary configurations. Run the following command in terminal. # assume you are in the TaskWeaver folder python -m taskweaver -p ./project/ # -p is the path to the project directory This will start the TaskWeaver process, and you can interact with it through the command line interface. If everything goes well, you will see the following prompt: ========================================================= _____ _ _ __ |_ _|_ _ ___| | _ | | / /__ ____ __ _____ _____ | |/ _` / __| |/ /| | /| / / _ \\/ __ `/ | / / _ \\/ ___/ | | (_| \\__ \\ < | |/ |/ / __/ /_/ /| |/ / __/ / |_|\\__,_|___/_|\\_\\|__/|__/\\___/\\__,_/ |___/\\___/_/ ========================================================= TaskWeaver: I am TaskWeaver, an AI assistant. To get started, could you please enter your request? Human: ___ We have provided a set of commands to interact with TaskWeaver. You can type help to see the list of available commands. All commands start with a / character. For example, you can type /help to see the list of available commands. TaskWeaver ▶ I am TaskWeaver, an AI assistant. To get started, could you please enter your request? Human ▶ /help TaskWeaver Chat Console ----------------------- /load : load a file /info: print the information of the current session /reset: reset the session /clear: clear the console /exit: exit the chat console /help: print this help message /save: save the chat history of the current session for experience extraction The table of commands supported by TaskWeaver is as follows: Command Description /load Load a file by its absolute path, e.g., /load /home/taskweaver/sample.csv /info Print the session id and the active roles of the current session /reset Reset the current session and start a new session /clear Clear the console content /exit Exit the chat console /help Print the help message /save Save the chat history of the current session for experience extraction tip When TaskWeaver runs generated code, the CWD (current working directory) is set to the project/workspace/session_id/cwd directory. If you need to use relative paths in the generated code, the cwd directory should be the base path.","s":"Terminal","u":"/TaskWeaver/docs/usage/cmd","h":"","p":259},{"i":262,"t":"If you want to use TaskWeaver as a library, you can refer to the following code example: from taskweaver.app.app import TaskWeaverApp # This is the folder that contains the taskweaver_config.json file and not the repo root. Defaults to \"./project/\" app_dir = \"./project/\" app = TaskWeaverApp(app_dir=app_dir) session = app.get_session() user_query = \"hello, what can you do?\" response_round = session.send_message(user_query) print(response_round.to_dict()) Essentially, you need to create a TaskWeaverApp object and then get a session object from it. Each time, you can send a message to TaskWeaver by calling session.send_message(user_query). The return value of session.send_message(user_query) is a Round object, which contains the response from TaskWeaver. A round is a conversation round between the user and TaskWeaver, which contains a list of posts. An example of the Round object is shown below. To better understand the structure, you can refer to the Concepts section. { \"id\": \"round-20231201-043134-218a2681\", \"user_query\": \"hello, what can you do?\", \"state\": \"finished\", \"post_list\": [ { \"id\": \"post-20231201-043134-10eedcca\", \"message\": \"hello, what can you do?\", \"send_from\": \"User\", \"send_to\": \"Planner\", \"attachment_list\": [] }, { \"id\": \"post-20231201-043141-86a2aaff\", \"message\": \"I can help you with various tasks, such as counting rows in a data file, detecting anomalies in a dataset, searching for products on Klarna, summarizing research papers, and pulling data from a SQL database. Please provide more information about the task you want to accomplish, and I'll guide you through the process.\", \"send_from\": \"Planner\", \"send_to\": \"User\", \"attachment_list\": [ { \"id\": \"atta-20231201-043141-6bc4da86\", \"type\": \"init_plan\", \"content\": \"1. list the available functions\" }, { \"id\": \"atta-20231201-043141-6f29f6c9\", \"type\": \"plan\", \"content\": \"1. list the available functions\" }, { \"id\": \"atta-20231201-043141-76186c7a\", \"type\": \"current_plan_step\", \"content\": \"1. list the available functions\" } ] } ] } tip If you need to see the intermediate states of the conversation, you need to implement a SessionEventHandler class and pass it at calling session.send_message(user_query, event_handler=your_event_handler). Find more information about the event handler in this section.","s":"Library","u":"/TaskWeaver/docs/usage/library","h":"","p":261},{"i":264,"t":"In this document, we will show you how to run TaskWeaver using the All-in-One Docker Image. danger Please note that the All-in-One Docker Image is for development and testing purposes only. It is running in the local mode, which means that the execution of the code snippets is done in the same container. Malicious code can be executed in the container, so please be cautious when running the All-in-One Docker Image.","s":"All-in-One Docker Image","u":"/TaskWeaver/docs/usage/docker","h":"","p":263},{"i":266,"t":"You need to have Docker installed on your machine. For Windows and macOS users, you can use Docker Desktop. You can download it from Docker's official website. For Linux users, you can install following the instructions in the Docker's official website. Please find the installation guide for your specific Linux distribution.","s":"Prerequisites","u":"/TaskWeaver/docs/usage/docker","h":"#prerequisites","p":263},{"i":268,"t":"There are two versions of the TaskWeaver All-in-One Docker Image: taskweavercontainers/taskweaver-all-in-one:latest: This version includes the Planner and CodeInterpreter roles only. You can use this container for code generation and execution tasks. taskweavercontainers/taskweaver-all-in-one:latest-ws: This version includes an additional WebSearch role which can search the web for information. As it requires dependencies to the sentence-transformers library, it is larger. Open a terminal and run the following command to obtain the TaskWeaver image: docker pull taskweavercontainers/taskweaver-all-in-one:latest # if you want to use the version with the WebSearch role # docker pull taskweavercontainers/taskweaver-all-in-one:latest-ws Once the image is pulled, you can run the TaskWeaver container using the following command: docker run -it -e LLM_API_BASE= \\ -e LLM_API_KEY= \\ -e LLM_API_TYPE= \\ -e LLM_MODEL= \\ taskweavercontainers/taskweaver-all-in-one:latest If you want to run TaskWeaver in UI mode, you can use the following command: docker run -it -e LLM_API_BASE= \\ -e LLM_API_KEY= \\ -e LLM_API_TYPE= \\ -e LLM_MODEL= \\ -p 8000:8000 \\ --entrypoint /app/entrypoint_chainlit.sh \\ taskweavercontainers/taskweaver-all-in-one:latest Then you can access the TaskWeaver Web UI by visiting http://localhost:8000 in your web browser.","s":"Run TaskWeaver using the All-in-One Docker Image","u":"/TaskWeaver/docs/usage/docker","h":"#run-taskweaver-using-the-all-in-one-docker-image","p":263},{"i":270,"t":"You can mount your local project directory to the container. For example, you can use the following command: docker run -it -e LLM_API_BASE= \\ -e LLM_API_KEY= \\ -e LLM_API_TYPE= \\ -e LLM_MODEL= \\ # -e TASKWEAVER_UID=$(id -u) \\ # uncomment if your host OS is not Windows # -e TASKWEAVER_GID=$(id -g) \\ # uncomment if your host OS is not Windows --mount type=bind,source=,target=/app/TaskWeaver/project/ \\ taskweavercontainers/taskweaver-all-in-one:latest Then you can edit the taskweaver_config.json file in your local project directory to configure TaskWeaver. In addition, you also can customize the plugins and examples in your local project directory. The structure of the project directory can be referred to the taskweaver/project directory.","s":"How to run TaskWeaver on your own project directory","u":"/TaskWeaver/docs/usage/docker","h":"#how-to-run-taskweaver-on-your-own-project-directory","p":263},{"i":272,"t":"You can mount your local directory to the container. For example, you can use the following command: docker run -it -e LLM_API_BASE= \\ -e LLM_API_KEY= \\ -e LLM_API_TYPE= \\ -e LLM_MODEL= \\ # -e TASKWEAVER_UID=$(id -u) \\ # uncomment if your host OS is not Windows # -e TASKWEAVER_GID=$(id -g) \\ # uncomment if your host OS is not Windows --mount type=bind,source=,target=/app/TaskWeaver/local/ \\ taskweavercontainers/taskweaver-all-in-one:latest Then you can access your local files in the container by visiting the /app/TaskWeaver/local/ directory. You can load a file under the /app/TaskWeaver/local/ directory in the TaskWeaver CLI with the /load command. For example, you can load a file named example.csv by running the following command: TaskWeaver ▶ I am TaskWeaver, an AI assistant. To get started, could you please enter your request? Human ▶ /load /app/TaskWeaver/local/example.csv Human ▶ display the column names of the loaded file","s":"How to access your local files in the container","u":"/TaskWeaver/docs/usage/docker","h":"#how-to-access-your-local-files-in-the-container","p":263},{"i":274,"t":"warning Please note that this Web UI is a playground for development and testing purposes only. Be cautious when running the Web UI, as anyone can access it if the port is open to the public. If you want to deploy a Web UI for production, you need to address security concerns, such as authentication and authorization, making sure the server is secure. Follow the instruction in Quick Start to clone the repository and fill in the necessary configurations. Install the chainlit package by pip install -U \"chainlit<1.1.300\" if you don't have it in your environment. note Chainlit has a major update in version 1.1.300 that may cause compatibility issues. Please make sure you have the correct version installed. Start the service by running the following command. # assume you are in the TaskWeaver folder cd playground/UI/ # make sure you are in playground/UI/ folder chainlit run app.py Open the browser with http://localhost:8000 if it doesn't open automatically. info We now support uploading files using the Web UI. Below are some screenshots of the Web UI:","s":"Web UI","u":"/TaskWeaver/docs/usage/webui","h":"","p":273}],"index":{"version":"2.3.9","fields":["t"],"fieldVectors":[["t/41",[0,5.429,1,6.012,2,3.14,3,2.584,4,1.967,5,6.155,6,4.593,7,2.86,8,3.961,9,3.142,10,0.663,11,6.015,12,4.946,13,2.438,14,1.471,15,2.584,16,5.429,17,6.155,18,4.308,19,4.593,20,1.699,21,2.931,22,4.951,23,3.26,24,5.429,25,2.021]],["t/44",[26,2.094,27,0.882,28,1.973,29,2.657,30,1.115,31,2.147,32,1.122,33,4.695,34,5.916,35,2.381,36,2.26,37,3.553,38,3.849,39,1.681,40,2.202]],["t/47",[10,0.618,14,2.011,27,0.754,30,1.19,32,1.02,41,2.927,42,2.408,43,1.932,44,4.28,45,1.576,46,3.655,47,2.126,48,1.276,49,3.291,50,4.014,51,2.482,52,4.014,53,5.735,54,4.613,55,5.058,56,5.735,57,2.731,58,3.438,59,2.559,60,1.703,61,4.28,62,4.613,63,4.613,64,3.943,65,2.559,66,4.28,67,2.927,68,4.014,69,4.613,70,5.058]],["t/49",[3,2.135,10,0.714,14,1.938,21,3.513,26,1.587,28,1.849,29,2.627,30,1.102,31,1.628,44,3.795,45,1.538,46,2.595,47,1.51,51,2.869,64,4.063,65,2.269,71,4.485,72,2.073,73,2.421,74,4.09,75,2.014,76,2.505,77,1.958,78,4.485,79,3.124,80,4.687,81,3.559,82,4.485,83,3.795,84,4.485,85,4.485,86,4.485,87,3.795,88,1.958,89,3.559,90,4.485,91,2.486,92,4.641,93,5.084,94,4.485,95,4.485,96,4.485,97,2.595,98,2.595,99,4.485,100,4.485,101,2.014,102,1.905,103,5.084,104,5.084]],["t/51",[10,0.595,14,1.834,21,2.63,26,2.183,27,0.92,43,1.861,45,1.49,48,1.229,51,3.32,52,4.895,64,3.041,65,3.121,69,4.442,74,5.624,80,4.6,91,1.861,92,3.866,105,2.693,106,2.252,107,3.311,108,2.819,109,3.222,110,5.523,111,2.77,112,2.936,113,4.122,114,3.653,115,4.122,116,5.523,117,6.992,118,6.992,119,4.442,120,6.992,121,4.871,122,4.442,123,5.523,124,2.63,125,5.523]],["t/53",[4,1.81,10,0.614,14,1.887,25,2.773,27,0.34,32,1.016,36,0.87,45,1.314,48,0.575,49,1.482,50,1.808,60,1.954,75,1.024,76,2.003,77,1.566,83,3.034,88,1.566,89,1.808,101,1.991,106,2.049,107,3.715,108,1.319,111,1.024,112,1.085,124,1.23,126,4.042,127,3.425,128,4.449,129,2.584,130,2.279,131,1.928,132,1.928,133,1.657,134,1.623,135,3.518,136,2.078,137,1.808,138,1.482,139,1.387,140,3.034,141,1.566,142,2.767,143,4.309,144,2.584,145,1.928,146,2.078,147,1.549,148,2.078,149,1.808,150,1.19,151,1.709,152,1.928,153,1.928,154,2.279,155,2.279,156,2.602,157,0.322,158,1.368,159,2.078,160,2.078,161,3.27,162,2.078,163,1.808,164,1.928,165,2.075,166,2.279,167,2.584,168,2.078,169,5.804,170,5.026,171,2.584,172,2.279,173,1.808,174,1.085,175,2.393,176,2.554,177,1.808,178,2.279,179,1.808,180,2.584,181,2.584,182,6.884,183,1.928,184,4.065,185,5.698,186,1.319,187,4.065,188,5.698,189,1.273,190,1.623,191,1.19,192,1.808,193,4.065,194,1.368,195,3.75,196,5.466,197,4.59,198,3.581,199,2.437,200,4.042,201,4.042,202,5.025,203,1.423,204,0.942,205,1.549,206,2.279,207,2.584,208,1.482,209,2.584,210,2.279,211,1.808,212,1.19,213,5.025,214,2.584,215,1.808,216,2.584,217,2.584,218,3.412,219,1.069,220,2.584,221,5.698,222,1.069,223,2.584,224,2.584,225,1.623,226,1.709,227,2.003,228,1.269,229,1.808,230,2.584,231,1.709,232,2.279,233,2.584,234,1.19,235,0.995,236,2.584,237,1.153,238,2.279,239,2.584]],["t/55",[3,2.735,20,1.797,25,2.54,72,2.655,75,2.58,77,2.98,106,2.655,128,4.098,143,4.439,186,3.324,189,3.208,192,4.559,240,5.238,241,3.208,242,5.744,243,5.744,244,2.085,245,5.238,246,5.744]],["t/57",[4,1.555,14,1.413,27,0.777,45,1.058,61,4.412,106,2.41,134,3.714,135,4.138,136,4.755,139,2.014,140,4.412,156,2.482,157,0.736,191,2.724,197,4.374,204,2.156,208,4.186,212,2.724,247,3.91,248,2.173,249,4.412,250,5.911,251,5.214,252,4.755,253,5.911,254,5.911,255,5.868,256,5.911,257,4.412,258,5.911,259,5.214,260,5.445,261,4.755,262,4.412,263,4.412,264,2.342]],["t/59",[10,0.636,14,1.828,28,1.072,30,0.711,31,1.369,35,1.518,36,1.441,38,2.453,39,1.48,45,1.416,73,2.036,76,2.106,108,2.182,111,1.694,141,2.604,148,6.152,150,1.97,156,2.838,157,0.532,173,2.993,194,2.265,200,3.439,208,4.389,219,1.124,228,1.842,247,3.904,248,2.273,249,5.045,265,3.772,266,3.772,267,1.908,268,4.732,269,4.405,270,3.904,271,3.219,272,3.538,273,4.276,274,1.908,275,1.335,276,2.563,277,3.772,278,4.951,279,1.795,280,1.369,281,1.989,282,2.265,283,2.687,284,2.036,285,3.772,286,1.85,287,3.772,288,5.206,289,3.709,290,1.908,291,4.276,292,3.772,293,3.772,294,1.97,295,5.903,296,4.276,297,3.772,298,4.276,299,3.772,300,4.276,301,3.439,302,3.191,303,3.772,304,3.439,305,3.191,306,4.276,307,4.276,308,3.772,309,3.772,310,4.276,311,3.439]],["t/61",[3,2.789,77,3.015,127,2.789,189,3.272,197,3.981,208,4.491,212,3.06,247,5.177,248,2.058,312,5.858,313,3.657,314,3.727,315,3.811,316,5.858]],["t/63",[3,1.032,4,1.457,7,0.872,10,0.477,13,2.195,14,1.389,16,1.244,20,0.678,27,0.582,30,0.808,32,1.257,35,1.967,37,1.301,45,1.083,46,0.72,47,0.73,48,0.547,57,0.671,60,1.315,64,0.777,65,1.097,68,3.404,76,1.924,79,0.946,91,0.475,108,0.72,109,1.8,124,1.554,133,2.369,141,0.946,148,1.134,156,1.032,157,0.723,165,0.72,174,0.592,186,2.828,189,2.396,198,2.051,199,0.845,200,1.134,201,1.976,203,1.353,208,3.47,219,1.027,228,1.632,234,1.504,235,0.543,241,2.182,247,3.665,248,2.051,249,3.305,264,0.973,267,2.333,268,0.987,272,1.957,274,1.097,275,1.382,276,2.342,277,2.167,278,2.915,279,2.042,281,0.475,285,1.244,288,1.244,289,0.886,292,1.244,293,1.244,294,0.65,302,1.053,317,4.429,318,0.886,319,1.053,320,2.327,321,1.134,322,1.41,323,2.457,324,0.629,325,0.671,326,1.063,327,1.41,328,1.41,329,1.134,330,2.455,331,2.167,332,2.159,333,4,334,3.665,335,0.933,336,1.625,337,0.933,338,0.933,339,0.933,340,1.21,341,1.544,342,1.544,343,1.666,344,2.457,345,0.946,346,1.257,347,1.134,348,3.911,349,5.228,350,5.228,351,1.41,352,1.41,353,2.457,354,1.41,355,1.41,356,1.41,357,4.507,358,8.182,359,6.778,360,1.625,361,3.172,362,1.21,363,1.254,364,1.625,365,1.41,366,1.134,367,1.41,368,1.41,369,1.244,370,4.289,371,2.457,372,1.976,373,2.457,374,1.053,375,1.244,376,3.906,377,2.457,378,0.747,379,0.933,380,0.987,381,1.834,382,3.142,383,3.404,384,2.167,385,6.885,386,4.893,387,5.179,388,5.334,389,4.135,390,4.429,391,2.457,392,3.906,393,2.457,394,4.863,395,3.906,396,5.334,397,6.047,398,4.429,399,4.863,400,2.457,401,2.457,402,2.457,403,4.429,404,4.429,405,4.429,406,2.457,407,2.489,408,2.439,409,4.429,410,4.429,411,2.457,412,1.834,413,3.216,414,1.544,415,2.457,416,1.132,417,2.457,418,0.987,419,1.413,420,3.264,421,3.264,422,1.608]],["t/65",[4,1.45,8,2.056,10,0.418,13,1.538,14,1.533,21,1.848,27,0.725,30,0.645,40,1.811,45,1.149,48,0.863,60,2.394,67,1.981,69,3.122,91,1.308,97,1.981,101,1.538,102,1.454,107,2.327,111,2.185,139,2.037,141,1.495,157,0.686,165,3.275,191,1.788,194,2.056,197,2.327,212,2.541,215,2.717,228,2.003,235,2.691,260,4.116,264,1.538,274,1.732,279,1.63,284,1.848,290,2.462,308,5.659,343,1.981,345,2.691,362,1.912,379,2.567,383,2.717,388,3.423,419,1.679,423,2.327,424,4.729,425,2.567,426,3.423,427,2.896,428,3.122,429,2.896,430,3.023,431,3.423,432,3.122,433,4.788,434,3.423,435,2.717,436,3.165,437,2.227,438,3.971,439,3.881,440,4.865,441,2.567,442,3.881,443,2.896,444,5.62,445,3.881,446,3.423,447,3.881,448,3.881,449,3.881,450,3.881,451,3.881,452,5.659,453,3.881,454,3.122,455,3.881,456,3.306,457,3.881,458,2.439,459,3.881,460,3.881,461,3.881,462,3.881,463,6.162,464,3.122,465,2.327,466,2.717,467,2.056,468,3.423,469,3.881,470,3.423,471,1.981,472,1.848,473,3.122,474,5.515,475,3.881]],["t/67",[3,2.116,7,1.216,10,0.369,18,2.398,20,1.939,23,3.167,27,0.786,28,1.953,29,2.612,30,1.168,32,0.718,35,1.216,39,0.859,43,1.154,45,0.902,47,1.776,57,1.631,60,1.018,65,1.529,67,2.572,72,1.397,77,2.303,102,1.284,112,2.116,124,1.631,147,3.021,157,0.744,165,1.749,190,2.153,197,2.054,211,2.398,222,1.572,244,2.352,252,2.756,260,4.462,270,2.266,271,1.631,281,2.221,284,1.631,286,1.483,318,2.153,324,1.529,330,2.153,343,2.572,345,1.941,407,2.4,422,1.688,423,2.054,424,4.768,425,5.261,433,2.557,435,2.398,437,1.966,438,1.688,472,1.631,476,3.022,477,3.237,478,3.248,479,3.022,480,2.153,481,2.557,482,1.249,483,3.022,484,4.462,485,4.445,486,4.809,487,5.979,488,1.483,489,3.426,490,2.775,491,5.04,492,1.579,493,3.426,494,3.426,495,5.04,496,5.04,497,3.783,498,4.445,499,3.426,500,3.426,501,5.04,502,1.397,503,3.022,504,3.022,505,2.557,506,2.756,507,3.022,508,4.462,509,6.197,510,5.979,511,4.054,512,4.054,513,3.426,514,1.483,515,2.398,516,3.022,517,3.426,518,2.266,519,2.756,520,2.054,521,4.054,522,3.426,523,3.426,524,2.756,525,2.557,526,3.021,527,5.273]],["t/69",[7,1.911,10,0.404,23,1.987,27,0.828,28,1.578,30,1.298,32,1.038,40,1.232,58,2.249,59,1.674,72,1.529,97,1.915,189,1.848,222,0.986,244,2.202,252,3.017,343,1.915,345,1.445,424,3.227,425,4.164,426,3.309,427,2.799,437,4.35,484,5.963,485,6.888,497,3.089,498,3.309,508,4.699,509,7.448,511,6.098,512,6.641,514,1.623,515,2.626,527,6.068,528,2.481,529,3.751,530,2.799,531,3.751,532,3.309,533,2.152,534,3.227,535,6.879,536,3.947,537,3.751,538,3.751,539,3.751,540,6.296,541,4.748,542,3.751,543,5.436,544,3.751,545,5.383,546,6.296,547,4.748,548,3.751,549,3.751,550,3.751,551,3.768,552,3.751,553,3.751,554,3.751,555,3.751,556,3.751,557,3.751,558,3.017,559,3.751,560,3.751,561,3.751,562,3.751,563,4.33,564,3.751,565,3.751,566,3.751,567,3.751,568,3.751,569,3.751,570,2.626,571,3.751,572,3.751,573,3.751,574,3.751,575,3.751,576,3.751,577,3.751,578,3.751]],["t/71",[10,0.437,12,3.764,21,1.932,26,1.776,27,0.533,30,0.674,32,0.811,36,1.367,38,2.328,39,1.017,40,1.332,43,1.367,59,1.81,98,2.904,101,1.607,105,1.563,108,2.071,111,2.604,130,3.578,138,2.328,139,1.57,141,2.192,153,3.028,164,3.028,165,2.071,191,3.028,212,1.869,219,1.067,235,2.532,240,3.263,241,1.998,244,1.299,259,5.019,260,3.028,264,1.607,283,2.549,304,3.263,311,3.263,330,2.549,345,1.563,383,4.601,386,4.347,424,3.94,425,2.683,427,3.028,436,2.328,444,4.577,467,3.774,468,5.019,470,3.578,497,2.328,502,2.32,508,6.085,511,3.263,512,6.257,514,1.755,521,5.287,532,3.578,536,2.328,541,5.019,543,3.028,547,3.578,551,2.84,579,3.578,580,4.057,581,3.263,582,3.578,583,4.057,584,6.285,585,5.69,586,4.057,587,4.057,588,3.263,589,4.057,590,2.803,591,3.578,592,3.263,593,4.057,594,3.578,595,4.057,596,4.057,597,2.234,598,4.057,599,3.263,600,4.057,601,4.057,602,7.125,603,3.578,604,2.84,605,3.028,606,4.057,607,4.057,608,4.057,609,1.869,610,4.057,611,4.057,612,4.057,613,4.057,614,4.057,615,4.057]],["t/73",[10,0.695,20,1.996,26,2.015,27,0.642,32,0.92,40,1.603,43,1.645,45,1.378,80,3.87,91,2.175,111,1.934,121,5.694,137,3.417,157,0.958,204,1.78,235,1.88,237,2.179,244,2.315,280,1.563,320,2.05,324,2.179,329,3.926,379,3.229,383,3.417,424,4.929,425,5.09,463,7.06,483,6.788,486,3.926,533,2.801,584,4.305,605,3.643,616,2.688,617,5.694,618,4.305,619,4.881,620,6.455,621,3.87,622,3.444,623,4.881,624,3.067,625,4.881,626,4.881,627,4.881,628,3.926,629,4.881,630,3.926,631,6.455,632,3.926,633,4.881,634,4.881,635,3.067,636,4.881,637,3.229,638,3.229]],["t/75",[2,2.898,4,1.815,10,0.583,12,3.579,14,1.293,20,1.494,30,0.899,31,1.732,36,1.823,41,3.523,45,1.481,60,2.257,75,2.144,77,2.085,97,2.762,101,2.144,102,2.028,105,2.085,108,2.762,132,4.039,156,2.272,157,0.674,164,4.039,222,1.423,244,2.21,261,4.353,264,2.144,301,4.353,362,2.666,429,4.039,514,2.987,597,2.98,639,4.773,640,4.337,641,3.579,642,2.866,643,3.788,644,4.353,645,2.987,646,4.039,647,4.039,648,4.039,649,5.412,650,5.552,651,5.552,652,4.039,653,4.353,654,5.412,655,4.353,656,4.353]],["t/77",[2,3.63,4,1.969,10,0.565,14,1.253,35,1.861,39,1.314,41,2.676,45,1.501,60,2.432,61,5.048,62,4.217,77,2.019,97,2.676,102,1.964,106,2.758,109,2.416,132,3.913,133,2.138,139,1.447,157,0.932,204,1.912,222,2.08,237,2.34,255,4.217,261,4.217,271,2.496,290,2.34,472,2.496,514,2.269,526,3.143,609,2.416,639,4.624,640,4.25,645,3.423,657,2.138,658,3.913,659,5.243,660,4.217,661,5.243,662,6.764,663,3.294,664,4.624,665,4.217]],["t/79",[2,3.279,7,1.61,10,0.489,20,1.252,27,0.596,28,1.137,30,1.021,31,1.967,32,0.993,45,1.398,47,2.445,52,3.175,60,2.07,65,2.743,75,2.762,77,1.747,102,1.699,126,3.648,138,2.602,157,0.868,175,2.16,179,3.175,183,3.385,219,1.193,222,2.203,237,2.024,244,1.967,314,2.926,318,2.85,319,3.385,325,2.16,345,1.747,422,3.028,423,2.719,432,4.943,477,2.09,514,3.563,524,3.648,526,4.178,536,4.619,645,3.016,647,4.587,663,3.862,666,6.146,667,6.146,668,4.302,669,3.175,670,3.385,671,3.385,672,4.001,673,4.001,674,3.385,675,4.001,676,4.587,677,4.535,678,4.535]],["t/81",[4,1.189,7,1.605,10,0.66,20,1.92,22,3.636,23,2.394,26,1.914,27,0.594,30,0.751,32,1.063,41,2.307,42,1.898,43,1.523,45,1.098,47,2.216,48,1.006,59,2.017,60,1.821,65,2.017,73,2.152,97,2.307,101,1.791,132,3.374,138,2.594,157,0.563,174,2.575,177,3.164,198,2.84,237,3.106,248,1.612,279,2.575,318,2.84,319,4.576,329,3.636,345,1.741,363,3.13,477,2.825,478,3.676,514,3.712,536,4.967,616,3.376,670,3.374,672,3.987,673,5.408,679,3.853,680,4.52,681,5.408,682,4.52,683,5.408,684,3.987,685,5.408,686,4.932,687,4.52,688,4.52,689,4.52,690,2.594,691,4.52,692,3.987,693,3.987,694,3.636,695,4.52,696,4.52,697,4.52,698,4.52,699,3.374]],["t/83",[2,3.26,4,2.041,7,1.772,9,2.547,10,0.706,20,2.142,26,1.558,30,1.29,39,1.251,41,2.547,45,0.893,47,1.945,60,1.482,112,2.095,141,1.922,191,2.299,199,2.991,222,2.217,262,4.888,275,1.558,294,2.299,325,2.376,408,2.748,422,3.227,443,5.457,477,2.299,478,3.602,514,3.488,520,3.926,526,3.926,536,4.195,640,3.136,645,2.834,650,5.268,651,5.268,658,3.724,663,4.116,681,4.401,683,4.401,700,4.99,701,4.99,702,4.99,703,4.99,704,4.401,705,3.493,706,4.99,707,3.3,708,4.99]],["t/85",[3,1.327,6,3.542,7,1.122,10,0.732,14,0.755,15,1.327,18,4.993,20,0.872,21,2.714,23,1.674,26,1.482,27,0.75,28,0.792,32,0.903,41,2.423,42,1.993,43,1.065,45,0.85,46,1.613,47,1.41,48,0.703,57,1.505,63,2.542,74,5.462,77,1.217,92,4.435,138,2.723,142,1.74,145,2.359,147,1.895,165,1.613,176,1.986,222,2.001,229,2.212,231,3.139,237,1.41,244,1.825,248,0.831,280,2.028,289,2.982,301,2.542,315,2.723,324,1.41,345,1.217,396,2.788,423,1.895,427,2.359,476,2.788,497,1.813,514,3.53,520,4.071,543,2.359,579,2.788,590,1.557,609,1.456,616,1.74,617,2.788,640,1.986,642,1.674,644,2.542,648,2.359,663,3.582,674,2.359,704,2.788,709,3.818,710,4.746,711,5.7,712,8.249,713,1.74,714,7.133,715,2.788,716,4.746,717,2.359,718,3.16,719,5.027,720,2.514,721,4.746,722,7.398,723,6.336,724,2.09,725,3.16,726,3.16,727,2.788,728,2.542,729,2.542,730,3.16,731,5.7,732,2.359,733,3.16,734,1.986,735,7.611,736,4.746,737,3.16,738,3.16,739,3.16,740,4.746,741,5.7,742,2.212,743,4.746,744,6.336,745,4.746,746,3.322,747,2.359,748,3.16,749,3.16,750,4.746,751,4.746,752,3.16,753,4.186,754,2.359,755,2.212,756,2.788,757,2.542,758,2.788,759,2.359,760,2.788,761,3.16,762,2.212,763,3.16,764,1.986,765,3.16,766,2.788,767,2.359]],["t/87",[9,2.729,32,0.976,45,1.353,59,3.677,60,1.588,88,3.07,133,2.18,157,0.665,205,3.205,222,1.801,237,2.386,264,3.158,346,2.06,374,5.112,378,2.832,471,2.729,502,2.793,622,3.262,637,3.537,768,5.297,769,3.205,770,3.373,771,3.991,772,4.301,773,5.347,774,5.641,775,5.51,776,7.558,777,4.003,778,3.991,779,3.496,780,6.85,781,3.36,782,5.347,783,5.347]],["t/89",[4,0.845,10,0.824,14,0.768,27,0.423,28,1.443,29,2.281,30,0.534,32,1.224,37,4.384,46,2.453,47,0.954,48,1.069,49,1.844,51,1.39,72,1.31,73,1.53,75,2.843,91,1.083,127,2.018,150,1.48,151,2.125,157,0.952,173,2.249,174,2.018,194,1.702,204,1.752,218,1.769,222,0.845,235,2.461,237,1.434,244,2.189,264,1.273,276,1.926,280,2.297,313,2.646,325,2.741,346,1.238,378,3.801,418,2.249,436,1.844,438,1.583,456,1.926,516,2.834,534,1.926,581,2.585,604,4.472,609,1.48,622,3.042,624,4.51,635,3.617,638,3.179,645,2.491,679,3.02,727,2.834,734,4.015,777,2.545,784,5.356,785,2.585,786,3.213,787,2.834,788,3.213,789,2.398,790,3.364,791,5.078,792,4.806,793,6.389,794,3.213,795,3.213,796,5.574,797,4.788,798,5.757,799,4.472,800,2.249,801,2.585,802,4.806,803,2.585,804,3.213,805,5.078,806,4.296,807,2.453,808,1.706,809,2.585,810,2.249,811,2.834,812,5.501,813,3.865,814,2.834,815,3.213,816,2.834,817,2.834,818,1.844,819,3.213,820,3.213,821,3.213,822,3.213]],["t/91",[3,3.15,4,1.843,10,0.844,13,1.815,19,3.42,29,1.815,32,1.176,37,2.427,48,1.669,72,1.868,79,2.384,98,2.339,111,2.452,119,3.685,127,3.391,150,2.111,157,0.934,192,3.207,212,2.851,222,1.205,228,1.43,248,2.061,264,1.815,275,1.43,290,2.045,313,2.523,326,1.983,362,2.257,422,2.257,430,3.032,502,1.868,515,3.207,622,2.182,637,3.03,684,4.041,769,2.747,771,3.42,777,3.711,778,3.42,779,2.339,796,3.207,808,3.14,823,4.582,824,4.041,825,4.618,826,4.582,827,4.582,828,7.007,829,4.582,830,4.041,831,4.041,832,3.685,833,4.582,834,4.041,835,2.879,836,4.582,837,3.685]],["t/93",[4,1.729,39,1.648,40,2.159,91,2.216,124,3.131,157,0.968,226,4.35,248,2.253,263,4.908,422,3.24,621,3.942,768,4.132,808,2.335,825,4.908,838,6.576,839,6.576,840,4.908]],["t/95",[2,1.745,4,1.093,10,0.448,14,1.591,23,2.202,27,0.547,28,1.451,29,3.106,30,1.337,31,1.331,32,1.271,37,3.527,43,1.4,45,1.356,47,1.978,48,1.482,60,1.978,101,2.293,133,1.695,150,3.779,157,0.517,163,2.91,175,1.979,222,1.093,228,1.298,248,1.751,272,2.492,275,1.807,279,1.745,280,1.331,294,2.667,325,3.733,326,3.75,343,3.399,465,3.47,492,1.915,502,2.936,534,3.47,604,2.91,645,2.505,656,4.656,784,4.32,806,3.102,834,3.667,841,4.97,842,2.749,843,2.492,844,3.667,845,3.667,846,5.106,847,5.793]],["t/97",[4,0.981,6,4.684,10,0.783,13,1.478,14,0.891,15,1.566,20,1.03,25,1.225,30,0.62,32,0.894,45,0.668,48,0.83,57,2.988,60,1.108,79,2.065,101,2.718,106,2.186,107,2.236,111,2.718,127,3.274,131,4.001,133,1.521,142,2.952,145,2.784,150,1.719,157,0.464,170,6.052,190,3.369,204,1.36,205,2.236,222,0.981,228,1.164,237,1.665,284,2.988,286,1.614,290,2.393,346,3.363,365,3.937,416,1.719,430,3.612,437,3.601,456,2.236,471,4.377,502,2.559,582,3.29,588,3,592,3,622,1.776,637,2.467,648,4.001,768,4.567,769,2.236,770,2.801,771,2.784,777,3.324,778,2.784,779,2.737,790,2.611,799,2.611,808,1.324,824,5.536,837,4.312,848,3,849,3.73,850,3.214,851,3.29,852,3.73,853,4.803,854,4.393,855,5.361,856,3.73,857,2.611,858,3.29,859,3.73,860,3.73,861,3.29,862,3.73,863,3.73]],["t/99",[4,1.98,25,1.742,29,2.102,32,0.756,79,2.625,127,3.731,157,0.848,198,3.333,222,1.395,280,2.41,290,2.368,464,4.267,467,3.61,471,3.843,481,3.959,502,2.163,622,2.526,637,3.509,769,3.18,771,3.959,777,3.988,778,3.959,779,3.479,796,3.713,808,1.883,825,3.959,848,4.267,864,5.271,865,5.271,866,5.376,867,5.305,868,5.305,869,5.271,870,4.731]],["t/101",[4,1.837,8,1.423,10,0.753,21,1.279,25,0.882,27,0.353,28,0.673,30,1.049,32,1.197,37,4.562,45,0.481,46,1.371,48,0.932,49,1.542,59,1.199,75,2.042,88,1.615,91,1.412,105,1.615,127,1.76,150,1.931,157,0.641,163,1.881,174,2.164,191,1.931,194,1.423,212,1.238,218,4.182,219,1.102,235,1.985,248,1.355,267,1.199,270,2.772,271,1.279,276,1.611,280,1.864,282,1.423,284,2.454,286,1.163,314,1.279,346,2.861,347,2.161,362,2.539,363,1.371,378,3.084,408,1.48,422,1.324,424,3.49,430,1.163,441,2.772,443,2.005,456,1.611,472,2.454,518,1.777,520,1.611,604,2.934,616,1.48,621,1.611,622,3.185,624,4.203,635,4.203,657,1.095,720,2.73,734,2.634,762,1.881,770,1.199,777,1.423,779,2.972,784,2.005,789,2.005,790,3.607,796,5.199,797,5.416,805,3.697,806,3.128,807,1.371,808,1.83,811,2.37,812,4.145,813,2.161,817,2.37,818,1.542,841,4.345,869,1.881,871,2.687,872,3.34,873,2.687,874,3.371,875,4.192,876,4.145,877,4.546,878,2.37,879,2.687,880,4.192,881,2.687,882,2.687,883,2.37,884,4.192,885,5.154,886,2.687,887,2.687,888,5.774,889,5.078,890,3.128,891,2.37,892,2.161,893,2.37,894,2.687,895,2.687,896,2.687,897,2.687,898,2.687,899,4.192,900,5.154,901,2.687,902,4.345,903,2.687,904,2.161,905,2.687,906,2.161,907,2.687,908,2.687,909,2.687]],["t/103",[28,1.798,39,1.798,40,2.355,51,3.104]],["t/105",[10,0.811,18,3.713,25,2.238,26,1.656,36,2.296,39,1.708,40,2.238,43,1.787,48,1.768,73,2.526,77,3.061,98,2.708,128,3.61,139,2.268,143,3.044,150,2.444,168,4.267,176,3.333,191,2.444,228,2.626,244,1.698,245,4.267,262,3.959,280,1.698,281,2.296,284,2.526,313,2.921,314,3.585,315,3.91,326,2.949,808,1.883,910,4.679,911,4.679,912,5.305,913,4.679,914,3.18,915,6.815,916,3.959,917,2.81,918,4.679,919,4.679,920,3.959]],["t/107",[1,2.115,2,2.238,4,1.575,6,3.26,7,1.006,8,1.501,9,1.447,11,2.28,12,1.874,13,2.112,14,1.546,15,1.19,19,2.115,21,2.538,25,1.434,27,0.575,32,1.295,33,1.984,34,2.5,35,1.893,36,1.472,37,1.501,39,1.095,40,1.434,45,1.425,48,0.63,51,2.307,60,2.185,64,1.561,73,1.349,77,2.053,83,3.978,127,1.834,133,2.442,156,2.238,157,0.746,189,1.396,196,2.5,197,3.591,203,1.561,228,2.134,234,1.306,241,3.368,272,3.196,275,0.885,279,1.19,284,1.349,290,1.265,314,2.08,320,3.293,332,3.526,333,5.098,334,4.865,335,1.874,336,2.889,337,1.874,338,1.874,339,1.874,340,1.396,341,2.745,342,1.781,346,1.683,378,1.501,380,1.984,381,3.978,419,1.226,430,2.8,436,1.626,437,1.626,599,3.514,808,1.006,848,2.28,913,2.5,921,2.5,922,2.5,923,3.514,924,1.874,925,4.288,926,2.834,927,2.5,928,2.834,929,3.731,930,2.834,931,5.331,932,2.834,933,5.331,934,6.836,935,5.331,936,2.834,937,5.331,938,5.331,939,5.331,940,5.331,941,5.331,942,5.331,943,5.331,944,5.331,945,5.331,946,5.331]],["t/109",[10,0.556,14,1.234,27,0.679,79,1.988,88,2.579,102,2.785,157,0.642,175,3.188,186,2.635,194,2.734,208,2.962,219,1.761,241,2.543,247,3.414,248,1.358,278,5.266,281,2.746,482,2.442,488,2.898,764,3.244,770,2.989,857,3.614,947,5.386,948,4.998,949,5.386,950,5.907,951,4.152,952,4.152,953,5.162,954,4.553,955,4.553,956,7.865,957,5.162,958,5.907,959,5.907,960,6.696,961,6.696,962,4.553,963,5.162,964,6.696,965,5.162,966,5.162,967,5.162,968,3.853]],["t/111",[4,1.616,10,0.662,14,1.666,23,4.136,26,1.416,28,1.747,39,1.54,43,2.07,65,2.024,72,2.842,77,2.685,101,1.797,102,3.085,106,1.849,112,2.58,128,2.402,158,2.402,203,2.498,244,2.231,281,2.517,290,2.024,313,3.838,314,3.833,315,3.999,346,2.367,416,2.09,419,1.963,429,4.587,430,3.484,472,2.926,482,2.241,488,2.659,570,3.175,643,3.175,754,3.385,808,2.772,969,4.535,970,4.535,971,4.535,972,4.535,973,4.535,974,5.421,975,4.535,976,3.648,977,4.535,978,4.535,979,6.146,980,6.97,981,4.535,982,5.421,983,4.535,984,4.535,985,4.535,986,4.001,987,4.535,988,4.535,989,4.535]],["t/113",[3,0.951,4,1.633,10,0.57,13,2.096,19,2.732,20,1.271,21,1.079,23,1.939,24,1.998,26,0.707,27,0.764,28,1.761,29,0.898,30,1.131,31,1.172,32,1.192,33,1.586,43,0.763,45,0.406,48,1.382,49,2.101,51,0.98,80,3.48,91,2.092,98,1.869,105,2.517,106,1.493,111,1.45,112,0.951,113,1.691,127,2.221,133,0.924,153,2.732,155,1.998,157,0.658,158,1.2,164,1.691,174,2.608,175,1.079,177,1.586,183,1.691,204,1.335,219,1.633,222,0.596,226,4.108,227,1.116,228,1.438,234,1.044,237,1.011,241,1.116,248,0.963,264,1.45,267,1.011,271,1.743,280,1.693,284,1.079,286,1.584,326,1.993,346,2.037,361,1.116,362,1.116,363,1.869,365,1.3,366,2.945,378,1.2,383,1.586,416,1.687,424,3.48,430,3.802,438,1.116,441,1.499,452,5.121,454,1.822,456,1.358,466,1.586,467,2.802,471,2.7,472,1.079,478,1.116,492,1.044,521,1.822,528,1.499,590,1.116,621,2.195,622,3.639,624,1.424,628,1.822,630,2.945,635,3.324,638,1.499,734,2.3,769,1.358,770,1.634,781,1.424,789,2.732,790,2.563,807,2.351,808,1.3,818,1.3,835,2.894,840,1.691,843,2.195,851,1.998,874,4.255,876,1.822,877,4.665,878,3.229,888,3.948,889,1.822,892,1.822,893,1.998,902,2.732,919,4.665,925,1.822,976,1.822,990,2.266,991,4.606,992,3.661,993,4.606,994,2.266,995,2.945,996,2.266,997,7.519,998,3.661,999,3.661,1000,2.266,1001,2.266,1002,1.3,1003,1.822,1004,2.266,1005,2.266,1006,2.266,1007,2.266,1008,2.266,1009,3.661,1010,2.266,1011,1.822,1012,2.266,1013,2.266,1014,1.998,1015,2.266,1016,2.266,1017,2.266,1018,2.266,1019,2.266,1020,2.266,1021,1.998,1022,2.266,1023,2.266,1024,2.266,1025,2.266,1026,2.266,1027,1.822,1028,2.266,1029,2.266,1030,2.266,1031,2.266,1032,2.266,1033,2.266,1034,3.661,1035,2.266,1036,2.266,1037,1.998,1038,2.266,1039,3.661,1040,2.266,1041,4.606,1042,2.266,1043,0.898,1044,1.822,1045,2.266,1046,2.266,1047,2.266]],["t/115",[2,1.146,3,1.782,10,0.725,12,1.806,14,1.244,20,1.171,21,2.021,25,2.089,27,0.359,28,1.688,29,1.082,30,1.119,33,1.911,39,0.684,45,1.301,48,1.158,51,1.181,58,1.637,64,1.504,71,2.408,72,1.731,75,1.682,76,1.345,77,1.052,78,2.408,79,2.262,80,2.544,81,1.911,82,2.408,83,2.038,84,2.408,85,2.408,86,2.408,87,2.038,88,2.006,89,1.911,90,2.408,91,0.92,92,1.911,94,2.408,95,2.408,96,2.408,97,1.394,98,1.394,99,2.408,100,2.408,102,1.59,127,2.466,128,3.111,143,2.435,150,2.706,157,0.34,158,1.446,168,4.188,175,2.021,176,2.667,178,2.408,186,1.394,189,2.091,197,3.52,208,2.435,212,1.258,218,1.504,219,1.369,222,0.718,225,1.716,228,1.985,242,2.408,243,2.408,244,1.88,245,3.414,246,3.744,247,2.807,248,1.369,264,1.082,265,2.408,272,3.121,278,2.544,279,1.146,281,2.143,282,1.446,290,1.219,312,2.408,313,3.708,314,2.796,315,4.169,316,2.408,325,1.3,326,2.541,343,2.658,348,2.196,378,1.446,382,2.196,389,2.038,407,1.3,416,1.956,422,1.345,430,1.181,432,2.196,473,2.196,482,2.563,488,3.229,490,1.504,497,1.567,533,2.435,599,2.196,609,1.258,645,1.837,647,2.038,657,1.731,686,2.196,694,2.196,705,2.971,734,1.716,754,2.038,770,1.894,801,2.196,808,0.969,810,1.911,850,1.637,910,2.408,911,2.408,916,2.038,917,2.248,921,2.408,922,2.408,923,2.196,925,2.196,947,2.196,950,2.408,952,2.196,958,2.408,959,2.408,962,2.408,1043,2.52,1048,2.73,1049,5.416,1050,2.73,1051,2.73,1052,2.038,1053,2.166,1054,2.435,1055,2.196,1056,1.394,1057,1.567,1058,1.806,1059,2.408,1060,2.73,1061,2.73,1062,2.038,1063,3.645,1064,3.444,1065,2.73,1066,2.73,1067,2.73,1068,2.73,1069,2.73,1070,2.73,1071,2.73,1072,2.73,1073,2.73,1074,2.196,1075,2.73,1076,2.73,1077,1.911,1078,2.408,1079,2.408,1080,2.73,1081,2.408,1082,2.73,1083,2.73]],["t/118",[189,3.572,1084,5.831]],["t/120",[361,3.572,1084,5.831]],["t/122",[186,3.7,1084,5.831]],["t/124",[3,1.873,4,2.042,10,0.655,13,2.738,14,1.452,15,2.551,32,0.866,39,1.523,45,1.088,48,1.903,58,2.674,72,1.819,88,2.858,101,1.767,106,2.477,127,2.902,141,2.858,147,2.674,186,2.277,212,3.184,222,1.598,227,2.197,228,2.423,229,3.122,248,1.173,274,2.712,276,2.674,280,1.428,290,1.991,346,2.858,361,2.197,365,3.486,416,2.055,430,3.359,436,2.559,438,2.197,446,3.934,467,3.218,471,3.101,519,3.588,528,2.95,618,3.934,642,2.362,646,3.329,720,3.218,768,2.803,770,1.991,774,3.329,808,2.157,818,2.559,825,3.329,853,4.253,854,4.253,864,3.122,865,3.122,866,2.803,1037,3.934,1043,1.767,1085,2.95,1086,3.122,1087,3.934,1088,6.076,1089,4.46,1090,2.277,1091,3.588]],["t/126",[3,1.158,4,2.08,13,3.031,27,0.563,30,1.361,32,0.841,35,1.861,36,0.929,48,1.314,59,3.018,60,1.271,68,4.474,72,1.125,79,1.648,88,2.605,101,1.093,108,2.184,109,2.415,111,1.093,114,1.824,115,3.911,127,1.158,133,2.876,139,0.761,141,1.063,143,1.583,147,1.654,186,3.601,189,2.909,195,4.407,198,2.688,211,5.355,222,1.125,228,2.432,274,3.341,276,1.654,279,1.158,280,0.883,286,1.851,290,1.909,294,3.863,346,2.808,360,3.466,361,3.475,362,2.108,363,3.262,364,3.466,365,3.388,369,2.433,407,1.313,412,6.05,416,1.271,418,1.931,436,3.388,437,1.583,466,1.931,467,2.266,471,3.451,502,3.495,588,2.219,590,1.359,641,1.824,642,1.461,720,1.461,742,2.995,768,4.581,808,0.979,853,4.133,854,4.133,864,1.931,865,1.931,866,1.733,1043,1.093,1092,2.995,1093,3.774,1094,2.059,1095,7.486,1096,3.774,1097,3.441,1098,2.433]],["t/128",[3,1.359,4,0.851,13,3.037,14,1.832,30,1.274,32,0.914,35,1.149,44,3.606,45,1.484,48,1.526,54,2.603,55,2.855,58,4.314,59,3.328,60,2.327,64,4.106,67,3.502,72,1.32,79,1.247,80,1.94,88,2.772,105,1.247,106,1.32,108,2.466,111,1.914,114,2.141,115,3.606,127,1.359,133,1.97,173,2.265,198,2.034,205,1.94,222,0.851,228,2.141,248,0.851,257,4.315,313,2.661,320,2.029,324,1.444,346,2.872,365,2.772,374,3.606,378,3.396,379,4.538,380,4.047,436,2.772,438,2.38,471,2.951,597,3.184,641,2.141,642,1.714,648,2.415,720,1.714,768,4.923,774,2.415,775,2.603,807,2.951,808,1.149,837,2.603,850,1.94,853,3.382,854,3.382,864,2.265,865,2.265,866,2.034,869,2.265,890,2.415,1002,1.857,1003,2.603,1043,1.282,1085,2.141,1086,2.265,1092,2.265,1093,2.855,1097,2.603,1098,2.855,1099,7.665,1100,3.236,1101,3.236,1102,4.832,1103,3.236,1104,3.236,1105,3.236,1106,3.236,1107,3.236,1108,2.855,1109,5.1,1110,4.65,1111,3.236,1112,5.781,1113,3.236,1114,3.236,1115,3.236,1116,3.236,1117,3.236,1118,3.236]],["t/131",[2,2.616,4,1.981,10,0.812,13,2.985,14,1.879,15,1.944,20,1.72,27,0.819,45,0.829,57,3.354,60,2.092,65,2.066,77,1.783,131,3.455,133,2.541,139,1.72,143,2.656,157,0.576,159,5.012,162,3.723,169,5.496,175,2.204,191,2.871,228,2.528,231,3.062,235,1.783,238,4.083,244,1.482,271,2.967,274,3.51,281,2.099,284,3.587,345,1.783,366,5.012,407,2.204,437,2.656,458,2.909,467,3.731,490,3.431,492,2.133,497,2.656,518,3.062,590,3.47,705,3.24,732,3.455,742,4.93,872,2.656,917,2.452,929,3.24,1119,3.723,1120,4.629,1121,2.363,1122,4.629,1123,4.629,1124,4.629,1125,3.455,1126,6.231,1127,3.455,1128,4.629]],["t/133",[2,3.491,30,1,31,1.926,39,1.508,45,1.077,47,1.787,60,1.787,67,3.071,75,2.384,77,2.318,157,0.918,204,2.194,222,2.098,244,1.926,305,4.491,362,2.964,492,2.772,514,2.604,526,3.607,609,2.772,640,4.635,644,4.84,645,3.192,647,4.491,663,3.781,664,5.307,719,5.307,929,4.212,1129,4.491,1130,6.017,1131,5.307,1132,6.017]],["t/135",[10,0.645,14,1.758,15,2.515,27,0.788,39,1.502,67,3.058,111,2.373,119,4.818,134,3.764,139,2.197,142,3.299,199,3.591,222,1.575,225,3.764,226,3.962,227,2.951,274,2.674,281,2.018,346,2.307,360,3.962,364,3.962,365,3.437,407,2.852,466,4.193,490,4.051,492,2.76,590,2.951,594,5.284,729,4.818,732,4.471,870,3.764,914,3.591,1127,4.471,1131,5.284,1133,3.962,1134,4.818,1135,5.99]],["t/137",[4,1.462,13,1.556,14,0.938,20,1.084,26,1.226,27,0.849,35,1.394,39,0.984,43,1.323,46,2.004,60,1.166,65,3.134,72,1.601,75,1.556,79,2.487,91,1.874,98,2.838,111,2.203,112,2.949,114,3.678,139,1.084,142,3.556,151,2.597,156,1.649,157,0.923,174,1.649,191,2.562,199,2.354,203,3.062,204,1.432,212,1.809,215,2.748,228,1.226,235,1.512,248,2.218,251,3.463,264,2.203,279,1.649,283,2.467,314,1.869,315,2.253,324,1.752,345,2.855,357,5.189,359,4.905,370,3.463,386,3.678,413,2.597,414,3.494,422,2.74,438,2.74,441,2.597,467,2.08,492,1.809,502,1.601,518,2.597,597,3.062,720,2.08,724,2.597,756,3.463,770,2.882,779,3.585,800,4.52,857,2.748,1002,2.253,1136,2.467,1137,4.271,1138,3.893,1139,4.15,1140,4.15,1141,4.905,1142,5.561,1143,4.905,1144,5.561,1145,5.561,1146,2.93,1147,3.463,1148,4.905,1149,3.926,1150,4.15,1151,3.158,1152,3.158,1153,2.597,1154,3.158,1155,3.158,1156,2.748,1157,4.905,1158,3.463,1159,3.463,1160,3.463,1161,3.926]],["t/139",[7,1.727,8,2.576,9,3.287,10,0.778,15,2.042,27,0.64,30,1.329,35,1.727,45,0.871,58,2.916,65,3.222,67,3.923,75,1.927,106,1.983,108,2.482,112,2.042,114,3.217,122,5.807,134,3.056,157,0.801,159,3.912,227,3.173,231,3.217,248,2.021,279,2.042,294,3.326,326,2.105,343,2.482,345,2.781,346,2.481,408,3.546,423,2.916,435,3.404,492,2.967,590,2.396,603,4.29,671,3.63,707,3.217,713,3.546,732,3.63,807,2.482,840,3.63,870,4.047,1090,2.482,1143,4.29,1162,3.912,1163,3.217,1164,4.864,1165,3.912,1166,4.29,1167,5.266,1168,4.864,1169,4.508,1170,3.912,1171,3.217,1172,6.44,1173,4.864]],["t/141",[7,1.69,8,2.521,9,3.24,10,0.684,14,1.138,27,0.626,30,0.791,35,1.69,45,0.852,51,2.06,57,2.267,60,1.886,65,2.833,67,4.376,91,2.808,105,1.834,114,3.149,122,3.829,133,1.941,134,4.488,206,4.199,219,1.878,234,2.193,235,1.834,248,2.277,270,4.199,279,1.999,294,3.657,320,1.999,343,3.24,345,2.445,346,2.751,408,3.934,478,2.345,492,3.291,590,3.128,658,3.553,671,3.553,707,3.149,870,4.488,1002,2.731,1129,3.553,1134,5.107,1169,4.444,1170,3.829,1171,3.149,1174,4.76,1175,4.76,1176,2.854,1177,4.76]],["t/143",[20,1.897,26,1.379,27,0.794,28,1.939,30,1.328,32,1.103,47,1.792,48,1.343,51,1.911,58,2.647,66,3.296,67,2.254,75,2.724,88,2.325,91,2.607,98,2.254,101,1.75,105,1.701,137,3.091,142,2.432,162,3.552,195,3.296,235,1.701,244,2.201,248,2.1,257,3.296,280,1.414,283,2.775,320,2.887,330,2.775,345,1.701,408,2.432,423,2.647,441,2.921,465,2.647,505,3.296,563,5.53,590,2.176,609,2.781,621,4.121,645,2.612,653,3.552,734,5.019,785,5.944,787,5.323,818,2.534,832,3.552,1090,3.08,1138,3.091,1162,4.854,1165,3.552,1167,4.643,1178,4.416,1179,4.416,1180,4.416,1181,6.035,1182,4.416,1183,4.416,1184,4.416,1185,4.416,1186,4.416,1187,4.416,1188,4.416,1189,6.035,1190,4.416]],["t/145",[10,0.799,45,1.328,47,2.477,48,1.351,60,2.203,67,3.099,134,3.815,157,0.997,172,6.542,345,2.339,346,2.339,492,3.417,597,3.343,609,2.797,650,6.441,651,5.966,762,4.25,888,5.977,1191,8.008,1192,6.071,1193,6.071]],["t/147",[2,2.775,36,2.226,39,1.656,40,2.17,47,1.963,67,3.373,138,3.792,141,2.546,157,0.822,222,2.052,244,2.115,346,2.546,492,3.045,526,3.962,914,3.962,1129,4.932,1171,4.371,1194,6.609,1195,6.609]],["t/150",[4,2.073,7,1.655,14,1.496,25,1.531,26,1.954,39,1.168,41,3.856,42,1.957,45,1.121,48,1.037,108,3.195,109,2.148,111,1.847,128,2.469,131,3.479,135,5.289,140,4.672,142,2.567,147,2.794,152,4.672,156,2.968,157,0.88,163,3.263,166,4.111,190,2.929,191,2.148,199,3.753,204,1.7,231,3.083,235,1.795,249,3.479,274,2.794,286,2.017,289,4.441,302,3.479,345,2.411,418,3.263,419,2.017,437,2.675,480,3.934,481,3.479,497,2.675,747,3.479,759,3.479,810,3.263,835,4.441,914,2.794,917,4.464,974,4.111,976,3.749,1043,2.48,1094,3.479,1121,2.379,1196,4.675,1197,4.661,1198,6.26,1199,4.661,1200,3.479,1201,4.111,1202,4.661,1203,4.661,1204,4.661,1205,4.661,1206,4.661,1207,3.263,1208,4.661]],["t/152",[3,2.457,4,1.11,7,1.499,9,2.155,10,0.63,13,2.318,14,1.009,20,1.615,23,2.236,25,2.5,28,1.467,29,2.318,30,1.266,45,0.756,58,2.531,72,1.722,75,2.318,88,1.626,89,2.955,101,1.673,111,1.673,128,3.84,139,1.165,142,2.325,143,2.423,152,3.151,154,3.724,157,0.948,165,2.155,174,3.044,190,2.653,191,1.945,219,1.539,228,1.826,232,3.724,234,1.945,235,1.626,244,1.873,267,1.884,271,2.01,274,1.884,275,2.096,276,2.531,280,2.15,281,1.422,284,2.01,289,2.653,294,1.945,302,3.151,324,2.611,325,3.452,326,2.532,330,2.653,408,2.325,423,2.531,467,2.236,480,3.677,518,2.793,528,2.793,643,4.096,694,3.396,699,3.151,808,2.384,916,3.151,917,4.529,1043,1.673,1074,3.396,1090,2.155,1121,2.155,1163,2.793,1196,5.036,1207,2.955,1209,2.01,1210,3.724,1211,4.222,1212,5.851,1213,4.222,1214,4.222,1215,4.222]],["t/154",[4,1.525,7,0.269,8,0.744,9,0.387,10,0.264,13,2.512,14,1.247,25,0.644,27,0.428,30,1.235,32,1.322,35,1.48,45,1.263,47,0.225,51,1.554,60,1.935,64,2.145,65,0.338,67,1.002,68,3.396,70,1.239,73,0.669,81,3.092,109,2.323,128,0.744,133,2.585,135,0.983,143,0.435,153,1.464,156,1.028,157,0.688,174,0.318,176,0.476,186,3.366,189,2.484,194,0.402,199,0.455,201,1.13,203,0.773,205,1.468,208,1.405,211,3.871,219,0.199,228,1.301,235,0.541,240,0.61,241,2.57,270,0.929,274,1.452,275,0.613,276,0.455,278,0.842,279,0.318,284,2.31,286,0.328,287,6.482,289,0.476,294,3.322,314,3.304,320,2.769,324,0.627,331,1.239,332,2.152,333,3.993,334,3.658,335,0.929,336,1.619,337,0.929,338,0.929,339,0.929,340,0.692,341,0.883,342,1.233,343,0.717,345,0.292,346,1.869,348,3.133,360,2.152,361,3.355,362,2.176,363,2.823,364,2.152,374,1.827,375,2.16,378,1.297,380,1.374,381,2.429,384,1.239,387,1.13,407,1.71,408,0.418,412,1.048,413,4.666,467,0.402,502,3.013,530,1.048,597,3.383,632,1.578,638,0.929,699,0.566,757,0.61,770,0.338,775,1.969,807,1.25,808,0.269,869,0.983,870,1.538,914,0.842,917,0.402,954,0.669,955,0.669,1002,0.435,1086,1.714,1090,0.387,1096,2.87,1108,2.16,1109,2.16,1110,0.61,1125,0.566,1153,1.902,1159,4.279,1171,0.929,1196,0.929,1200,0.566,1201,0.669,1210,0.669,1216,1.405,1217,0.758,1218,1.405,1219,1.969,1220,6.037,1221,3.168,1222,3.592,1223,2.448,1224,3.254,1225,4.418,1226,2.448,1227,1.405,1228,1.405,1229,1.405,1230,1.405,1231,5.217,1232,1.405,1233,1.405,1234,1.405,1235,1.405,1236,1.405,1237,1.405,1238,1.405,1239,1.405,1240,1.405,1241,1.405,1242,1.405,1243,1.405,1244,1.405,1245,2.448,1246,1.405,1247,1.405,1248,1.405,1249,1.405,1250,1.405,1251,1.405,1252,1.405,1253,2.448,1254,0.758,1255,0.758,1256,1.405,1257,1.405,1258,2.448,1259,1.405,1260,1.405,1261,0.669,1262,0.758,1263,1.405,1264,0.758,1265,0.669,1266,1.405,1267,0.758,1268,1.962,1269,0.758,1270,0.758,1271,0.758,1272,0.669,1273,6.514,1274,1.405,1275,0.758,1276,0.758,1277,0.758,1278,0.758,1279,1.405,1280,0.758,1281,2.448,1282,2.448,1283,1.405,1284,1.405,1285,1.405,1286,1.405,1287,1.405,1288,2.448,1289,1.405,1290,1.405,1291,1.405,1292,1.405,1293,1.405,1294,1.405,1295,0.758,1296,1.405,1297,1.405,1298,0.758,1299,0.758,1300,0.758,1301,0.758,1302,2.876,1303,1.962,1304,1.405,1305,0.566,1306,0.758,1307,0.758,1308,0.758]],["t/157",[10,0.777,139,1.99,488,3.12]],["t/159",[10,0.777,139,1.99,1309,7.211]],["t/161",[10,0.777,139,1.99,1310,6.36]],["t/163",[27,0.914,109,3.202,139,1.918,281,2.342,361,3.424,609,3.202,645,3.007,949,5.59,1121,3.547,1311,6.13]],["t/165",[280,2.26,340,3.478,361,3.478,482,2.574,657,2.878,1312,3.739,1313,5.269]],["t/167",[39,1.673,40,2.191,42,2.802,124,3.178,139,1.842,361,3.288,419,2.888,482,2.434,657,2.721,948,5.858,1121,3.407,1176,4.001,1312,3.535,1314,5.887,1315,5.887,1316,5.887,1317,5.887]],["t/169",[39,1.665,40,2.181,42,2.789,124,3.162,139,1.833,340,3.272,361,3.272,419,2.874,482,2.422,657,2.708,951,5.342,968,4.956,1121,3.39,1176,3.981,1312,3.518,1318,5.858,1319,5.858,1320,5.858,1321,5.858]],["t/171",[10,0.764,139,1.959,340,3.496,428,5.708,641,4.694,1322,6.26]],["t/173",[10,0.76,42,2.964,139,1.948,157,0.879,482,2.574,616,3.888,1323,6.227]],["t/175",[10,0.76,43,2.378,57,3.361,139,1.948,435,4.942,472,3.862]],["t/178",[25,1.791,26,1.703,27,0.717,30,0.907,31,1.746,32,1.144,36,1.838,39,1.367,40,1.791,102,2.044,157,0.864,174,2.291,219,1.435,225,3.428,244,2.221,264,2.161,267,2.435,275,2.166,280,2.221,281,2.57,407,2.598,416,2.514,482,1.989,488,3.002,533,3.13,646,4.072,657,2.829,1049,4.388,1058,4.589,1062,4.072,1063,5.34,1064,4.589,1077,4.857,1209,2.598,1312,2.89,1324,5.178,1325,4.812,1326,4.812,1327,4.812,1328,5.456,1329,5.456,1330,5.456,1331,4.812,1332,4.812,1333,4.388,1334,4.812]],["t/180",[3,1.616,4,1.012,7,1.366,10,0.688,15,1.616,25,1.263,26,1.201,27,0.915,28,0.964,30,0.64,31,1.232,32,0.992,36,1.296,38,3.664,39,0.964,40,1.263,42,1.616,47,1.896,48,0.856,65,1.717,73,3.314,101,1.524,157,0.795,158,2.038,174,1.616,192,2.693,218,4.051,219,1.012,237,1.717,244,1.232,275,1.201,280,1.755,281,1.296,363,3.259,386,2.545,407,1.832,416,1.773,422,2.7,430,1.665,456,2.307,472,1.832,473,3.095,477,2.942,478,1.896,484,2.872,488,2.372,534,4.172,609,3.625,622,1.832,624,4.012,645,1.665,690,2.208,720,2.038,746,2.693,762,5.352,777,2.038,781,2.418,890,2.872,923,3.095,1058,5.32,1062,2.872,1063,2.693,1064,2.545,1077,2.693,1125,2.872,1312,2.903,1324,4.091,1325,3.394,1326,3.394,1327,3.394,1331,3.394,1332,3.394,1333,3.095,1335,5.482,1336,3.848,1337,3.848,1338,6.385,1339,3.848,1340,3.848,1341,8.043,1342,7.22,1343,3.848,1344,4.835,1345,5.482,1346,4.835,1347,5.482,1348,5.482,1349,3.848,1350,3.848,1351,3.848]],["t/182",[10,0.702,39,1.632,41,3.324,43,2.194,49,3.737,80,3.904,101,2.58,275,2.033,480,4.861,506,5.238,717,4.86,808,2.312,917,4.523,1207,4.559,1209,3.101,1352,4.559,1353,6.513,1354,6.513,1355,5.238]],["t/184",[10,0.588,20,1.506,27,0.717,29,2.161,30,1.408,32,0.777,48,1.544,59,3.097,161,4.388,219,2.006,222,1.435,227,3.418,280,2.221,325,2.598,326,2.361,361,3.418,416,2.514,505,4.072,774,4.072,777,2.89,843,3.27,917,4.488,1043,2.161,1081,4.812,1167,4.36,1196,3.608,1261,7.082,1265,6.73,1355,4.388,1356,5.456,1357,5.456,1358,5.456,1359,5.456,1360,5.456,1361,5.456,1362,6.938,1363,4.072,1364,5.456,1365,5.456]],["t/186",[20,1.747,28,1.586,29,2.507,30,1.052,31,2.026,41,4.162,47,1.88,72,2.58,191,2.916,244,2.026,275,1.975,286,2.739,294,3.897,699,4.723,916,4.723,917,4.48,1074,5.09,1207,4.43,1355,6.558]],["t/188",[10,0.697,20,2,25,1.609,26,1.529,27,0.644,28,1.228,30,0.814,31,1.568,32,0.922,36,1.651,38,2.811,39,1.228,40,1.609,43,1.651,75,1.941,79,1.887,91,1.651,109,2.257,111,1.941,157,0.805,189,2.413,204,1.786,219,1.288,225,3.078,229,3.429,267,2.186,275,2.02,278,3.879,280,1.568,281,2.18,324,2.186,408,2.698,416,2.257,422,2.413,472,2.333,482,2.81,488,2.12,534,3.879,590,2.413,657,2.638,713,2.698,720,3.427,754,3.656,755,3.429,843,2.937,1043,1.941,1053,3.303,1054,2.811,1056,2.501,1057,2.811,1209,2.333,1312,2.595,1366,7.261,1367,4.899,1368,3.879,1369,8.013,1370,4.899,1371,4.899,1372,5.708,1373,4.899,1374,4.899,1375,4.899,1376,4.899,1377,4.899,1378,4.899]],["t/190",[25,2.078,26,1.975,27,0.832,30,1.052,31,2.026,32,1.084,36,2.132,39,1.586,40,2.078,59,2.825,157,0.947,275,2.374,280,2.026,340,3.118,482,2.308,657,2.58,1057,3.631,1209,3.013,1312,3.352,1313,4.723,1368,3.794,1379,5.582,1380,6.329,1381,6.329,1382,5.582,1383,5.582]],["t/192",[25,1.695,26,1.611,27,0.679,28,1.294,31,1.653,32,0.954,36,1.739,39,1.679,40,2.199,60,1.533,79,1.988,112,2.168,124,3.188,139,1.848,157,0.833,219,1.761,234,2.379,275,2.09,281,2.504,324,2.304,357,3.614,419,2.898,477,3.085,478,2.543,482,2.442,526,3.095,657,2.105,690,2.962,1043,2.045,1053,3.418,1054,2.962,1056,2.635,1057,2.962,1121,2.635,1176,3.095,1209,2.458,1312,2.734,1313,3.853,1368,3.095,1384,8.501,1385,5.162,1386,5.162,1387,5.162,1388,5.162,1389,5.162,1390,5.162,1391,5.162,1392,5.162,1393,5.162,1394,5.162,1395,5.162,1396,5.162,1397,5.162,1398,5.162,1399,5.162,1400,5.162,1401,5.162]],["t/194",[2,1.028,7,1.383,8,1.296,10,0.596,20,1.075,27,0.512,28,1.216,29,1.922,30,0.407,31,0.783,32,1.264,35,1.722,36,1.312,42,1.028,47,0.727,48,0.544,51,3.12,66,3.62,72,0.998,73,1.165,77,0.943,88,1.5,91,1.312,102,1.817,105,1.868,139,2.179,157,0.485,158,1.296,165,1.249,174,2.036,175,1.165,177,1.713,198,1.538,218,1.348,219,1.587,234,1.128,241,1.206,244,1.553,264,0.97,278,3.618,280,1.553,281,1.863,318,1.538,319,2.906,320,2.036,326,1.059,345,0.943,346,0.943,378,3.996,419,2.099,436,1.404,467,2.063,472,1.165,482,2.842,488,1.685,497,1.404,534,3.853,616,1.348,622,3.21,624,3.474,635,3.792,638,1.619,657,0.998,679,3.048,692,3.435,713,1.348,734,3.474,764,1.538,789,2.906,790,1.713,812,1.968,830,2.159,831,2.159,842,1.619,850,1.467,874,3.901,876,4.447,948,1.826,995,3.132,1003,3.132,1014,2.159,1058,3.208,1163,1.619,1176,2.907,1272,2.159,1323,2.159,1363,1.826,1402,2.447,1403,2.447,1404,2.447,1405,4.85,1406,4.85,1407,5.529,1408,3.894,1409,2.447,1410,2.447,1411,3.894,1412,2.447,1413,2.447,1414,2.447,1415,2.447,1416,3.894,1417,2.447,1418,2.447,1419,5.529,1420,2.447,1421,4.85,1422,2.447,1423,4.85,1424,2.447,1425,4.85,1426,2.447,1427,2.447,1428,2.447,1429,4.85,1430,2.447,1431,2.447,1432,5.529,1433,4.85,1434,3.894,1435,2.447,1436,3.894,1437,4.85,1438,2.447,1439,3.894,1440,2.447,1441,3.894,1442,2.447,1443,2.447,1444,2.447,1445,2.447,1446,2.447,1447,2.447,1448,2.447,1449,2.447,1450,1.968,1451,2.447,1452,2.447,1453,4.85,1454,2.447,1455,2.447,1456,2.447,1457,4.85,1458,3.894,1459,2.447,1460,4.85,1461,2.447,1462,2.447,1463,5.529,1464,2.447,1465,2.447,1466,2.447,1467,3.894,1468,2.447,1469,2.447,1470,2.159,1471,2.447,1472,3.894,1473,2.447]],["t/196",[4,1.197,8,2.41,10,0.49,14,1.087,15,1.911,25,1.494,26,1.923,27,0.598,28,1.141,30,0.756,31,1.457,32,0.878,35,1.616,36,2.075,38,2.611,39,1.75,40,1.494,42,1.911,43,1.533,45,0.815,57,2.167,59,2.031,75,1.803,79,1.753,97,2.323,102,1.705,124,2.167,139,1.927,141,1.753,156,1.911,157,0.566,174,1.911,186,2.323,235,2.373,267,2.749,269,3.396,275,1.923,281,2.352,284,2.167,297,4.014,313,2.506,340,4.06,416,2.097,428,4.954,465,2.728,482,2.246,488,2.665,490,2.506,507,4.014,641,4.074,645,1.969,657,2.511,670,3.396,728,3.66,764,2.86,767,5.211,772,3.66,797,3.186,870,2.86,920,3.396,924,3.01,1043,1.803,1053,2.323,1054,2.611,1056,2.323,1146,3.396,1209,2.167,1322,6.6,1474,4.551,1475,6.16,1476,4.551,1477,4.551,1478,3.396,1479,4.014,1480,3.66,1481,4.551,1482,4.551,1483,4.551,1484,4.551,1485,4.551,1486,4.551,1487,4.551,1488,4.551]],["t/198",[25,1.784,26,1.696,27,0.715,28,1.362,31,1.739,32,0.986,36,1.831,39,1.735,40,2.272,42,2.281,79,2.093,112,2.281,124,2.587,139,1.5,157,0.861,186,2.773,219,1.82,234,2.503,275,2.16,278,3.257,281,2.566,324,2.425,340,2.677,407,2.587,419,2.351,477,3.189,478,2.677,482,2.524,657,2.215,690,3.118,947,4.37,951,6.125,952,4.37,968,6.179,1053,3.532,1056,2.773,1057,3.118,1121,2.773,1176,3.257,1209,2.587,1312,2.878,1318,4.793,1319,4.793,1320,4.793,1321,4.793,1368,3.257,1450,4.37]],["t/200",[7,1.406,9,2.022,10,0.801,14,0.947,25,1.301,26,1.236,27,0.736,28,1.626,30,0.658,31,1.268,32,0.797,35,1.406,36,1.885,38,2.273,39,0.993,40,1.301,47,1.176,48,1.245,59,1.768,79,1.526,97,2.022,102,1.484,109,1.825,112,1.663,124,1.886,126,3.186,139,2.131,156,1.663,157,0.696,174,1.663,195,2.956,204,2.04,218,2.181,219,1.042,229,2.773,235,2.155,267,2.497,268,2.773,275,2.025,279,1.663,281,2.186,284,1.886,286,1.714,313,2.181,314,1.886,416,1.825,419,2.421,465,2.374,477,2.989,478,1.951,482,2.712,484,2.956,488,2.421,490,2.181,518,3.701,524,4.501,570,2.773,609,1.825,616,2.181,645,1.714,655,3.186,657,2.282,690,2.273,742,2.773,746,2.773,747,2.956,753,3.494,764,2.489,772,3.186,797,2.773,800,2.773,842,2.62,924,2.62,982,3.494,1043,1.569,1053,2.856,1054,2.273,1056,2.856,1090,2.022,1127,2.956,1209,1.886,1310,7.148,1366,3.494,1478,2.956,1479,3.494,1489,3.961,1490,3.961,1491,6.488,1492,5.982,1493,3.961,1494,3.961,1495,6.488,1496,3.961,1497,3.961,1498,3.961,1499,3.961,1500,3.961,1501,3.961,1502,5.596,1503,3.961,1504,3.494,1505,3.961,1506,3.961,1507,3.961]],["t/202",[10,0.487,15,1.898,25,1.484,26,1.411,27,0.915,28,1.537,31,1.963,32,1.146,36,1.523,39,1.133,40,1.484,46,2.307,47,2.067,48,1.006,75,1.791,77,1.741,97,2.307,109,2.083,136,3.636,139,2.22,141,1.741,147,2.71,157,0.763,165,2.307,175,2.152,186,2.307,204,1.648,219,1.189,234,2.083,267,2.017,275,2.329,281,2.066,286,1.956,330,2.84,382,3.636,477,2.825,482,1.648,609,2.083,645,2.653,674,3.374,810,3.164,861,3.987,902,3.374,924,2.99,949,6.962,1043,1.791,1053,3.13,1054,3.518,1056,2.307,1057,2.594,1079,3.987,1086,3.164,1090,2.307,1121,2.307,1209,2.152,1311,7.094,1324,3.374,1346,3.987,1492,4.932,1508,4.52,1509,4.52,1510,4.52,1511,4.52,1512,6.131,1513,4.52,1514,6.131,1515,4.52,1516,4.52,1517,6.131,1518,4.52]],["t/204",[10,0.602,25,1.836,26,1.745,27,0.735,30,0.929,31,1.79,32,1.004,36,1.884,39,1.402,40,1.836,43,1.884,79,2.154,102,2.095,157,0.877,219,1.47,225,3.514,244,2.256,264,2.215,267,2.496,275,2.2,280,1.79,281,2.73,324,2.496,407,2.662,419,2.42,482,2.039,488,2.42,490,3.079,533,3.208,646,4.173,657,2.28,1043,2.215,1049,4.498,1053,3.597,1054,3.208,1055,4.498,1056,2.854,1063,5.402,1064,4.661,1077,3.914,1209,2.662,1312,2.962,1334,4.932,1368,3.352,1480,4.498,1519,5.592]],["t/206",[10,0.902,13,2.587,20,1.802,27,0.527,28,1.005,30,1.085,31,2.269,32,1.104,43,2.2,48,1.453,57,1.908,73,3.557,77,1.544,107,2.403,139,2.394,141,1.544,158,2.123,165,2.88,227,1.975,228,2.038,241,1.975,244,1.806,407,3.109,435,5.424,472,3.791,488,2.826,490,4.114,528,2.651,781,3.546,872,3.238,918,3.535,920,5.29,1043,1.588,1053,3.333,1054,3.238,1055,4.539,1056,3.333,1057,3.238,1062,2.991,1063,3.95,1064,3.732,1077,4.571,1127,4.211,1313,4.211,1368,3.915,1379,3.535,1382,5.76,1383,5.76,1480,3.224,1504,4.977,1520,6.53,1521,5.643,1522,5.643,1523,3.535,1524,4.008,1525,4.008]],["t/208",[4,1.47,15,2.348,45,1.001,80,4.225,88,2.154,92,3.914,105,2.154,106,2.873,112,2.348,127,2.348,128,2.962,137,3.914,150,3.247,157,0.877,279,2.959,282,4.291,283,3.514,290,3.145,324,2.496,430,3.05,471,2.854,670,4.173,769,4.225,808,2.74,809,4.498,835,5.091,857,4.933,920,4.173,1091,4.498,1092,3.914,1129,4.173,1352,3.914,1526,5.592,1527,5.592,1528,5.592,1529,5.26,1530,5.592,1531,4.498,1532,5.592]],["t/210",[4,1.654,20,1.736,25,1.541,36,1.581,39,1.177,41,2.396,49,2.693,50,3.286,101,1.86,109,2.163,111,1.86,127,1.971,128,3.757,137,3.286,139,1.295,141,1.808,150,2.163,156,1.971,157,0.783,173,3.286,176,2.949,194,2.486,212,3.268,222,1.234,228,2.365,262,3.503,264,2.492,271,2.235,274,2.095,305,3.503,362,3.098,430,3.84,431,4.14,436,2.693,437,2.693,438,3.098,466,3.286,471,2.396,492,2.163,504,4.14,515,3.286,530,4.694,581,3.775,642,2.486,720,2.486,747,3.503,808,2.69,835,2.949,872,2.693,883,4.14,1085,4.691,1090,2.396,1146,3.503,1171,3.105,1533,4.694,1534,4.694,1535,4.694,1536,4.694,1537,4.694,1538,4.694,1539,4.694,1540,4.14,1541,4.14,1542,4.694,1543,4.694,1544,4.694,1545,4.694,1546,4.14,1547,4.14,1548,4.694,1549,4.694]],["t/212",[4,0.76,10,0.478,14,0.69,20,1.901,22,2.324,23,1.53,25,0.949,27,0.38,32,0.862,36,1.494,40,0.949,41,1.474,43,0.973,45,1.083,48,0.986,49,1.658,50,2.022,57,3.108,59,1.979,88,3.036,101,2.137,105,1.113,106,1.178,107,1.732,124,1.375,127,2.893,141,2.763,146,2.324,147,1.732,149,2.022,150,2.788,151,4.317,152,2.156,156,1.213,161,2.324,175,2.111,176,1.815,192,2.022,194,1.53,197,1.732,199,1.732,204,1.617,219,0.76,227,2.981,228,2.037,255,2.324,264,1.144,272,3.234,274,1.289,279,1.213,282,4.335,286,2.334,289,1.815,290,1.289,304,2.324,305,2.156,311,2.324,343,1.474,379,1.911,430,3.575,433,2.156,438,1.423,471,2.754,480,3.802,502,1.808,530,2.156,591,2.548,604,2.022,605,2.156,622,1.375,642,2.348,652,2.156,705,2.022,713,1.591,715,2.548,717,2.156,729,4.867,755,2.022,768,3.802,769,1.732,777,2.348,779,2.263,781,1.815,808,2.148,810,2.022,835,4.952,843,1.732,866,1.815,870,2.786,872,2.544,890,2.156,1002,1.658,1043,1.144,1044,4.339,1091,2.324,1146,2.156,1169,3.103,1352,2.022,1529,6.553,1540,2.548,1541,2.548,1550,2.889,1551,2.889,1552,4.433,1553,2.889,1554,2.889,1555,2.889,1556,2.889,1557,2.889,1558,2.889,1559,2.889,1560,5.395,1561,2.889,1562,7.173,1563,2.889,1564,2.889,1565,2.889,1566,2.889,1567,2.548,1568,2.889,1569,2.548,1570,2.548,1571,2.889,1572,2.889,1573,2.889]],["t/214",[25,1.813,26,1.724,27,0.726,28,1.384,31,1.768,32,0.996,36,1.861,39,1.753,40,2.296,42,2.319,79,2.127,112,2.319,124,2.63,139,2.118,157,0.87,219,1.839,234,2.545,275,2.183,281,2.585,324,2.465,419,2.39,477,3.222,478,2.721,482,2.55,657,2.252,690,3.169,948,6.344,1053,3.569,1056,2.819,1057,3.169,1121,2.819,1176,3.311,1209,2.63,1312,2.925,1314,4.871,1315,4.871,1316,4.871,1317,4.871,1368,3.311,1450,5.624,1574,5.523]],["t/216",[42,2.888,98,3.511,157,0.856,248,2.101,770,3.07,1138,4.815,1139,5.134,1140,5.134,1163,4.55,1352,4.815,1575,6.879]],["t/218",[20,1.165,26,1.318,27,0.953,30,0.973,32,1.206,43,1.422,45,1.298,48,0.939,51,2.906,60,1.254,76,3.572,91,1.422,105,3.034,106,1.722,112,1.773,133,3.294,142,2.325,150,1.945,218,2.325,219,2.002,234,2.696,248,2.199,271,2.01,275,1.826,280,1.352,286,1.827,290,1.884,320,1.773,326,1.827,330,3.677,363,2.155,414,2.653,477,2.696,478,2.08,492,1.945,497,2.423,590,2.08,621,2.531,622,2.786,635,3.677,637,2.793,638,2.793,690,2.423,713,2.325,770,1.884,779,2.155,799,2.955,807,3.427,832,4.707,850,2.531,904,5.832,906,4.707,1090,2.155,1133,2.793,1156,2.955,1165,3.396,1531,3.396,1576,4.222,1577,5.161,1578,4.222,1579,4.222,1580,3.396,1581,3.396,1582,4.222,1583,4.222,1584,3.396,1585,4.222,1586,4.222,1587,3.724,1588,4.222,1589,6.715,1590,5.851,1591,4.222,1592,4.222]],["t/220",[3,2.757,20,1.382,27,0.659,28,1.255,30,0.832,32,1.108,35,1.778,39,1.255,40,1.645,48,1.114,59,2.235,65,2.235,72,2.987,75,2.601,76,3.83,88,2.529,91,1.687,98,3.739,112,3.076,133,2.677,139,1.382,190,3.147,219,2.123,227,2.467,248,1.926,279,2.103,280,1.603,505,3.738,590,2.467,642,2.653,724,4.343,770,3.47,779,3.351,807,3.351,840,3.738,850,3.936,1133,4.343,1138,5.127,1139,5.802,1140,5.802,1156,3.506,1166,4.418,1167,3.147,1200,3.738,1593,4.029,1594,4.029,1595,5.009]],["t/222",[4,1.038,13,2.212,14,0.73,27,0.402,28,0.456,32,1.338,35,1.402,42,0.764,45,0.923,46,0.928,60,1.531,64,1.001,65,0.812,68,1.273,91,1.029,105,0.7,109,1.819,133,1.61,156,0.764,157,0.491,203,1.001,228,1.232,235,1.521,241,2.279,248,1.356,267,0.812,274,1.363,275,0.568,320,2.344,332,2.611,333,4.425,334,5.904,335,1.203,336,5.044,337,1.203,338,1.203,339,1.203,340,0.896,341,1.143,342,1.143,346,1.176,360,2.02,361,2.54,364,2.02,365,1.752,378,0.963,379,1.203,380,1.273,381,2.279,419,1.708,770,3.142,808,1.084,914,1.831,1138,5.029,1139,5.458,1140,5.458,1478,1.357,1596,7.185,1597,4.625,1598,3.054,1599,1.818,1600,1.818,1601,1.818]],["t/224",[10,0.605,13,2.227,14,1.115,21,1.47,28,2.008,30,1.041,32,1.182,43,1.894,45,1.434,48,1.496,51,1.336,57,1.47,73,1.47,75,1.848,76,3.723,91,1.04,105,2.723,106,3.081,108,1.576,113,2.304,115,2.304,135,2.161,140,2.304,141,1.189,149,5.518,157,0.384,158,1.636,179,3.265,219,2.073,222,1.227,227,3.483,228,1.456,248,2.181,282,2.977,286,3.176,290,1.378,320,1.297,345,2.59,372,3.752,418,2.161,419,1.336,472,3.754,492,1.423,502,3.214,528,2.042,592,3.752,597,2.568,616,1.7,657,1.259,759,2.304,807,2.381,809,2.484,858,2.724,872,3.225,1002,1.772,1052,3.481,1090,2.381,1094,2.304,1097,2.484,1153,3.085,1157,2.724,1169,2.161,1529,4.674,1531,2.484,1594,2.484,1602,5.64,1603,6.723,1604,3.088,1605,4.664,1606,4.114,1607,3.088,1608,3.088,1609,4.114,1610,5.62,1611,3.088,1612,4.664,1613,3.088,1614,3.088,1615,4.114,1616,4.664,1617,4.114,1618,3.088,1619,3.088,1620,2.724]],["t/226",[10,0.903,13,2.438,28,2.019,30,1.023,43,2.074,45,1.339,73,3.561,76,3.032,105,2.371,219,1.967,227,4.128,228,1.921,248,1.967,286,2.663,818,3.532,872,3.532,1090,3.142,1094,4.593,1529,4.593,1617,5.429,1620,5.429,1621,6.155,1622,6.155]],["t/228",[4,1.333,9,1.762,10,0.647,14,1.435,15,2.128,21,2.413,25,1.664,37,1.829,39,1.27,40,1.134,41,1.762,44,2.577,45,1.398,46,1.762,47,1.025,60,2.093,61,2.577,63,2.777,64,1.901,79,1.33,81,2.417,91,2.023,102,1.899,108,1.762,127,1.45,141,1.33,145,2.577,156,1.45,157,1.022,204,2.19,205,2.07,228,1.078,244,1.105,248,1.74,263,3.783,266,3.045,268,2.417,272,2.07,274,2.262,275,1.078,280,1.105,320,2.128,343,1.762,362,2.497,414,2.169,424,2.07,425,2.284,429,3.783,430,1.494,438,3.751,441,2.284,458,2.169,465,2.07,472,1.644,481,2.577,486,2.777,502,3.004,508,2.577,514,1.494,536,1.981,563,4.077,597,1.901,609,1.591,616,1.901,621,2.07,640,2.169,642,1.829,643,2.417,658,2.577,660,2.777,705,2.417,709,2.777,720,2.685,724,3.352,728,2.777,762,2.417,770,1.541,781,2.169,803,2.777,808,1.799,818,3.446,835,2.169,843,3.038,850,2.07,866,3.185,872,1.981,891,3.045,914,2.07,917,1.829,1085,3.352,1121,1.762,1136,2.169,1148,3.045,1163,2.284,1170,5.669,1171,2.284,1546,5.297,1547,4.471,1567,3.045,1569,4.471,1570,6.498,1623,3.452,1624,5.068,1625,3.452,1626,3.452,1627,3.045,1628,3.452,1629,3.452,1630,5.068,1631,4.471,1632,3.452,1633,5.068,1634,5.068,1635,6.005,1636,3.452,1637,3.452,1638,3.452,1639,2.777,1640,2.777,1641,3.452,1642,3.045,1643,3.452,1644,3.452]],["t/230",[0,4.661,13,2.093,14,1.796,27,0.695,32,0.969,45,1.346,48,1.176,91,1.78,106,2.154,139,1.458,141,2.618,149,4.758,157,0.658,205,4.075,212,2.435,235,2.618,241,2.603,248,2.21,320,2.219,372,5.468,438,2.603,444,4.25,454,4.25,464,4.25,502,3.235,519,4.25,653,4.25,755,3.699,766,4.661,1011,4.25,1052,3.944,1085,3.495,1136,4.272,1137,4.496,1150,5.073,1153,3.495,1602,5.073,1609,4.661,1640,4.25,1645,4.661,1646,5.284,1647,5.284,1648,5.284,1649,5.284,1650,5.284,1651,5.284,1652,5.284,1653,5.284,1654,5.284]],["t/232",[30,1.389,105,2.584,106,2.735,248,2.311,303,5.916,320,2.816,621,4.719,1133,5.207,1167,4.215]],["t/234",[10,0.316,11,3.608,12,2.967,15,1.231,20,1.238,26,1.4,27,0.59,30,0.905,32,1.221,42,1.231,45,0.803,48,1.212,51,2.999,57,1.396,60,0.871,72,1.196,76,3.755,81,2.053,87,3.347,88,1.13,91,2.055,98,2.78,102,1.099,105,2.531,106,1.196,107,1.758,133,2.22,139,1.238,151,1.94,157,0.678,165,1.497,174,2.287,175,1.396,189,1.445,190,1.843,191,2.066,204,1.069,212,1.351,215,2.053,218,1.615,219,1.432,222,1.179,237,1.309,241,1.445,248,2.179,271,1.396,274,1.309,280,0.939,281,0.988,294,2.066,314,2.136,315,1.683,320,1.883,386,2.967,387,4.38,413,4.584,414,2.818,419,1.269,458,1.843,502,2.22,597,2.999,622,2.904,624,1.843,628,4.38,630,4.38,635,1.843,642,2.376,655,2.359,713,1.615,742,3.14,758,3.956,759,2.189,779,2.289,797,3.812,799,3.812,807,3.537,904,4.906,906,2.359,995,2.359,1002,1.683,1021,2.587,1043,1.162,1085,1.94,1087,2.587,1121,1.497,1125,3.347,1133,1.94,1136,3.422,1137,4.584,1150,2.189,1151,3.608,1152,2.359,1153,4.584,1154,3.608,1155,3.608,1163,1.94,1176,1.758,1219,3.608,1221,2.587,1470,2.587,1577,3.956,1581,2.359,1584,2.359,1627,2.587,1655,2.933,1656,2.933,1657,2.933,1658,4.485,1659,2.933,1660,2.933,1661,2.933,1662,2.933,1663,2.933,1664,2.933,1665,2.933,1666,2.933,1667,4.485,1668,2.933,1669,2.933,1670,5.446,1671,4.485,1672,4.485,1673,2.933,1674,2.933,1675,2.933,1676,2.933,1677,2.933,1678,2.587,1679,2.359,1680,2.587,1681,2.587,1682,2.587,1683,2.587,1684,2.933,1685,2.587]],["t/236",[15,2.193,21,2.487,29,2.069,30,1.242,32,1.166,46,2.666,48,1.162,50,3.656,76,2.573,88,2.012,91,1.759,102,1.957,105,2.012,111,2.069,133,3.047,150,3.109,157,0.65,160,4.201,204,2.46,218,2.876,219,1.373,237,2.331,248,1.774,325,2.487,326,2.26,363,2.666,477,2.406,478,2.573,482,2.46,502,2.751,503,4.606,679,3.282,724,3.454,746,3.656,799,5.725,841,3.898,1027,4.201,1086,3.656,1136,3.282,1137,3.454,1196,3.454,1581,4.201,1584,4.201,1645,4.606,1678,4.606,1679,4.201,1680,4.606,1681,4.606,1682,4.606,1683,4.606,1685,4.606,1686,4.201,1687,5.223,1688,5.223,1689,6.747,1690,4.606]],["t/238",[2,2.559,3,2.559,10,0.529,26,0.779,27,0.646,28,1.703,30,1.171,32,0.797,36,0.841,39,0.992,40,0.82,45,1.436,48,1.093,51,1.081,57,1.189,72,2.873,73,2.902,75,2.875,76,3.737,77,2.498,79,1.524,87,1.864,88,2.617,89,1.748,91,1.884,98,2.854,105,1.524,107,1.497,112,2.853,133,2.004,141,0.962,151,1.652,158,1.323,174,1.049,177,1.748,179,2.77,189,1.23,191,1.151,204,1.443,208,1.433,212,1.151,215,2.77,219,2.261,222,1.293,227,2.755,234,1.823,237,1.114,241,1.949,244,0.799,248,2.284,263,1.864,267,2.194,270,1.652,279,1.662,282,2.962,283,2.487,286,2.127,294,1.823,309,2.203,313,2.179,314,3.456,315,3.497,320,1.662,386,1.652,413,3.698,414,3.83,416,1.151,419,1.081,472,1.189,502,1.018,515,1.748,520,1.497,632,2.009,643,1.748,717,1.864,746,1.748,755,1.748,779,2.509,781,1.569,785,2.009,803,2.009,807,3.111,808,0.887,850,1.497,872,1.433,986,2.203,1002,1.433,1043,0.989,1044,3.183,1110,2.009,1133,4.8,1134,2.009,1136,3.088,1137,4.289,1150,4.173,1151,3.183,1152,3.183,1153,2.617,1154,2.009,1155,2.009,1167,2.487,1200,1.864,1219,2.009,1352,1.748,1523,2.203,1587,2.203,1615,2.203,1631,2.203,1639,2.009,1679,2.009,1691,4.932,1692,2.497,1693,2.497,1694,2.497,1695,2.497,1696,2.497,1697,2.497,1698,2.497,1699,2.497,1700,2.497,1701,2.497,1702,2.497,1703,2.497,1704,2.497,1705,2.497,1706,2.497,1707,2.497,1708,2.497]],["t/241",[2,3.542,3,1.848,10,0.739,14,1.64,15,1.848,21,2.867,26,1.374,27,0.903,28,1.509,29,1.744,30,1.001,31,1.409,32,0.627,33,3.081,42,1.848,43,2.029,45,1.384,48,1.527,72,2.455,73,2.096,77,1.696,88,2.319,102,1.649,139,1.215,157,0.749,174,1.848,179,3.081,219,1.158,222,1.584,227,2.169,228,1.374,231,2.911,235,2.842,248,2.336,264,1.744,267,1.965,294,2.774,299,3.883,314,2.096,315,2.526,414,2.766,430,1.905,433,3.285,506,3.541,590,2.169,709,5.521,724,2.911,757,3.541,770,1.965,779,2.247,800,3.081,801,3.541,927,3.883,929,4.215,1011,3.541,1141,3.883,1156,4.215,1167,2.766,1169,3.081,1478,3.285,1686,3.541,1691,5.311,1709,4.402,1710,3.883,1711,3.883,1712,4.402,1713,4.402,1714,4.402,1715,4.402,1716,4.402]],["t/243",[2,3.428,14,1.862,27,0.751,32,1.163,45,1.395,48,1.27,60,1.696,91,2.625,105,2.2,139,2.253,163,3.997,175,2.719,219,1.502,222,1.502,225,4.896,226,5.153,235,2.751,248,2.147,264,2.262,770,2.549,800,4.999,929,3.997,1156,3.997,1363,4.262,1710,5.037,1711,5.037,1717,5.71,1718,5.71]],["t/245",[2,3.325,101,2.684,102,2.967,248,2.083,281,2.914,488,3.427,570,4.742,968,5.056]],["t/248",[7,2.165,27,0.802,32,1.221,47,1.811,54,4.906,112,2.561,157,1.04,158,3.23,269,4.552,280,2.381,318,3.832,363,3.113,477,3.697,609,2.81,668,4.269,669,5.206,690,3.499,760,5.38,1719,8.024,1720,6.099,1721,6.099,1722,6.099,1723,6.099,1724,6.099]],["t/250",[10,0.513,14,1.707,20,1.314,27,0.626,28,1.591,29,3.302,30,1.187,31,1.524,32,1.29,37,3.363,45,1.279,47,1.886,48,1.412,60,1.414,101,1.886,150,3.762,157,0.79,204,1.736,222,1.252,228,1.486,248,1.878,271,2.267,272,2.854,275,1.982,280,1.524,325,3.779,326,3.664,343,3.24,465,2.854,492,2.193,502,2.589,534,2.854,656,5.107,806,3.553,841,4.738,844,4.199,845,4.199,846,4.199,847,3.829,1594,3.829,1642,4.199]],["t/252",[10,0.705,20,2.141,27,0.861,30,1.29,31,2.484,46,3.34,47,1.944,75,2.593,157,0.814,204,2.386,244,2.095,282,3.466,389,4.884,482,2.386,488,3.357,657,2.668,842,4.328,1058,4.328]],["t/254",[32,1.176,219,2.035,281,2.607,407,3.101,482,2.375,488,2.818,490,3.586,533,3.737,713,3.586,1053,3.324,1054,3.737,1056,3.324,1057,3.737,1058,5.117,1059,5.744,1333,5.238,1368,3.904,1725,6.513]],["t/256",[10,0.663,20,1.699,28,1.875,30,1.023,31,1.97,32,1.148,38,3.532,39,1.543,102,2.306,124,2.931,146,4.951,158,3.26,219,1.619,244,1.97,264,2.438,281,2.074,407,2.931,416,2.836,482,2.938,488,3.236,490,3.389,533,3.532,657,2.51,713,3.389,1053,3.142,1056,3.142,1064,4.071,1078,5.429,1726,6.155]],["t/258",[1,3.191,7,1.518,8,2.265,9,3.45,10,0.461,23,2.265,27,0.562,29,2.339,32,1.312,35,1.518,45,0.766,47,1.27,111,1.694,141,1.647,142,2.355,156,1.795,157,1.043,175,2.036,203,2.355,204,2.152,222,1.124,271,2.036,275,2.11,320,2.478,321,3.439,325,2.036,326,1.85,332,4.471,333,5.612,334,5.463,335,2.828,336,4.471,337,2.828,338,2.828,339,2.828,340,2.106,341,2.687,342,2.687,345,1.647,362,2.908,363,2.182,456,2.563,458,2.687,514,2.554,525,3.191,536,3.387,551,2.993,652,3.191,668,2.993,669,2.993,679,3.709,707,2.828,1119,3.439,1727,4.748,1728,3.772,1729,3.772,1730,4.276]],["t/260",[7,2.732,8,2.437,9,2.837,10,0.327,14,1.099,20,0.837,25,2.19,27,0.816,28,0.76,29,1.823,30,1.031,32,1.285,35,1.633,37,3.981,45,0.824,47,1.366,48,0.675,59,1.353,76,1.494,79,1.772,88,1.772,101,2.782,102,1.136,109,1.397,111,1.201,128,2.437,156,1.932,157,1.018,174,1.273,175,1.444,203,2.533,204,1.106,244,1.473,267,2.053,269,2.263,271,1.444,275,2.192,282,1.606,294,3.073,320,1.273,321,2.439,325,2.954,326,1.312,332,3.676,333,5.19,334,4.971,335,2.005,336,3.676,337,2.005,338,2.005,339,2.005,340,2.266,341,2.891,342,2.891,345,2.141,346,1.772,347,4.991,362,2.738,408,3.673,422,2.266,430,1.312,456,3.719,458,2.891,465,1.818,525,2.263,652,2.263,668,2.122,669,2.122,713,1.67,777,1.606,813,4.991,818,4.186,842,2.005,847,3.7,917,2.437,924,2.005,1043,1.201,1052,2.263,1119,2.439,1158,5.473,1196,4.104,1207,3.22,1209,1.444,1593,2.439,1690,2.674,1727,3.7,1728,2.674,1731,3.032,1732,6.205,1733,3.032,1734,3.032,1735,3.032]],["t/262",[4,1.556,10,0.363,15,1.413,20,1.633,27,0.443,29,1.971,30,0.827,31,1.077,32,1.258,35,1.195,36,1.676,37,2.635,39,1.247,43,1.676,45,0.603,48,1.107,49,1.931,51,1.457,59,2.641,66,2.512,77,1.297,79,2.518,88,2.279,91,1.994,105,1.297,127,2.928,143,1.931,149,2.356,157,0.814,160,2.707,191,1.551,194,1.783,204,1.227,211,2.356,212,1.551,222,1.556,226,4.323,228,1.553,235,1.916,264,1.334,271,1.603,274,1.502,280,1.077,282,2.635,283,3.126,284,1.603,290,1.502,314,1.603,324,1.502,326,1.457,345,1.297,346,2.279,357,2.356,360,2.226,361,2.915,364,2.226,365,2.854,412,2.512,422,2.915,438,2.451,458,2.115,471,3.02,480,2.115,502,2.028,622,1.603,641,2.226,642,1.783,671,2.512,679,2.115,767,2.512,769,2.018,777,3.867,784,3.713,791,2.969,796,2.356,807,1.718,808,1.766,814,2.969,816,2.969,818,1.931,843,2.018,853,3.482,854,3.482,857,2.356,864,2.356,865,3.482,866,3.126,869,2.356,888,2.512,889,2.707,1043,1.334,1136,2.115,1137,2.226,1147,2.969,1160,2.969,1363,4.416,1602,2.512,1606,2.969,1640,2.707,1686,2.707,1736,3.366,1737,3.366,1738,3.366,1739,6.536,1740,3.366,1741,7.3,1742,4.975,1743,3.366,1744,3.366,1745,6.536,1746,3.366,1747,3.366,1748,3.366,1749,3.366,1750,5.917,1751,3.366,1752,3.366,1753,3.366,1754,3.366,1755,3.366]],["t/264",[2,2.561,10,0.657,35,2.64,38,3.499,42,2.561,45,1.332,47,2.383,60,2.209,62,4.906,141,3.091,157,0.759,165,3.113,205,3.656,222,1.956,234,2.81,286,2.639,514,3.472,536,4.604,597,3.359,605,4.552,645,2.639,660,4.906,665,4.906,764,3.832,1092,4.269]],["t/266",[4,2,10,0.682,20,1.747,27,0.832,35,2.247,109,2.916,138,3.631,210,5.582,324,2.825,477,3.757,479,6.708,480,3.977,514,3.291,526,3.794,674,5.676,675,5.582,720,3.352,1344,6.708,1756,6.329,1757,6.329,1758,7.605]],["t/268",[2,1.842,7,2.433,10,0.794,13,1.738,14,1.048,27,0.901,32,1.237,43,2.024,45,0.786,47,2.293,60,1.303,97,2.239,106,1.789,112,1.842,141,1.69,157,0.961,183,3.274,222,1.58,228,1.37,237,1.958,279,2.523,282,2.324,357,3.071,363,2.239,430,2.965,438,2.161,514,3.34,520,2.63,533,4.228,536,3.932,551,4.206,676,5.949,679,2.757,685,3.87,686,3.529,707,4.532,924,2.902,1027,3.529,1602,5.114,1727,3.529,1759,6.412,1760,6.008,1761,6.008,1762,4.388,1763,6.685,1764,4.833,1765,4.833,1766,4.833,1767,4.833,1768,4.388,1769,4.388,1770,4.388,1771,3.87,1772,3.87,1773,3.87]],["t/270",[7,1.891,10,0.574,27,0.7,28,1.335,29,3.153,30,0.885,31,1.705,32,1.267,36,1.794,47,1.582,48,1.52,52,4.783,138,3.92,157,0.663,222,1.401,237,2.377,248,1.401,325,3.918,389,3.975,514,2.305,558,5.496,616,2.933,645,3.264,663,4.293,676,3.975,843,3.193,1305,3.975,1580,5.496,1759,4.284,1763,6.773,1764,4.284,1765,4.284,1766,4.284,1767,4.284,1774,4.698,1775,4.698,1776,4.698,1777,5.326,1778,5.326]],["t/272",[1,3.656,7,2.572,10,0.528,27,0.851,30,1.281,32,1.272,35,1.739,47,1.922,48,1.44,52,4.529,138,3.713,156,2.057,157,0.902,203,2.698,219,1.702,222,1.702,275,1.529,294,3.692,325,3.45,340,2.413,341,3.078,342,4.066,413,3.24,514,2.12,520,2.937,558,5.205,645,2.8,663,4.066,676,3.656,892,3.941,1305,3.656,1580,5.205,1639,3.941,1759,3.941,1763,6.621,1764,3.941,1765,3.941,1766,3.941,1767,3.941,1771,4.321,1774,4.321,1775,4.321,1776,4.321,1779,4.899,1780,6.471,1781,4.899,1782,4.899]],["t/274",[7,1.661,10,0.504,15,1.964,18,3.274,20,1.291,27,0.825,28,1.172,30,0.777,32,0.894,35,2.228,42,1.964,43,1.576,47,2.103,97,3.614,102,1.753,109,2.155,113,3.491,134,2.939,157,0.582,194,2.478,234,2.891,257,3.491,267,2.088,268,3.274,275,1.959,318,2.939,326,2.715,423,2.804,434,4.126,440,4.126,443,3.491,477,3.262,478,2.304,520,2.804,525,3.491,533,3.6,534,2.804,543,3.491,551,5.524,570,3.274,609,2.155,640,3.943,665,3.762,668,3.274,669,3.274,690,2.684,693,4.126,707,5.219,764,2.939,767,3.491,842,3.094,902,3.491,914,2.804,1090,3.614,1092,3.274,1162,5.695,1209,2.227,1305,3.491,1324,3.491,1342,4.126,1372,4.126,1492,3.762,1593,3.762,1729,6.245,1772,4.126,1773,4.126,1783,4.677,1784,4.677,1785,4.677,1786,4.677,1787,4.677,1788,4.677,1789,4.677,1790,6.275,1791,4.677]]],"invertedIndex":[["",{"_index":32,"t":{"44":{"position":[[95,1],[144,1]]},"47":{"position":[[157,1],[184,1]]},"53":{"position":[[1965,1],[2653,1],[2655,1],[2799,2],[2802,1],[2949,1],[2951,1],[2953,1]]},"63":{"position":[[717,2],[905,57],[990,1],[994,1],[996,1],[998,1],[1024,1],[1026,2],[1032,1],[1038,2],[1041,2],[1044,1],[1046,2],[1049,1],[1051,1],[1055,2],[1061,2],[1064,1],[1066,1],[1068,1],[1072,2],[1080,1],[1082,1],[1092,1],[1094,1],[1096,1],[1098,2],[1101,2],[1104,1],[1114,2],[1117,2],[1120,1],[1126,1],[1179,57],[2057,3],[2156,3],[2249,3],[2322,3],[2352,3],[2391,3],[3081,3],[3177,3],[3218,1],[3276,3],[3300,3],[3321,3],[3449,1],[3773,2],[3776,3],[3780,3],[3784,3],[3788,3],[3808,1],[4253,3],[4367,1],[4425,3],[4544,1],[4868,2],[4871,3],[4875,3],[4879,3],[4883,3],[4903,1],[5405,3],[5531,3],[5651,3],[5708,3],[5727,3],[5893,1],[6063,3],[6235,1],[6569,1]]},"67":{"position":[[928,1],[1070,1]]},"69":{"position":[[323,2],[446,1],[585,1],[660,1],[751,2]]},"71":{"position":[[1548,1],[1610,1]]},"73":{"position":[[1018,1],[1138,1]]},"79":{"position":[[752,1],[792,1],[826,1]]},"81":{"position":[[670,3],[674,1],[808,3],[1045,1]]},"85":{"position":[[1346,1],[1348,1],[1401,1],[1403,1]]},"87":{"position":[[426,3],[493,1]]},"89":{"position":[[297,1],[335,1],[376,1],[399,1],[402,1],[410,3],[621,3],[1285,1],[1293,1],[1296,1],[1307,3],[1441,3],[1703,1],[1711,3],[1791,3],[2009,1],[2061,1],[2087,1]]},"91":{"position":[[539,3],[551,1],[553,2],[576,1],[633,1],[680,1],[724,1]]},"95":{"position":[[363,1],[390,1],[438,1],[450,1],[480,1],[501,1],[540,1],[569,1],[617,1],[626,1],[693,1],[707,1],[783,1],[785,2],[799,1],[807,1],[855,1],[863,1],[921,1]]},"97":{"position":[[117,3],[569,3],[1831,1]]},"99":{"position":[[381,3]]},"101":{"position":[[753,1],[756,1],[764,3],[1030,3],[1244,1],[1321,1],[1329,1],[1332,1],[1341,3],[1481,3],[2367,1],[2375,3],[2452,3],[2557,2],[2560,3],[2637,3],[3153,3],[3157,1],[3257,3]]},"107":{"position":[[1188,57],[1273,1],[1277,1],[1279,1],[1281,1],[1307,1],[1309,2],[1315,1],[1321,2],[1324,2],[1327,1],[1329,2],[1332,1],[1334,1],[1338,2],[1344,2],[1347,1],[1349,1],[1351,1],[1355,2],[1363,1],[1365,1],[1375,1],[1377,1],[1379,1],[1381,2],[1384,2],[1387,1],[1397,2],[1400,2],[1403,1],[1409,1],[1462,57],[1653,3],[1711,1],[1747,3],[1771,3],[1803,3],[1984,1],[2008,1],[2059,3],[2179,1],[2215,3],[2387,1],[2411,1],[2563,1],[2599,3],[2771,1],[2795,1]]},"113":{"position":[[347,1],[355,2],[358,3],[392,3],[1333,1],[1335,1],[1920,1],[1954,1],[2045,1],[2074,3],[2246,2],[2249,1],[2416,1],[2431,1],[2504,1],[2506,1],[2555,1],[2593,1],[2740,1],[2760,1],[2784,1],[4017,1],[4076,1]]},"124":{"position":[[840,2],[909,2]]},"126":{"position":[[871,1],[1045,1],[1618,1],[1792,1]]},"128":{"position":[[429,2],[753,1],[766,1],[832,1]]},"143":{"position":[[285,2],[391,1],[1233,1],[1235,1],[1255,1]]},"154":{"position":[[288,57],[373,1],[377,1],[379,1],[381,1],[407,1],[409,2],[415,1],[421,2],[424,2],[427,1],[429,2],[432,1],[434,1],[438,2],[444,2],[447,1],[449,1],[451,1],[455,2],[463,1],[465,1],[475,1],[477,1],[479,1],[481,2],[484,2],[487,1],[497,2],[500,2],[503,1],[509,1],[562,57],[631,1],[726,1],[773,5],[787,1],[789,3],[805,1],[829,1],[906,1],[970,3],[981,1],[1081,1],[1116,3],[1238,4],[1334,4],[1374,5],[1396,1],[1398,3],[1553,3],[1566,1],[1588,1],[1590,1],[1607,1],[1628,1],[1638,1],[1668,1],[1681,1],[1698,1],[1711,3],[1735,3],[1787,3],[1818,3],[1841,1],[1903,1],[1905,1],[1961,1],[1998,1],[2000,1],[2021,1],[2034,1],[2051,1],[2053,1],[2144,1],[2153,1],[2206,1],[2208,1],[2301,1],[2331,1],[2333,1],[2436,1],[2459,1],[2461,1],[2555,1],[2561,1],[2588,1],[2590,1],[2695,1],[2701,1],[2720,1],[2722,1],[2824,1],[2833,1],[2853,1],[2855,1],[2950,1],[2956,1],[2958,3],[2979,2],[2982,4],[3032,1],[3044,1],[3066,1],[3068,1],[3085,1],[3106,1],[3116,1],[3146,1],[3159,1],[3176,1],[3189,1],[3191,3],[3195,1],[3197,1],[3199,1],[3261,1],[3263,1],[3319,1],[3356,1],[3358,1],[3379,1],[3392,1],[3409,1],[3411,1],[3502,1],[3511,1],[3564,1],[3566,1],[3659,1],[3689,1],[3691,1],[3794,1],[3817,1],[3819,1],[3913,1],[3919,1],[3946,1],[3948,1],[4053,1],[4059,1],[4078,1],[4080,1],[4182,1],[4191,1],[4211,1],[4213,1],[4308,1],[4314,1],[4316,3],[4337,1],[4495,1],[4542,4],[4582,5],[4604,1],[4606,3],[4787,1],[4796,3],[4809,1],[4831,1],[4833,1],[4850,1],[4871,1],[4881,1],[4911,1],[4924,1],[4966,1],[4979,3],[5003,3],[5055,3],[5086,3],[5109,1],[5174,1],[5176,1],[5230,1],[5247,1],[5264,3],[5285,2],[5288,4],[5338,1],[5350,1],[5372,1],[5374,1],[5391,1],[5412,1],[5422,1],[5452,1],[5465,1],[5507,1],[5520,1],[5522,3],[5526,1],[5528,1],[5530,1],[5595,1],[5597,1],[5651,1],[5668,1],[5685,4],[5717,5],[5731,1],[5733,3],[5749,1],[5773,1],[5850,1],[5914,3],[5925,1],[6025,1],[6060,3],[6117,4],[6181,4],[6221,1],[7105,3],[7357,57],[7442,1],[7446,1],[7448,1],[7450,1],[7476,1],[7478,2],[7484,1],[7490,2],[7493,2],[7496,1],[7498,2],[7501,1],[7503,1],[7507,2],[7513,2],[7516,1],[7518,1],[7520,1],[7524,2],[7532,1],[7534,1],[7544,1],[7546,1],[7548,1],[7550,2],[7553,2],[7556,1],[7566,2],[7569,2],[7572,1],[7578,1],[7631,57],[7700,1],[7795,1],[7846,5],[7883,5],[7889,3],[7905,1],[7929,1],[8005,1],[8092,1],[8156,3],[8167,1],[8267,5],[8273,1],[8325,1],[8372,3],[8465,5],[8471,4],[8537,5],[8543,4],[8583,5],[8605,1],[8607,3],[8739,5],[8745,3],[8820,1],[8844,1],[8867,5],[8873,1],[8895,1],[8897,1],[8914,1],[8935,1],[8940,1],[8970,1],[8975,3],[8999,3],[9051,3],[9098,5],[9104,3],[9127,1],[9192,1],[9194,1],[9248,1],[9267,1],[9298,1],[9329,1],[9331,2],[9334,3],[9338,3],[9342,1],[9375,1],[9408,1],[9410,1],[9435,3],[9456,2],[9459,4],[9509,1],[9521,1],[9543,1],[9545,1],[9562,1],[9583,1],[9588,1],[9618,1],[9623,1],[9625,3],[9629,1],[9631,1],[9633,1],[9698,1],[9700,1],[9754,1],[9773,1],[9804,1],[9835,1],[9837,2],[9840,3],[9844,3],[9848,1],[9881,1],[9914,1],[9916,1],[9941,4],[9973,5],[10014,5],[10020,3],[10036,1],[10060,1],[10136,1],[10223,1],[10287,3],[10298,1],[10406,5],[10412,1],[10464,1],[10511,3],[10596,5],[10602,4],[10678,1],[10680,1],[10696,1],[10707,1],[10709,1],[10788,4],[10828,1],[11007,1],[11015,5],[11052,5],[11058,3],[11074,1],[11098,1],[11174,1],[11261,1],[11325,3],[11336,1],[11388,1],[11435,1],[11518,1],[11553,3],[11674,5],[11680,4],[11779,5],[11785,4],[11825,5],[11847,1],[11849,3],[12001,5],[12007,3],[12062,1],[12088,5],[12094,1],[12111,1],[12131,1],[12148,3],[12172,3],[12224,3],[12271,5],[12277,3],[12300,1],[12365,1],[12367,1],[12421,1],[12442,3],[12463,2],[12466,4],[12516,1],[12528,1],[12545,1],[12565,1],[12582,1],[12584,3],[12588,1],[12590,1],[12592,1],[12657,1],[12659,1],[12713,1],[12734,4],[12766,5],[12807,5],[12813,3],[12829,1],[12853,1],[12929,1],[13016,1],[13080,3],[13091,1],[13143,1],[13190,1],[13273,1],[13308,3],[13381,5],[13387,4],[13499,5],[13505,4],[13545,1]]},"178":{"position":[[177,1],[216,2],[391,2],[480,1]]},"180":{"position":[[233,1],[272,2],[437,2],[526,1]]},"184":{"position":[[678,1]]},"188":{"position":[[135,1],[283,1]]},"190":{"position":[[116,1],[233,1]]},"192":{"position":[[371,1],[507,1]]},"194":{"position":[[511,3],[813,1],[868,1],[914,1],[958,1],[973,1],[1015,1],[1110,1],[1132,1],[1188,1],[1293,1],[1318,1],[1380,1],[1494,1],[1780,1],[1867,1],[1904,1],[1938,1],[1969,1],[2003,1],[2026,1],[2029,1],[2122,1],[2673,1],[2675,6],[2724,1],[2850,1],[2870,1],[2893,1],[3008,6],[3041,2],[3106,1],[3328,6],[3371,2],[3409,1],[3529,1],[3531,1],[3710,2],[3871,1]]},"196":{"position":[[447,1],[590,1]]},"198":{"position":[[274,1],[430,1]]},"200":{"position":[[1075,1],[1172,1]]},"202":{"position":[[253,2],[280,1],[321,1],[326,2],[750,1],[881,1]]},"204":{"position":[[105,1],[267,1]]},"206":{"position":[[822,1],[833,1],[1010,2],[1022,1],[1114,2],[1117,2]]},"212":{"position":[[1522,1],[1573,1],[1653,1],[1699,1]]},"214":{"position":[[276,1],[357,1]]},"218":{"position":[[469,1],[518,1],[605,1],[630,1],[649,1],[677,1],[690,1],[704,1],[706,1],[1290,1]]},"220":{"position":[[427,1],[581,1],[680,1],[789,1]]},"222":{"position":[[129,57],[214,1],[218,1],[220,1],[222,1],[248,1],[250,2],[256,1],[262,2],[265,2],[268,1],[270,2],[273,1],[275,1],[279,2],[285,2],[288,1],[290,1],[292,1],[296,2],[304,1],[306,1],[316,1],[318,1],[320,1],[322,2],[325,2],[328,1],[338,2],[341,2],[344,1],[350,1],[403,57],[591,3],[647,3],[726,3],[818,3],[848,3],[906,3],[981,3],[994,1],[1078,1],[1117,3],[1141,3],[1162,3],[1302,2],[1305,1],[1307,2],[1310,1],[1312,2],[1315,1],[1317,4],[1322,1],[1324,4],[1329,1],[1331,4],[1336,1],[1338,6],[1345,1],[1347,6],[1354,1],[1356,6],[1363,1],[1365,8],[1374,1],[1388,3],[1392,3],[1396,1],[1398,6],[1412,6],[1451,1],[1453,10],[1464,1],[1466,3],[1470,1],[1478,4],[1483,1],[1485,3],[1489,4],[1494,1],[1496,3],[1500,1],[1502,3],[1506,1],[1508,6],[1515,1],[1517,3],[1521,1],[1523,3],[1527,1],[1550,2],[1559,3],[1635,1],[1719,1],[1885,2],[1888,1],[1890,2],[1893,1],[1895,2],[1898,1],[1900,4],[1905,1],[1907,4],[1912,1],[1914,4],[1919,1],[1921,6],[1928,1],[1930,6],[1937,1],[1939,6],[1946,1],[1948,8],[1957,1],[1971,3],[1975,3],[1979,1],[1981,6],[1995,6],[2034,1],[2036,10],[2047,1],[2049,3],[2053,1],[2061,4],[2066,1],[2068,3],[2072,4],[2077,1],[2079,3],[2083,1],[2085,3],[2089,1],[2091,6],[2098,1],[2100,3],[2104,1],[2106,3],[2110,1],[2133,2],[2142,3],[2198,3],[2277,3],[2334,3],[2353,3],[2425,2],[2428,1],[2430,2],[2433,1],[2435,2],[2438,1],[2440,4],[2445,1],[2447,4],[2452,1],[2454,4],[2459,1],[2461,6],[2468,1],[2470,6],[2477,1],[2479,6],[2486,1],[2488,8],[2497,1],[2511,3],[2515,3],[2519,1],[2521,6],[2535,6],[2574,1],[2576,10],[2587,1],[2589,3],[2593,1],[2601,4],[2606,1],[2608,3],[2612,4],[2617,1],[2619,3],[2623,1],[2625,3],[2629,1],[2631,6],[2638,1],[2640,3],[2644,1],[2646,3],[2650,1],[2673,2],[2682,3],[2760,2],[2763,1],[2765,2],[2768,1],[2770,2],[2773,1],[2775,4],[2780,1],[2782,4],[2787,1],[2789,4],[2794,1],[2796,6],[2803,1],[2805,6],[2812,1],[2814,6],[2821,1],[2823,8],[2832,1],[2846,3],[2850,3],[2854,1],[2856,6],[2870,6],[2909,1],[2911,10],[2922,1],[2924,3],[2928,1],[2936,4],[2941,1],[2943,3],[2947,4],[2952,1],[2954,3],[2958,1],[2960,3],[2964,1],[2966,6],[2973,1],[2975,3],[2979,1],[2981,3],[2985,1],[3008,2],[3087,2],[3090,1],[3092,2],[3095,1],[3097,2],[3100,1],[3102,4],[3107,1],[3109,4],[3114,1],[3116,4],[3121,1],[3123,6],[3130,1],[3132,6],[3139,1],[3141,6],[3148,1],[3150,8],[3159,1],[3173,3],[3177,3],[3181,1],[3183,6],[3197,6],[3236,1],[3238,10],[3249,1],[3251,3],[3255,1],[3263,4],[3268,1],[3270,3],[3274,4],[3279,1],[3281,3],[3285,1],[3287,3],[3291,1],[3293,6],[3300,1],[3302,3],[3306,1],[3308,3],[3312,1],[3335,2]]},"224":{"position":[[793,3],[810,1],[917,1],[936,1],[1007,3],[1020,3],[1040,3],[1194,3],[1211,1],[1321,1],[1340,1],[1411,3],[1424,3],[1444,3]]},"230":{"position":[[448,1],[538,1]]},"234":{"position":[[555,3],[1132,3],[1159,1],[1326,1],[1434,1],[1495,1],[1501,1],[1518,1],[1540,1],[1566,1],[1605,1],[1618,1],[1641,1],[1678,1],[1691,2],[1808,1],[1889,1],[1921,1],[1981,1],[2005,1]]},"236":{"position":[[699,1],[780,1],[812,1],[872,1],[896,1]]},"238":{"position":[[1064,1],[1355,1],[1645,1],[2001,1]]},"241":{"position":[[565,3]]},"243":{"position":[[254,1],[297,1],[315,1],[317,1]]},"248":{"position":[[61,1],[129,1],[170,1],[198,1],[289,1]]},"250":{"position":[[306,1],[333,1],[381,1],[393,1],[423,1],[444,1],[483,1],[512,1],[560,1],[569,1],[636,1],[650,1],[726,1],[728,2],[742,1],[750,1],[798,1],[806,1],[864,1]]},"254":{"position":[[0,1],[188,1],[245,1]]},"256":{"position":[[0,1],[75,1],[77,2]]},"258":{"position":[[0,1],[104,1],[316,57],[401,1],[405,1],[407,1],[409,1],[435,1],[437,2],[443,1],[449,2],[452,2],[455,1],[457,2],[460,1],[462,1],[466,2],[472,2],[475,1],[477,1],[479,1],[483,2],[491,1],[493,1],[503,1],[505,1],[507,1],[509,2],[512,2],[515,1],[525,2],[528,2],[531,1],[537,1],[590,57]]},"260":{"position":[[251,1],[328,1],[535,57],[620,1],[624,1],[626,1],[628,1],[654,1],[656,2],[662,1],[668,2],[671,2],[674,1],[676,2],[679,1],[681,1],[685,2],[691,2],[694,1],[696,1],[698,1],[702,2],[710,1],[712,1],[722,1],[724,1],[726,1],[728,2],[731,2],[734,1],[744,2],[747,2],[750,1],[756,1],[809,57],[1124,1],[1219,1],[1314,1]]},"262":{"position":[[134,1],[257,1],[276,1],[317,1],[348,1],[391,1],[981,1],[1098,1],[1100,1],[1241,2],[1244,2],[1247,1],[1683,1],[1685,1],[1792,2],[1795,1],[1897,2],[1900,1],[2015,1],[2017,1],[2019,1],[2021,1],[2023,1]]},"268":{"position":[[618,1],[675,1],[876,1],[903,1],[932,1],[955,1],[1126,1],[1153,1],[1182,1],[1205,1],[1220,1],[1263,1]]},"270":{"position":[[151,1],[178,1],[207,1],[230,1],[232,1],[261,1],[263,1],[306,1],[335,1],[337,1],[462,1]]},"272":{"position":[[143,1],[170,1],[199,1],[222,1],[224,1],[253,1],[255,1],[298,1],[327,1],[329,1],[444,1],[805,1],[900,1],[948,1]]},"274":{"position":[[764,1],[824,1]]}}}],["0",{"_index":384,"t":{"63":{"position":[[3477,1],[4572,1]]},"154":{"position":[[9269,1],[9775,1]]}}}],["0.0.0.0:4317",{"_index":560,"t":{"69":{"position":[[1200,12]]}}}],["0.0.0.0:4318",{"_index":562,"t":{"69":{"position":[[1229,12]]}}}],["0.0.0.0:9464",{"_index":568,"t":{"69":{"position":[[1352,14]]}}}],["0.1",{"_index":216,"t":{"53":{"position":[[2585,3]]}}}],["0.35677263",{"_index":944,"t":{"107":{"position":[[2022,11],[2425,11],[2809,11]]}}}],["0.44413814",{"_index":939,"t":{"107":{"position":[[1962,11],[2365,11],[2749,11]]}}}],["0.45719317",{"_index":945,"t":{"107":{"position":[[2034,11],[2437,11],[2821,11]]}}}],["0.4756623",{"_index":940,"t":{"107":{"position":[[1974,9],[2377,9],[2761,9]]}}}],["0.48302334",{"_index":941,"t":{"107":{"position":[[1986,11],[2389,11],[2773,11]]}}}],["0.68240194",{"_index":946,"t":{"107":{"position":[[2046,12],[2449,12],[2833,12]]}}}],["0.68732778",{"_index":938,"t":{"107":{"position":[[1950,11],[2353,11],[2737,11]]}}}],["0.80994359",{"_index":943,"t":{"107":{"position":[[2010,11],[2413,11],[2797,11]]}}}],["0.8286594",{"_index":942,"t":{"107":{"position":[[1998,9],[2401,9],[2785,9]]}}}],["002",{"_index":955,"t":{"109":{"position":[[425,3]]},"154":{"position":[[7090,3]]}}}],["01",{"_index":1061,"t":{"115":{"position":[[794,2]]}}}],["01t00:00:00z",{"_index":1283,"t":{"154":{"position":[[9279,12],[9785,12]]}}}],["01t04:00:00z",{"_index":1285,"t":{"154":{"position":[[9310,12],[9816,12]]}}}],["02",{"_index":1282,"t":{"154":{"position":[[9276,2],[9307,2],[9782,2],[9813,2]]}}}],["023",{"_index":367,"t":{"63":{"position":[[2677,3]]}}}],["043134",{"_index":1742,"t":{"262":{"position":[[1005,6],[1123,6]]}}}],["043141",{"_index":1745,"t":{"262":{"position":[[1270,6],[1708,6],[1818,6],[1923,6]]}}}],["05",{"_index":1288,"t":{"154":{"position":[[9353,2],[9386,2],[9859,2],[9892,2]]}}}],["062343",{"_index":355,"t":{"63":{"position":[[1781,6]]}}}],["07",{"_index":1060,"t":{"115":{"position":[[791,2]]}}}],["073922",{"_index":1263,"t":{"154":{"position":[[6497,6],[7033,6]]}}}],["1",{"_index":361,"t":{"63":{"position":[[2073,2],[2153,2],[2167,2],[2273,2],[3627,1],[4722,1],[5421,2],[5528,2],[5542,2],[5776,2],[6118,2],[6452,2]]},"113":{"position":[[2579,2]]},"120":{"position":[[0,1]]},"124":{"position":[[43,3]]},"126":{"position":[[874,2],[958,2],[1048,2],[1204,2],[1621,2],[1705,2],[1795,2]]},"154":{"position":[[807,2],[903,2],[983,2],[1140,2],[5751,2],[5847,2],[5927,2],[6608,2],[6751,2],[6889,2],[7907,2],[8002,2],[8185,2],[8275,2],[8396,2],[9300,1],[9806,1],[10038,2],[10133,2],[10316,2],[10414,2],[10682,2],[10901,2],[11076,2],[11171,2],[11338,2],[12831,2],[12926,2],[13093,2]]},"163":{"position":[[0,2]]},"165":{"position":[[0,2]]},"167":{"position":[[0,2]]},"169":{"position":[[0,2]]},"184":{"position":[[398,2],[659,1]]},"222":{"position":[[607,2],[658,2],[750,2],[2158,2],[2209,2]]},"262":{"position":[[1758,3],[1863,3],[1981,3]]}}}],["1.1.300",{"_index":1789,"t":{"274":{"position":[[610,7]]}}}],["10",{"_index":599,"t":{"71":{"position":[[1239,2]]},"107":{"position":[[230,3],[1635,2]]},"115":{"position":[[2664,2]]}}}],["100",{"_index":195,"t":{"53":{"position":[[2028,3],[2405,3],[2746,3]]},"126":{"position":[[1364,3],[1515,3],[2774,3],[2925,3]]},"143":{"position":[[1251,3]]},"200":{"position":[[50,4]]}}}],["10eedcca",{"_index":1744,"t":{"262":{"position":[[1130,10]]}}}],["11/30/2023",{"_index":1076,"t":{"115":{"position":[[3044,11]]}}}],["1106",{"_index":1077,"t":{"115":{"position":[[3162,5]]},"178":{"position":[[376,4],[515,5]]},"180":{"position":[[422,4]]},"204":{"position":[[395,5]]},"206":{"position":[[754,6],[957,4],[1722,4]]}}}],["12",{"_index":349,"t":{"63":{"position":[[1534,2],[1600,2],[1661,2],[1736,2],[2681,2],[2799,2],[2902,2]]}}}],["13b",{"_index":1514,"t":{"202":{"position":[[479,3],[525,5]]}}}],["14:23:44,197",{"_index":351,"t":{"63":{"position":[[1540,12]]}}}],["14:24:10,488",{"_index":352,"t":{"63":{"position":[[1606,12]]}}}],["14:24:10,490",{"_index":353,"t":{"63":{"position":[[1667,12],[1742,12]]}}}],["14:24:34,513",{"_index":368,"t":{"63":{"position":[[2687,12]]}}}],["14:24:34,669",{"_index":371,"t":{"63":{"position":[[2805,12],[2908,12]]}}}],["150",{"_index":1475,"t":{"196":{"position":[[68,4],[294,4]]}}}],["16686:16686",{"_index":550,"t":{"69":{"position":[[571,13]]}}}],["172.19.0.0/16",{"_index":736,"t":{"85":{"position":[[1360,16],[2131,14]]}}}],["172.19.0.1",{"_index":738,"t":{"85":{"position":[[1388,12]]}}}],["18",{"_index":350,"t":{"63":{"position":[[1537,2],[1603,2],[1664,2],[1739,2],[2684,2],[2802,2],[2905,2]]}}}],["1].post_list",{"_index":1029,"t":{"113":{"position":[[2565,13]]}}}],["1tb",{"_index":397,"t":{"63":{"position":[[3653,3],[3929,3],[4748,3],[5024,3],[5855,3],[5946,3],[6197,3],[6288,3],[6531,3],[6622,3]]}}}],["2",{"_index":186,"t":{"53":{"position":[[1315,2]]},"55":{"position":[[137,2]]},"63":{"position":[[2094,2],[2216,2],[5469,2],[5618,2],[5675,2],[5828,2],[6170,2],[6504,2]]},"109":{"position":[[616,1]]},"115":{"position":[[2824,1]]},"122":{"position":[[0,1]]},"124":{"position":[[68,3]]},"126":{"position":[[896,2],[1020,2],[1136,2],[1643,2],[1767,2],[1883,2],[1951,2]]},"154":{"position":[[831,2],[967,2],[1083,2],[5775,2],[5911,2],[6027,2],[6084,2],[7931,2],[8089,2],[8235,2],[8327,2],[9424,1],[9930,1],[10062,2],[10220,2],[10366,2],[10466,2],[10535,2],[10698,2],[10915,2],[11100,2],[11258,2],[11390,2],[12855,2],[13013,2],[13145,2]]},"196":{"position":[[163,1]]},"198":{"position":[[359,3]]},"202":{"position":[[523,1]]}}}],["2016",{"_index":1385,"t":{"192":{"position":[[20,4]]}}}],["2023",{"_index":348,"t":{"63":{"position":[[1529,4],[1595,4],[1656,4],[1731,4],[2794,4],[2897,4]]},"115":{"position":[[786,4]]},"154":{"position":[[9271,4],[9302,4],[9348,4],[9381,4],[9777,4],[9808,4],[9854,4],[9887,4]]}}}],["20231201",{"_index":1741,"t":{"262":{"position":[[996,8],[1114,8],[1261,8],[1699,8],[1809,8],[1914,8]]}}}],["20231218",{"_index":354,"t":{"63":{"position":[[1772,8]]}}}],["20231228",{"_index":1262,"t":{"154":{"position":[[6488,8]]}}}],["218a2681",{"_index":1743,"t":{"262":{"position":[[1012,10]]}}}],["239.00",{"_index":405,"t":{"63":{"position":[[3825,7],[4920,7],[5911,7],[6253,7],[6587,7]]}}}],["263,51",{"_index":1307,"t":{"154":{"position":[[13492,6]]}}}],["263,514,550.45",{"_index":1308,"t":{"154":{"position":[[13624,14]]}}}],["263,514,550.45a.csv",{"_index":1306,"t":{"154":{"position":[[13469,19]]}}}],["263514550.45479834",{"_index":1304,"t":{"154":{"position":[[12423,18],[12715,18]]}}}],["3",{"_index":189,"t":{"53":{"position":[[1356,2]]},"55":{"position":[[187,3]]},"61":{"position":[[229,2]]},"63":{"position":[[2624,1],[3792,1],[4887,1],[5876,2],[6218,2],[6552,2]]},"69":{"position":[[241,3]]},"107":{"position":[[359,1]]},"115":{"position":[[2545,1],[2892,1]]},"118":{"position":[[0,1]]},"126":{"position":[[961,2],[1708,2],[2488,1],[2982,1]]},"154":{"position":[[908,2],[5852,2],[8007,2],[8153,2],[10138,2],[10284,2],[11176,2],[11322,2],[11437,2],[11577,2],[12931,2],[13077,2],[13192,2]]},"188":{"position":[[275,1]]},"234":{"position":[[1503,1]]},"238":{"position":[[1713,1]]}}}],["3.5",{"_index":1127,"t":{"131":{"position":[[730,3]]},"135":{"position":[[387,3]]},"200":{"position":[[1161,3]]},"206":{"position":[[744,3],[1712,3]]}}}],["3000:3000",{"_index":608,"t":{"71":{"position":[[1536,11]]}}}],["31t16:00:00z",{"_index":1289,"t":{"154":{"position":[[9356,12],[9862,12]]}}}],["31t20:00:00z",{"_index":1292,"t":{"154":{"position":[[9389,12],[9895,12]]}}}],["32768",{"_index":1401,"t":{"192":{"position":[[500,6]]}}}],["349.00",{"_index":398,"t":{"63":{"position":[[3665,7],[4760,7],[5868,7],[6210,7],[6544,7]]}}}],["385.58",{"_index":410,"t":{"63":{"position":[[3955,7],[5050,7],[5985,7],[6327,7],[6661,7]]}}}],["399.00",{"_index":390,"t":{"63":{"position":[[3519,7],[4614,7],[5820,7],[6162,7],[6496,7]]}}}],["4",{"_index":407,"t":{"63":{"position":[[3903,1],[4073,1],[4998,1],[5168,1],[5919,2],[6261,2],[6595,2]]},"67":{"position":[[668,2],[1067,2]]},"115":{"position":[[544,1]]},"126":{"position":[[2140,1]]},"131":{"position":[[749,2]]},"135":{"position":[[398,2]]},"154":{"position":[[8094,2],[10225,2],[11263,2],[11520,2],[13018,2],[13275,2],[13332,2]]},"178":{"position":[[374,1]]},"180":{"position":[[420,1]]},"198":{"position":[[321,3]]},"204":{"position":[[226,3]]},"206":{"position":[[120,1],[955,1],[1459,1]]},"254":{"position":[[185,2]]},"256":{"position":[[72,2]]}}}],["4317",{"_index":557,"t":{"69":{"position":[[1018,5]]}}}],["4317:4317",{"_index":544,"t":{"69":{"position":[[434,11]]}}}],["4o",{"_index":1483,"t":{"196":{"position":[[585,4]]}}}],["5",{"_index":201,"t":{"53":{"position":[[2118,1],[2285,1],[2896,1]]},"63":{"position":[[4063,2],[5158,2]]},"154":{"position":[[2019,1],[3377,1]]}}}],["5s",{"_index":575,"t":{"69":{"position":[[1884,2]]}}}],["6",{"_index":1111,"t":{"128":{"position":[[1483,1]]}}}],["67814",{"_index":1284,"t":{"154":{"position":[[9292,5],[9798,5]]}}}],["6bc4da86",{"_index":1751,"t":{"262":{"position":[[1715,10]]}}}],["6f29f6c9",{"_index":1752,"t":{"262":{"position":[[1825,10]]}}}],["718",{"_index":1287,"t":{"154":{"position":[[9344,3],[9850,3]]}}}],["719",{"_index":1291,"t":{"154":{"position":[[9377,3],[9883,3]]}}}],["720",{"_index":1294,"t":{"154":{"position":[[9412,4],[9918,4]]}}}],["76186c7a",{"_index":1753,"t":{"262":{"position":[[1930,10]]}}}],["78172.75",{"_index":1258,"t":{"154":{"position":[[5238,8],[5659,8],[6172,8],[6273,8]]}}}],["8000:8000",{"_index":1768,"t":{"268":{"position":[[1210,9]]}}}],["84569",{"_index":1286,"t":{"154":{"position":[[9323,5],[9829,5]]}}}],["86a2aaff",{"_index":1746,"t":{"262":{"position":[[1277,10]]}}}],["87249",{"_index":1293,"t":{"154":{"position":[[9402,5],[9908,5]]}}}],["89912",{"_index":1290,"t":{"154":{"position":[[9369,5],[9875,5]]}}}],["8x7b",{"_index":1400,"t":{"192":{"position":[[495,4]]}}}],["9090:9090",{"_index":553,"t":{"69":{"position":[[648,11]]}}}],["9b411afd",{"_index":1264,"t":{"154":{"position":[[6504,8]]}}}],["9b411afd.yaml",{"_index":1271,"t":{"154":{"position":[[7040,13]]}}}],["_",{"_index":333,"t":{"63":{"position":[[969,1],[971,1],[976,2],[983,1],[992,1],[1029,2],[1053,1],[1070,1],[1084,3],[1110,3]]},"107":{"position":[[1252,1],[1254,1],[1259,2],[1266,1],[1275,1],[1312,2],[1336,1],[1353,1],[1367,3],[1393,3]]},"154":{"position":[[352,1],[354,1],[359,2],[366,1],[375,1],[412,2],[436,1],[453,1],[467,3],[493,3],[7421,1],[7423,1],[7428,2],[7435,1],[7444,1],[7481,2],[7505,1],[7522,1],[7536,3],[7562,3]]},"222":{"position":[[193,1],[195,1],[200,2],[207,1],[216,1],[253,2],[277,1],[294,1],[308,3],[334,3]]},"258":{"position":[[380,1],[382,1],[387,2],[394,1],[403,1],[440,2],[464,1],[481,1],[495,3],[521,3]]},"260":{"position":[[599,1],[601,1],[606,2],[613,1],[622,1],[659,2],[683,1],[700,1],[714,3],[740,3]]}}}],["__",{"_index":334,"t":{"63":{"position":[[973,2],[1000,3],[1009,2],[1034,3],[1058,2],[1088,3],[1106,3],[1122,3]]},"107":{"position":[[1256,2],[1283,3],[1292,2],[1317,3],[1341,2],[1371,3],[1389,3],[1405,3]]},"154":{"position":[[356,2],[383,3],[392,2],[417,3],[441,2],[471,3],[489,3],[505,3],[7425,2],[7452,3],[7461,2],[7486,3],[7510,2],[7540,3],[7558,3],[7574,3]]},"222":{"position":[[197,2],[224,3],[233,2],[258,3],[282,2],[312,3],[330,3],[346,3],[1376,11],[1405,6],[1419,6],[1426,6],[1433,6],[1440,10],[1472,5],[1529,7],[1537,6],[1544,5],[1553,5],[1959,11],[1988,6],[2002,6],[2009,6],[2016,6],[2023,10],[2055,5],[2112,7],[2120,6],[2127,5],[2136,5],[2499,11],[2528,6],[2542,6],[2549,6],[2556,6],[2563,10],[2595,5],[2652,7],[2660,6],[2667,5],[2676,5],[2834,11],[2863,6],[2877,6],[2884,6],[2891,6],[2898,10],[2930,5],[2987,7],[2995,6],[3002,5],[3011,5],[3161,11],[3190,6],[3204,6],[3211,6],[3218,6],[3225,10],[3257,5],[3314,7],[3322,6],[3329,5],[3338,5]]},"258":{"position":[[384,2],[411,3],[420,2],[445,3],[469,2],[499,3],[517,3],[533,3]]},"260":{"position":[[603,2],[630,3],[639,2],[664,3],[688,2],[718,3],[736,3],[752,3]]}}}],["___",{"_index":336,"t":{"63":{"position":[[985,4],[1075,4]]},"107":{"position":[[1268,4],[1358,4]]},"154":{"position":[[368,4],[458,4],[7437,4],[7527,4]]},"222":{"position":[[209,4],[299,4],[1290,3],[1294,3],[1298,3],[1873,3],[1877,3],[1881,3],[2413,3],[2417,3],[2421,3],[2748,3],[2752,3],[2756,3],[3075,3],[3079,3],[3083,3]]},"258":{"position":[[396,4],[486,4],[754,3]]},"260":{"position":[[615,4],[705,4],[973,3]]}}}],["___/\\___/_",{"_index":339,"t":{"63":{"position":[[1166,12]]},"107":{"position":[[1449,12]]},"154":{"position":[[549,12],[7618,12]]},"222":{"position":[[390,12]]},"258":{"position":[[577,12]]},"260":{"position":[[796,12]]}}}],["____",{"_index":337,"t":{"63":{"position":[[1004,4]]},"107":{"position":[[1287,4]]},"154":{"position":[[387,4],[7456,4]]},"222":{"position":[[228,4]]},"258":{"position":[[415,4]]},"260":{"position":[[634,4]]}}}],["_____",{"_index":332,"t":{"63":{"position":[[963,5],[1012,5],[1018,5]]},"107":{"position":[[1246,5],[1295,5],[1301,5]]},"154":{"position":[[346,5],[395,5],[401,5],[7415,5],[7464,5],[7470,5]]},"222":{"position":[[187,5],[236,5],[242,5]]},"258":{"position":[[374,5],[423,5],[429,5]]},"260":{"position":[[593,5],[642,5],[648,5]]}}}],["__call__",{"_index":1684,"t":{"234":{"position":[[2361,8]]}}}],["__call__(self",{"_index":906,"t":{"101":{"position":[[3121,14]]},"218":{"position":[[388,14],[1233,14]]},"234":{"position":[[480,14]]}}}],["__import__",{"_index":1065,"t":{"115":{"position":[[1455,14]]}}}],["__import__\",\"ev",{"_index":93,"t":{"49":{"position":[[686,21]]}}}],["__init__",{"_index":789,"t":{"89":{"position":[[258,9]]},"101":{"position":[[576,9]]},"113":{"position":[[198,9],[2108,9]]},"194":{"position":[[2452,8],[2655,8]]}}}],["__init__(self",{"_index":1436,"t":{"194":{"position":[[1722,14],[2789,14]]}}}],["__main__",{"_index":1179,"t":{"143":{"position":[[288,11]]}}}],["__name__",{"_index":1178,"t":{"143":{"position":[[276,8]]}}}],["_configur",{"_index":1412,"t":{"194":{"position":[[610,10]]}}}],["_configure(self",{"_index":1014,"t":{"113":{"position":[[1902,17]]},"194":{"position":[[795,16]]}}}],["_reduc",{"_index":1242,"t":{"154":{"position":[[2547,7],[3905,7]]}}}],["_stat_funct",{"_index":1239,"t":{"154":{"position":[[2421,14],[3779,14]]}}}],["_|\\__,_|___/_|\\_\\|__/|__/\\___/\\__,_",{"_index":338,"t":{"63":{"position":[[1128,37]]},"107":{"position":[[1411,37]]},"154":{"position":[[511,37],[7580,37]]},"222":{"position":[[352,37]]},"258":{"position":[[539,37]]},"260":{"position":[[758,37]]}}}],["_|_",{"_index":335,"t":{"63":{"position":[[979,3]]},"107":{"position":[[1262,3]]},"154":{"position":[[362,3],[7431,3]]},"222":{"position":[[203,3]]},"258":{"position":[[390,3]]},"260":{"position":[[609,3]]}}}],["abc",{"_index":1596,"t":{"222":{"position":[[574,3],[626,5],[705,5],[797,5],[885,5],[960,5],[1040,5],[1681,5],[2177,5],[2256,5],[2384,5],[2719,5],[3046,5]]}}}],["abc/def.txt",{"_index":1099,"t":{"128":{"position":[[294,12],[355,12],[477,13],[678,12],[768,14],[1056,12],[1333,14],[1439,14]]}}}],["abov",{"_index":241,"t":{"55":{"position":[[13,6]]},"63":{"position":[[663,5],[3377,5],[3411,5],[4472,5],[4506,5]]},"71":{"position":[[1120,5]]},"107":{"position":[[1859,5],[1893,5],[2262,5],[2296,5],[2646,5],[2680,5]]},"109":{"position":[[675,5]]},"113":{"position":[[2900,5]]},"154":{"position":[[1886,5],[3244,5],[5154,5],[5192,5],[5575,5],[5613,5],[9172,5],[9210,5],[9678,5],[9716,5],[12345,5],[12383,5],[12637,5],[12675,5]]},"194":{"position":[[3663,5]]},"206":{"position":[[1693,5]]},"222":{"position":[[1218,5],[1252,5],[1801,5],[1835,5]]},"230":{"position":[[631,5]]},"234":{"position":[[2728,6]]},"238":{"position":[[1066,6],[1237,5]]}}}],["absolut",{"_index":1733,"t":{"260":{"position":[[1751,8]]}}}],["abstract",{"_index":121,"t":{"51":{"position":[[455,9]]},"73":{"position":[[190,11],[337,11]]}}}],["access",{"_index":520,"t":{"67":{"position":[[1964,6]]},"83":{"position":[[280,6],[437,6]]},"85":{"position":[[79,6],[274,6],[367,6],[901,9],[1177,6]]},"101":{"position":[[3021,6]]},"238":{"position":[[3342,8]]},"268":{"position":[[1328,6]]},"272":{"position":[[509,6]]},"274":{"position":[[147,6]]}}}],["accessories:1",{"_index":394,"t":{"63":{"position":[[3606,13],[3733,13],[4042,13],[4701,13],[4828,13],[5137,13]]}}}],["accomplish",{"_index":1640,"t":{"228":{"position":[[1762,10]]},"230":{"position":[[146,10]]},"262":{"position":[[1567,11]]}}}],["account",{"_index":1312,"t":{"165":{"position":[[13,7]]},"167":{"position":[[83,7]]},"169":{"position":[[96,7]]},"178":{"position":[[10,7]]},"180":{"position":[[10,7],[80,7]]},"188":{"position":[[10,7]]},"190":{"position":[[10,7]]},"192":{"position":[[188,7]]},"198":{"position":[[93,7]]},"204":{"position":[[10,7]]},"214":{"position":[[80,7]]}}}],["accumul",{"_index":586,"t":{"71":{"position":[[633,11]]}}}],["accur",{"_index":1553,"t":{"212":{"position":[[573,11]]}}}],["accuraci",{"_index":1698,"t":{"238":{"position":[[2588,9]]}}}],["achiev",{"_index":1547,"t":{"210":{"position":[[816,7]]},"228":{"position":[[681,7],[1907,7]]}}}],["activ",{"_index":269,"t":{"59":{"position":[[121,9],[323,9]]},"196":{"position":[[994,11]]},"248":{"position":[[178,8]]},"260":{"position":[[1841,6]]}}}],["actual",{"_index":229,"t":{"53":{"position":[[3218,6]]},"85":{"position":[[2049,6]]},"124":{"position":[[358,8]]},"188":{"position":[[939,6]]},"200":{"position":[[1256,6]]}}}],["ad",{"_index":177,"t":{"53":{"position":[[1072,6]]},"81":{"position":[[531,6]]},"113":{"position":[[512,6]]},"194":{"position":[[2617,6]]},"238":{"position":[[2060,5]]}}}],["ada",{"_index":954,"t":{"109":{"position":[[421,3]]},"154":{"position":[[7086,3]]}}}],["adapt",{"_index":971,"t":{"111":{"position":[[191,7]]}}}],["add",{"_index":26,"t":{"44":{"position":[[5,3]]},"49":{"position":[[34,3]]},"51":{"position":[[61,3],[238,3]]},"71":{"position":[[286,3],[1357,3]]},"73":{"position":[[175,3],[725,3]]},"81":{"position":[[491,3],[589,3]]},"83":{"position":[[926,3]]},"85":{"position":[[1720,4],[1931,3]]},"105":{"position":[[175,3]]},"111":{"position":[[809,3]]},"113":{"position":[[3707,3]]},"137":{"position":[[1128,3]]},"143":{"position":[[643,3]]},"150":{"position":[[25,3],[1041,3]]},"178":{"position":[[122,3]]},"180":{"position":[[178,3]]},"188":{"position":[[80,3]]},"190":{"position":[[53,3]]},"192":{"position":[[312,3]]},"196":{"position":[[384,3],[1028,3]]},"198":{"position":[[215,3]]},"200":{"position":[[1012,3]]},"202":{"position":[[695,3]]},"204":{"position":[[50,3]]},"214":{"position":[[217,3]]},"218":{"position":[[536,3]]},"234":{"position":[[655,3],[996,4]]},"238":{"position":[[1454,3]]},"241":{"position":[[1009,3]]}}}],["add_artifact",{"_index":1689,"t":{"236":{"position":[[284,12],[493,12]]}}}],["add_prompt_s",{"_index":629,"t":{"73":{"position":[[708,16]]}}}],["addit",{"_index":237,"t":{"53":{"position":[[3490,10]]},"73":{"position":[[761,9]]},"77":{"position":[[527,9]]},"79":{"position":[[269,10]]},"81":{"position":[[73,10],[495,10],[690,10]]},"85":{"position":[[1728,10]]},"87":{"position":[[61,10]]},"89":{"position":[[599,10]]},"97":{"position":[[797,9]]},"113":{"position":[[3869,8]]},"180":{"position":[[604,10]]},"234":{"position":[[1004,10]]},"236":{"position":[[47,10]]},"238":{"position":[[993,8]]},"268":{"position":[[330,10]]},"270":{"position":[[624,9]]}}}],["address",{"_index":18,"t":{"41":{"position":[[201,7]]},"67":{"position":[[2460,8]]},"85":{"position":[[575,7],[680,7],[706,8],[847,9],[1507,7],[1704,10]]},"105":{"position":[[383,7]]},"274":{"position":[[251,7]]}}}],["affect",{"_index":273,"t":{"59":{"position":[[203,6]]}}}],["aforement",{"_index":1558,"t":{"212":{"position":[[1176,14]]}}}],["afterward",{"_index":1208,"t":{"150":{"position":[[1117,10]]}}}],["again",{"_index":331,"t":{"63":{"position":[[677,5],[2569,5]]},"154":{"position":[[4488,6],[7273,6]]}}}],["agent",{"_index":41,"t":{"47":{"position":[[0,5]]},"75":{"position":[[97,5],[387,5]]},"77":{"position":[[702,5]]},"81":{"position":[[1269,5]]},"83":{"position":[[517,5]]},"85":{"position":[[19,5],[151,5]]},"150":{"position":[[4,5],[337,5],[467,5],[821,5]]},"182":{"position":[[292,6]]},"186":{"position":[[295,6],[310,5],[352,5]]},"210":{"position":[[13,5]]},"212":{"position":[[726,5]]},"228":{"position":[[27,5]]}}}],["ago",{"_index":144,"t":{"53":{"position":[[279,4]]}}}],["ai",{"_index":340,"t":{"63":{"position":[[1269,2],[1958,2]]},"107":{"position":[[1552,2]]},"154":{"position":[[653,2],[7722,2]]},"165":{"position":[[31,2]]},"169":{"position":[[45,2]]},"171":{"position":[[25,2]]},"190":{"position":[[28,2]]},"196":{"position":[[14,2],[145,2],[201,2],[259,2],[355,2],[658,2],[850,2]]},"198":{"position":[[42,2]]},"222":{"position":[[493,2]]},"258":{"position":[[680,2]]},"260":{"position":[[899,2],[1241,2]]},"272":{"position":[[827,2]]}}}],["algorithm",{"_index":1631,"t":{"228":{"position":[[526,10],[585,10]]},"238":{"position":[[1721,10]]}}}],["alia",{"_index":919,"t":{"105":{"position":[[743,5]]},"113":{"position":[[1272,6],[1442,6],[1453,5],[4010,6]]}}}],["alibaba",{"_index":1316,"t":{"167":{"position":[[47,8]]},"214":{"position":[[44,8]]}}}],["align",{"_index":953,"t":{"109":{"position":[[305,7]]}}}],["allow",{"_index":21,"t":{"41":{"position":[[237,6]]},"49":{"position":[[414,7],[590,7],[813,7]]},"51":{"position":[[519,7]]},"65":{"position":[[128,6]]},"71":{"position":[[276,6]]},"85":{"position":[[224,5],[402,8],[606,5]]},"101":{"position":[[233,6]]},"107":{"position":[[604,5],[832,6],[1067,7]]},"113":{"position":[[506,5]]},"115":{"position":[[1183,7],[1359,7]]},"224":{"position":[[476,6]]},"228":{"position":[[361,6],[550,6]]},"236":{"position":[[306,6]]},"241":{"position":[[66,6],[763,8]]}}}],["allowed_modul",{"_index":103,"t":{"49":{"position":[[874,15]]}}}],["alreadi",{"_index":172,"t":{"53":{"position":[[999,7]]},"145":{"position":[[200,7],[261,7]]}}}],["altern",{"_index":974,"t":{"111":{"position":[[519,11],[633,11]]},"150":{"position":[[81,14]]}}}],["although",{"_index":1715,"t":{"241":{"position":[[1155,8]]}}}],["alway",{"_index":648,"t":{"75":{"position":[[424,6]]},"85":{"position":[[2622,6]]},"97":{"position":[[192,6],[737,6]]},"128":{"position":[[132,6]]}}}],["analysi",{"_index":118,"t":{"51":{"position":[[350,8],[609,8]]}}}],["analyt",{"_index":1624,"t":{"228":{"position":[[86,9],[267,9]]}}}],["analyz",{"_index":442,"t":{"65":{"position":[[538,9]]}}}],["annot",{"_index":588,"t":{"71":{"position":[[709,8]]},"97":{"position":[[1737,10]]},"126":{"position":[[367,10]]}}}],["anomali",{"_index":1137,"t":{"137":{"position":[[241,9],[1070,9],[1226,7]]},"230":{"position":[[356,7],[787,9]]},"234":{"position":[[253,7],[597,9],[749,7],[1105,7],[1694,9],[2765,9]]},"236":{"position":[[407,7]]},"238":{"position":[[1243,7],[1396,9],[1548,7],[1694,9],[2101,7],[2202,7]]},"262":{"position":[[1383,9]]}}}],["anomaly_count",{"_index":1675,"t":{"234":{"position":[[1627,13]]}}}],["anomaly_descript",{"_index":1651,"t":{"230":{"position":[[518,19]]}}}],["anomaly_detect",{"_index":1150,"t":{"137":{"position":[[1013,18],[1032,17]]},"230":{"position":[[674,18],[754,17]]},"234":{"position":[[559,17]]},"238":{"position":[[1275,17],[1358,17],[2367,17],[2630,17]]}}}],["anomaly_detection(df",{"_index":1652,"t":{"230":{"position":[[540,21]]}}}],["anomaly_detection.pi",{"_index":1696,"t":{"238":{"position":[[2411,21]]}}}],["anomaly_detection_cod",{"_index":1700,"t":{"238":{"position":[[2776,22]]}}}],["anomaly_detection_code.pi",{"_index":1699,"t":{"238":{"position":[[2674,26]]}}}],["anomaly_df",{"_index":1650,"t":{"230":{"position":[[506,11]]}}}],["anomalydetectionplugin(plugin",{"_index":1658,"t":{"234":{"position":[[444,31],[2255,32]]}}}],["anonym",{"_index":909,"t":{"101":{"position":[[3244,12]]}}}],["anoth",{"_index":147,"t":{"53":{"position":[[337,7]]},"67":{"position":[[690,7],[1566,7]]},"85":{"position":[[1839,7]]},"124":{"position":[[627,7]]},"126":{"position":[[429,7]]},"150":{"position":[[112,7]]},"202":{"position":[[363,7]]},"212":{"position":[[614,7]]}}}],["answer",{"_index":1045,"t":{"113":{"position":[[4185,6]]}}}],["anthrop",{"_index":1366,"t":{"188":{"position":[[21,9],[61,9],[153,12],[390,9],[642,9],[946,9]]},"200":{"position":[[127,10]]}}}],["anthropic'",{"_index":1371,"t":{"188":{"position":[[424,11]]}}}],["anyon",{"_index":1784,"t":{"274":{"position":[[136,6]]}}}],["anyth",{"_index":1503,"t":{"200":{"position":[[1131,11]]}}}],["api",{"_index":482,"t":{"67":{"position":[[229,4]]},"109":{"position":[[151,4],[691,5]]},"111":{"position":[[68,5],[210,4]]},"115":{"position":[[586,4],[633,3],[655,4],[701,4],[781,4],[859,4],[961,3]]},"165":{"position":[[47,3]]},"167":{"position":[[103,3]]},"169":{"position":[[116,3]]},"173":{"position":[[49,3]]},"178":{"position":[[47,3]]},"188":{"position":[[44,3],[400,3],[443,3],[956,3]]},"190":{"position":[[44,3]]},"192":{"position":[[208,3],[559,4]]},"194":{"position":[[49,3],[130,3],[667,3],[2279,3],[2290,3],[2425,4],[3522,6],[3810,3],[3962,4],[4010,4],[4026,3],[4094,4],[4205,3]]},"196":{"position":[[110,3],[278,3]]},"198":{"position":[[113,3],[477,4]]},"200":{"position":[[172,3],[513,3],[660,3],[849,3],[1240,3]]},"202":{"position":[[659,3]]},"204":{"position":[[41,3]]},"214":{"position":[[100,3],[405,4]]},"236":{"position":[[297,3],[506,3]]},"252":{"position":[[59,3]]},"254":{"position":[[131,3]]},"256":{"position":[[22,3],[103,3],[193,4]]}}}],["api_key",{"_index":1420,"t":{"194":{"position":[[931,10]]}}}],["app",{"_index":796,"t":{"89":{"position":[[440,4],[1059,4],[1640,4],[1735,4],[1780,3],[1842,4],[1885,3],[2005,3],[2453,4],[2516,4]]},"91":{"position":[[107,4]]},"99":{"position":[[114,4]]},"101":{"position":[[75,4],[138,4],[187,4],[291,4],[344,3],[885,3],[1531,4],[1605,4],[2331,3]]},"262":{"position":[[272,3]]}}}],["app'",{"_index":833,"t":{"91":{"position":[[848,5]]}}}],["app.get_sess",{"_index":816,"t":{"89":{"position":[[2063,17]]},"262":{"position":[[319,17]]}}}],["app.pi",{"_index":1791,"t":{"274":{"position":[[882,6]]}}}],["app.stop",{"_index":820,"t":{"89":{"position":[[2153,10]]}}}],["app/entrypoint_chainlit.sh",{"_index":1770,"t":{"268":{"position":[[1235,27]]}}}],["app/taskweaver/loc",{"_index":1780,"t":{"272":{"position":[[566,22],[630,22]]}}}],["app/taskweaver/local/example.csv",{"_index":1782,"t":{"272":{"position":[[908,33]]}}}],["app_dir",{"_index":791,"t":{"89":{"position":[[274,8],[452,8],[629,7]]},"262":{"position":[[249,7]]}}}],["app_injector",{"_index":875,"t":{"101":{"position":[[631,13],[867,13]]}}}],["appbasedir",{"_index":1075,"t":{"115":{"position":[[2994,13]]}}}],["appbasedir}/codeinterpreter_exampl",{"_index":1073,"t":{"115":{"position":[[2100,38]]}}}],["appbasedir}/planner_exampl",{"_index":911,"t":{"105":{"position":[[86,31]]},"115":{"position":[[1797,30]]}}}],["appbasedir}/plugin",{"_index":1071,"t":{"115":{"position":[[1711,21]]}}}],["append",{"_index":311,"t":{"59":{"position":[[1391,8]]},"71":{"position":[[1412,9]]},"212":{"position":[[1294,8]]}}}],["appli",{"_index":766,"t":{"85":{"position":[[2702,8]]},"230":{"position":[[350,5]]}}}],["approach",{"_index":716,"t":{"85":{"position":[[309,8],[2365,8]]}}}],["appsessionconfig",{"_index":879,"t":{"101":{"position":[[706,17]]}}}],["arbitrary_str",{"_index":1518,"t":{"202":{"position":[[809,19]]}}}],["architectur",{"_index":500,"t":{"67":{"position":[[1160,12]]}}}],["arg",{"_index":637,"t":{"73":{"position":[[1120,6]]},"87":{"position":[[230,5]]},"91":{"position":[[337,5]]},"97":{"position":[[360,5]]},"99":{"position":[[236,5]]},"218":{"position":[[403,6]]}}}],["argument",{"_index":800,"t":{"89":{"position":[[610,10]]},"137":{"position":[[1258,9],[1405,9],[1693,9]]},"200":{"position":[[818,8]]},"241":{"position":[[670,8]]},"243":{"position":[[179,10],[284,12]]}}}],["argument1",{"_index":907,"t":{"101":{"position":[[3136,10]]}}}],["array",{"_index":221,"t":{"53":{"position":[[2702,7],[2729,5],[2844,7],[2871,5]]}}}],["array([0.09918602",{"_index":937,"t":{"107":{"position":[[1931,18],[2334,18],[2718,18]]}}}],["arrow",{"_index":1556,"t":{"212":{"position":[[1116,6]]}}}],["art",{"_index":1140,"t":{"137":{"position":[[300,4],[1395,3]]},"216":{"position":[[129,4]]},"220":{"position":[[476,3],[556,4],[732,3],[819,4]]},"222":{"position":[[587,3],[643,3],[722,3],[814,3],[902,3],[977,3],[1057,3],[1698,3],[2194,3],[2273,3],[2318,3],[2408,4],[2743,4],[3070,4]]}}}],["artifact",{"_index":799,"t":{"89":{"position":[[535,10],[771,10],[789,9],[941,9]]},"97":{"position":[[1182,8]]},"218":{"position":[[540,8]]},"234":{"position":[[1837,8],[1891,8],[1923,8]]},"236":{"position":[[534,9],[548,9],[728,8],[782,8],[814,8]]}}}],["artifact_path",{"_index":1253,"t":{"154":{"position":[[2962,16],[5268,16],[9439,16],[12446,16]]}}}],["ascii",{"_index":1139,"t":{"137":{"position":[[294,5],[1389,5]]},"216":{"position":[[123,5]]},"220":{"position":[[470,5],[550,5],[726,5],[813,5]]},"222":{"position":[[581,5],[637,5],[716,5],[808,5],[896,5],[971,5],[1051,5],[1692,5],[2188,5],[2267,5],[2312,5],[2402,5],[2737,5],[3064,5]]}}}],["ascii_art_result",{"_index":1597,"t":{"222":{"position":[[1061,16],[1100,16],[1702,16],[1741,16]]}}}],["ascii_art_str",{"_index":1590,"t":{"218":{"position":[[1276,13],[1347,13]]}}}],["ascii_rend",{"_index":1156,"t":{"137":{"position":[[1335,13]]},"218":{"position":[[204,13]]},"220":{"position":[[372,12]]},"241":{"position":[[279,12],[534,12]]},"243":{"position":[[268,15]]}}}],["ascii_render(\"abc",{"_index":1598,"t":{"222":{"position":[[1080,19],[1721,19]]}}}],["ascii_render(text='hello",{"_index":1595,"t":{"220":{"position":[[583,24]]}}}],["ascii_render.pi",{"_index":1165,"t":{"139":{"position":[[139,15]]},"143":{"position":[[245,15]]},"218":{"position":[[27,15]]}}}],["ascii_render.yaml",{"_index":1166,"t":{"139":{"position":[[159,18]]},"220":{"position":[[308,17]]}}}],["asciirenderplugin(name=\"ascii_rend",{"_index":1183,"t":{"143":{"position":[[393,38]]}}}],["asciirenderplugin(plugin",{"_index":1588,"t":{"218":{"position":[[1202,26]]}}}],["ask",{"_index":199,"t":{"53":{"position":[[2096,5],[2465,5]]},"63":{"position":[[1815,3]]},"83":{"position":[[509,3]]},"135":{"position":[[114,5]]},"137":{"position":[[65,3]]},"150":{"position":[[197,4],[406,4]]},"154":{"position":[[7288,3]]},"212":{"position":[[220,3]]}}}],["assembl",{"_index":1718,"t":{"243":{"position":[[345,8]]}}}],["assign",{"_index":1335,"t":{"180":{"position":[[38,6],[1579,8]]}}}],["assist",{"_index":203,"t":{"53":{"position":[[2175,9]]},"63":{"position":[[1272,10],[1961,10]]},"107":{"position":[[1555,10]]},"111":{"position":[[821,9]]},"137":{"position":[[187,6],[478,6]]},"154":{"position":[[656,10],[7725,10]]},"222":{"position":[[496,10]]},"258":{"position":[[683,10]]},"260":{"position":[[902,10],[1244,10]]},"272":{"position":[[830,10]]}}}],["associ",{"_index":834,"t":{"91":{"position":[[988,10]]},"95":{"position":[[142,10]]}}}],["assum",{"_index":525,"t":{"67":{"position":[[2089,6]]},"258":{"position":[[2,6]]},"260":{"position":[[253,6]]},"274":{"position":[[766,6]]}}}],["ast",{"_index":120,"t":{"51":{"position":[[451,3],[498,3]]}}}],["atta",{"_index":1750,"t":{"262":{"position":[[1693,5],[1803,5],[1908,5]]}}}],["attach",{"_index":768,"t":{"87":{"position":[[3,10],[135,11],[147,13],[200,8],[258,11],[563,11]]},"93":{"position":[[217,8]]},"97":{"position":[[295,11],[544,11],[1052,11],[1081,10],[1205,10]]},"124":{"position":[[665,12]]},"126":{"position":[[2013,11],[2463,10],[2490,12],[2513,10],[2556,10],[2596,10],[2957,10],[2984,12]]},"128":{"position":[[1153,11],[1458,10],[1485,12],[1508,10],[1569,10],[1633,10],[1721,10],[1777,10],[1859,10]]},"212":{"position":[[1275,10],[1363,10],[2173,10],[2341,11]]}}}],["attachment_list",{"_index":854,"t":{"97":{"position":[[517,16],[632,16],[1023,15]]},"124":{"position":[[823,16],[892,16]]},"126":{"position":[[676,16],[827,16],[1434,16],[1574,16]]},"128":{"position":[[412,16],[577,16]]},"262":{"position":[[1222,18],[1664,18]]}}}],["attachmenttyp",{"_index":780,"t":{"87":{"position":[[444,14],[500,14]]}}}],["attempt",{"_index":1201,"t":{"150":{"position":[[287,8]]},"154":{"position":[[249,9]]}}}],["attribut",{"_index":383,"t":{"63":{"position":[[3466,10],[4160,11],[4176,10],[4561,10],[5255,11],[5271,10]]},"65":{"position":[[1332,11]]},"71":{"position":[[290,10],[359,11],[747,9]]},"73":{"position":[[634,9]]},"113":{"position":[[3524,11]]}}}],["authent",{"_index":1342,"t":{"180":{"position":[[672,14],[707,14],[818,12],[1113,14],[1136,14],[1310,14],[1457,15],[1743,14],[1895,15]]},"274":{"position":[[286,14]]}}}],["author",{"_index":1787,"t":{"274":{"position":[[305,14]]}}}],["auto",{"_index":247,"t":{"57":{"position":[[29,4]]},"59":{"position":[[38,4],[677,4]]},"61":{"position":[[63,4],[171,4]]},"63":{"position":[[17,4],[314,4],[720,4],[762,4],[856,4],[1420,4],[2481,4],[2586,4]]},"109":{"position":[[78,4]]},"115":{"position":[[2300,4],[2508,4]]}}}],["autom",{"_index":1628,"t":{"228":{"position":[[289,10]]}}}],["automat",{"_index":268,"t":{"59":{"position":[[76,9],[294,9],[1332,9]]},"63":{"position":[[375,13]]},"200":{"position":[[891,13]]},"228":{"position":[[1253,13]]},"274":{"position":[[952,14]]}}}],["avail",{"_index":422,"t":{"63":{"position":[[6049,13],[6391,13],[6725,13]]},"67":{"position":[[804,9]]},"79":{"position":[[423,9],[983,10]]},"83":{"position":[[585,9],[877,9]]},"91":{"position":[[904,9]]},"93":{"position":[[195,9]]},"101":{"position":[[2764,9]]},"115":{"position":[[34,9]]},"137":{"position":[[143,9],[1515,9]]},"180":{"position":[[874,12],[1236,9]]},"188":{"position":[[359,9]]},"260":{"position":[[1078,9],[1188,9]]},"262":{"position":[[1771,9],[1876,9],[1994,9]]}}}],["avoid",{"_index":1359,"t":{"184":{"position":[[508,5]]}}}],["awar",{"_index":1132,"t":{"133":{"position":[[387,5]]}}}],["az",{"_index":1347,"t":{"180":{"position":[[1230,2],[1301,2]]}}}],["azur",{"_index":1058,"t":{"115":{"position":[[725,6]]},"178":{"position":[[21,5],[430,5]]},"180":{"position":[[21,5],[56,5],[476,5],[568,5],[778,5],[1364,5],[1417,6],[1513,5]]},"194":{"position":[[2942,8],[3263,8],[3440,6]]},"252":{"position":[[177,5]]},"254":{"position":[[98,8],[193,5]]}}}],["azure_ad",{"_index":1458,"t":{"194":{"position":[[2951,12],[3272,12]]}}}],["azure_client_id=\"your_client_id",{"_index":1350,"t":{"180":{"position":[[1710,32]]}}}],["azure_ml",{"_index":1465,"t":{"194":{"position":[[3374,11]]}}}],["azurecli",{"_index":1345,"t":{"180":{"position":[[1156,8],[1210,8]]}}}],["b",{"_index":1603,"t":{"224":{"position":[[244,2],[664,1],[1144,2],[1244,2],[1260,1]]}}}],["back",{"_index":366,"t":{"63":{"position":[[2447,4]]},"113":{"position":[[766,4],[3042,4]]},"131":{"position":[[304,4],[505,4]]}}}],["backend",{"_index":510,"t":{"67":{"position":[[1589,8],[1671,7],[1711,8]]}}}],["background",{"_index":873,"t":{"101":{"position":[[482,11]]}}}],["backup",{"_index":1413,"t":{"194":{"position":[[688,6]]}}}],["backup_model",{"_index":1428,"t":{"194":{"position":[[1205,15]]}}}],["bar",{"_index":453,"t":{"65":{"position":[[931,4]]}}}],["base",{"_index":175,"t":{"53":{"position":[[1042,5],[1404,5],[1717,5]]},"79":{"position":[[754,5]]},"95":{"position":[[1285,4]]},"109":{"position":[[498,4],[521,4]]},"113":{"position":[[366,4]]},"115":{"position":[[563,4],[1049,4]]},"131":{"position":[[173,5]]},"194":{"position":[[3932,5]]},"202":{"position":[[663,4]]},"212":{"position":[[262,5],[2424,5]]},"234":{"position":[[1035,5]]},"243":{"position":[[36,5]]},"258":{"position":[[865,5]]},"260":{"position":[[2325,4]]}}}],["bash",{"_index":16,"t":{"41":{"position":[[179,4]]},"63":{"position":[[897,7]]}}}],["basic",{"_index":481,"t":{"67":{"position":[[177,9]]},"99":{"position":[[161,5]]},"150":{"position":[[650,5]]},"228":{"position":[[1420,5]]}}}],["be",{"_index":727,"t":{"85":{"position":[[688,5]]},"89":{"position":[[902,5]]}}}],["becom",{"_index":129,"t":{"53":{"position":[[54,6]]}}}],["befor",{"_index":46,"t":{"47":{"position":[[55,6],[391,6]]},"49":{"position":[[202,6]]},"63":{"position":[[0,6]]},"85":{"position":[[2695,6]]},"89":{"position":[[1769,6],[1874,6]]},"101":{"position":[[2426,6]]},"137":{"position":[[989,6]]},"202":{"position":[[1033,7]]},"222":{"position":[[3410,6]]},"228":{"position":[[1178,6]]},"236":{"position":[[131,6]]},"252":{"position":[[0,6]]}}}],["begin",{"_index":181,"t":{"53":{"position":[[1208,10]]}}}],["below",{"_index":194,"t":{"53":{"position":[[1958,6]]},"59":{"position":[[0,5]]},"65":{"position":[[1359,5]]},"89":{"position":[[1953,6]]},"101":{"position":[[1972,6]]},"109":{"position":[[392,6]]},"154":{"position":[[6473,6]]},"210":{"position":[[404,6]]},"212":{"position":[[502,6]]},"262":{"position":[[899,6]]},"274":{"position":[[1021,5]]}}}],["best",{"_index":251,"t":{"57":{"position":[[87,4]]},"137":{"position":[[470,4]]}}}],["better",{"_index":641,"t":{"75":{"position":[[160,6]]},"126":{"position":[[1991,6]]},"128":{"position":[[1131,6]]},"171":{"position":[[37,6]]},"196":{"position":[[194,6],[889,6]]},"262":{"position":[[909,6]]}}}],["between",{"_index":290,"t":{"59":{"position":[[865,7]]},"65":{"position":[[176,7],[1608,7]]},"77":{"position":[[129,7]]},"91":{"position":[[71,7]]},"97":{"position":[[163,7],[708,7]]},"99":{"position":[[78,7]]},"107":{"position":[[80,7]]},"111":{"position":[[842,8]]},"115":{"position":[[2626,7]]},"124":{"position":[[384,7]]},"126":{"position":[[244,7],[398,7]]},"208":{"position":[[480,7],[603,7]]},"212":{"position":[[161,7]]},"218":{"position":[[800,7]]},"224":{"position":[[1515,7]]},"262":{"position":[[794,7]]}}}],["beyond",{"_index":1641,"t":{"228":{"position":[[1793,6]]}}}],["bin",{"_index":213,"t":{"53":{"position":[[2513,3],[2551,3],[2589,3]]}}}],["black",{"_index":388,"t":{"63":{"position":[[3505,5],[3659,5],[4600,5],[4754,5],[5805,5],[5861,6],[6147,5],[6203,6],[6481,5],[6537,6]]},"65":{"position":[[943,5]]}}}],["blk.reduce(func",{"_index":1247,"t":{"154":{"position":[[2703,16],[4061,16]]}}}],["blk_func",{"_index":1251,"t":{"154":{"position":[[2941,8],[4299,8]]}}}],["block",{"_index":92,"t":{"49":{"position":[[658,5],[833,7]]},"51":{"position":[[557,7]]},"85":{"position":[[882,8],[1632,5],[1880,8],[2285,5]]},"115":{"position":[[1427,5]]},"208":{"position":[[307,6]]}}}],["blocked_funct",{"_index":104,"t":{"49":{"position":[[962,17]]}}}],["bool",{"_index":831,"t":{"91":{"position":[[719,4]]},"194":{"position":[[1862,4]]}}}],["boolean",{"_index":801,"t":{"89":{"position":[[718,7]]},"115":{"position":[[217,7]]},"241":{"position":[[706,8]]}}}],["both",{"_index":528,"t":{"69":{"position":[[0,4]]},"113":{"position":[[4525,4]]},"124":{"position":[[331,4]]},"152":{"position":[[302,4]]},"206":{"position":[[1744,4]]},"224":{"position":[[138,4]]}}}],["bottleneck",{"_index":459,"t":{"65":{"position":[[1094,10]]}}}],["break",{"_index":446,"t":{"65":{"position":[[636,6]]},"124":{"position":[[926,5]]}}}],["bridg",{"_index":1493,"t":{"200":{"position":[[206,7]]}}}],["brief",{"_index":1679,"t":{"234":{"position":[[1812,5]]},"236":{"position":[[703,5]]},"238":{"position":[[422,5]]}}}],["briefli",{"_index":1532,"t":{"208":{"position":[[642,7]]}}}],["browser",{"_index":1773,"t":{"268":{"position":[[1403,8]]},"274":{"position":[[898,7]]}}}],["build",{"_index":670,"t":{"79":{"position":[[639,5]]},"81":{"position":[[1207,8]]},"196":{"position":[[188,5]]},"208":{"position":[[298,8]]}}}],["build_executor.ps1",{"_index":672,"t":{"79":{"position":[[771,20]]},"81":{"position":[[1050,20]]}}}],["build_executor.sh",{"_index":673,"t":{"79":{"position":[[806,19]]},"81":{"position":[[870,17],[1025,19]]}}}],["built",{"_index":667,"t":{"79":{"position":[[413,5],[873,6]]}}}],["bunch",{"_index":517,"t":{"67":{"position":[[1841,5]]}}}],["bundl",{"_index":404,"t":{"63":{"position":[[3818,6],[4913,6],[5903,7],[6245,7],[6579,7]]}}}],["button",{"_index":706,"t":{"83":{"position":[[718,6]]}}}],["c18494b1",{"_index":356,"t":{"63":{"position":[[1788,8]]}}}],["cach",{"_index":691,"t":{"81":{"position":[[743,5]]}}}],["calcu",{"_index":1275,"t":{"154":{"position":[[8261,5]]}}}],["calcul",{"_index":287,"t":{"59":{"position":[[833,9]]},"154":{"position":[[57,10],[179,11],[728,9],[834,9],[1037,9],[1194,9],[1290,9],[1495,9],[4703,9],[5778,9],[5981,9],[6666,9],[6817,9],[6912,9],[7132,10],[7327,9],[7797,9],[7957,9],[8010,9],[8353,9],[10088,9],[10141,9],[10392,9],[10492,9],[10561,9],[10580,9],[10760,9],[10973,9],[11126,9],[11179,9],[11416,9],[11468,9],[11608,9],[11692,9],[11906,9],[12881,9],[12934,9],[13171,9],[13223,9]]}}}],["call",{"_index":235,"t":{"53":{"position":[[3464,4]]},"63":{"position":[[3111,4]]},"65":{"position":[[1203,5],[1703,4],[1736,4],[1777,4]]},"71":{"position":[[426,6],[757,6],[978,6]]},"73":{"position":[[890,6]]},"89":{"position":[[177,7],[1762,6],[1867,6],[2486,6]]},"101":{"position":[[416,7],[2419,6],[3298,6]]},"131":{"position":[[623,7]]},"137":{"position":[[1737,4]]},"141":{"position":[[52,6]]},"143":{"position":[[549,4]]},"150":{"position":[[612,6]]},"152":{"position":[[1078,4]]},"154":{"position":[[1986,4],[3344,4]]},"196":{"position":[[63,4],[289,4]]},"200":{"position":[[45,4],[1244,5]]},"222":{"position":[[55,4],[996,4],[1637,4]]},"230":{"position":[[247,6],[637,5]]},"241":{"position":[[210,5],[269,5],[942,6],[1311,4]]},"243":{"position":[[58,7],[366,4]]},"262":{"position":[[603,7],[2158,7]]}}}],["capabl",{"_index":839,"t":{"93":{"position":[[80,13]]}}}],["care",{"_index":883,"t":{"101":{"position":[[1081,4]]},"210":{"position":[[1182,5]]}}}],["carefulli",{"_index":1164,"t":{"139":{"position":[[73,10]]}}}],["carri",{"_index":1537,"t":{"210":{"position":[[360,5]]}}}],["case",{"_index":57,"t":{"47":{"position":[[217,5]]},"63":{"position":[[601,5]]},"67":{"position":[[1605,5]]},"85":{"position":[[8,6]]},"97":{"position":[[920,6],[1327,6],[1711,5]]},"131":{"position":[[460,6],[798,4],[1078,4]]},"141":{"position":[[11,5]]},"175":{"position":[[8,6]]},"196":{"position":[[1014,5]]},"206":{"position":[[8,6]]},"212":{"position":[[67,5],[127,4],[324,5],[626,4],[949,5]]},"224":{"position":[[255,5]]},"234":{"position":[[2798,5]]},"238":{"position":[[2436,5]]}}}],["caught",{"_index":1177,"t":{"141":{"position":[[935,6]]}}}],["caus",{"_index":134,"t":{"53":{"position":[[140,5]]},"57":{"position":[[205,5]]},"135":{"position":[[259,5]]},"139":{"position":[[230,5]]},"141":{"position":[[638,5],[688,6],[845,6]]},"145":{"position":[[296,6]]},"274":{"position":[[627,5]]}}}],["caution",{"_index":1375,"t":{"188":{"position":[[634,7]]}}}],["cautiou",{"_index":665,"t":{"77":{"position":[[633,8]]},"264":{"position":[[368,8]]},"274":{"position":[[99,8]]}}}],["cd",{"_index":318,"t":{"63":{"position":[[138,2]]},"67":{"position":[[1784,2]]},"79":{"position":[[741,2]]},"81":{"position":[[1003,2]]},"194":{"position":[[4099,2]]},"248":{"position":[[275,2]]},"274":{"position":[[806,2]]}}}],["ce",{"_index":846,"t":{"95":{"position":[[801,5],[1030,5]]},"250":{"position":[[744,5]]}}}],["cell",{"_index":1229,"t":{"154":{"position":[[2002,4],[3360,4]]}}}],["center",{"_index":1535,"t":{"210":{"position":[[186,6]]}}}],["certain",{"_index":1011,"t":{"113":{"position":[[1752,7]]},"230":{"position":[[157,7]]},"241":{"position":[[1318,7]]}}}],["chainlit",{"_index":1729,"t":{"258":{"position":[[802,8]]},"274":{"position":[[470,8],[571,8],[869,8]]}}}],["chainlit<1.1.300",{"_index":1788,"t":{"274":{"position":[[505,18]]}}}],["chang",{"_index":330,"t":{"63":{"position":[[584,8],[6038,6],[6380,6],[6714,6]]},"67":{"position":[[2440,6]]},"71":{"position":[[1623,6]]},"143":{"position":[[604,6]]},"152":{"position":[[1465,6]]},"202":{"position":[[182,6]]},"218":{"position":[[784,6],[1075,7]]}}}],["charact",{"_index":1731,"t":{"260":{"position":[[1126,10]]}}}],["chart",{"_index":595,"t":{"71":{"position":[[1126,5]]}}}],["chart/df/file/txt/svg",{"_index":1681,"t":{"234":{"position":[[1951,21]]},"236":{"position":[[842,21]]}}}],["chat",{"_index":25,"t":{"41":{"position":[[283,8]]},"53":{"position":[[6,8],[37,4],[253,4],[323,4],[390,4],[552,4],[805,4],[842,4],[962,4],[1151,4],[1262,4],[1491,4],[1567,4],[1599,4],[1854,4],[1900,4],[3027,4],[3073,4],[3138,4],[3428,4],[3535,4]]},"55":{"position":[[64,4],[205,4]]},"97":{"position":[[1385,4]]},"99":{"position":[[73,4]]},"101":{"position":[[1469,4]]},"105":{"position":[[423,4],[667,4]]},"107":{"position":[[68,4],[144,4]]},"115":{"position":[[1879,4],[1989,4],[2197,4],[2414,4],[2614,4]]},"150":{"position":[[711,4]]},"152":{"position":[[105,4],[576,4],[619,4],[704,4],[1137,4]]},"154":{"position":[[6330,4],[6357,4],[6457,4]]},"178":{"position":[[712,4]]},"180":{"position":[[1932,4]]},"188":{"position":[[810,4]]},"190":{"position":[[256,4]]},"192":{"position":[[641,4]]},"196":{"position":[[771,5]]},"198":{"position":[[554,4]]},"200":{"position":[[1454,5]]},"202":{"position":[[1062,4]]},"204":{"position":[[591,4]]},"210":{"position":[[1133,4]]},"212":{"position":[[2666,4]]},"214":{"position":[[487,4]]},"228":{"position":[[1093,4],[1681,4]]},"260":{"position":[[1333,4],[1516,4],[1576,4],[1982,4],[2039,4]]}}}],["chat_complet",{"_index":1433,"t":{"194":{"position":[[1607,15],[1798,16],[2187,16]]}}}],["chatglm",{"_index":1318,"t":{"169":{"position":[[7,9]]},"198":{"position":[[4,9]]}}}],["chatmessagetyp",{"_index":1410,"t":{"194":{"position":[[495,15]]}}}],["check",{"_index":65,"t":{"47":{"position":[[366,5]]},"49":{"position":[[800,8]]},"51":{"position":[[384,5],[485,5]]},"63":{"position":[[1355,5],[2534,5]]},"67":{"position":[[114,5]]},"79":{"position":[[909,5],[1128,5]]},"81":{"position":[[1155,5]]},"111":{"position":[[719,5]]},"131":{"position":[[1060,5]]},"137":{"position":[[19,5],[601,5],[713,5],[1770,5]]},"139":{"position":[[281,5],[757,7],[845,5]]},"141":{"position":[[195,5],[592,8]]},"154":{"position":[[6778,5]]},"180":{"position":[[1481,5]]},"220":{"position":[[239,5]]},"222":{"position":[[3349,5]]}}}],["chief",{"_index":1386,"t":{"192":{"position":[[28,5]]}}}],["chines",{"_index":1317,"t":{"167":{"position":[[147,9]]},"214":{"position":[[144,9]]}}}],["choos",{"_index":164,"t":{"53":{"position":[[723,6]]},"71":{"position":[[1661,8]]},"75":{"position":[[594,6]]},"113":{"position":[[1730,8]]}}}],["chosen",{"_index":310,"t":{"59":{"position":[[1372,6]]}}}],["clariti",{"_index":1697,"t":{"238":{"position":[[2576,7]]}}}],["class",{"_index":622,"t":{"73":{"position":[[459,6],[523,5],[825,5]]},"87":{"position":[[129,5],[526,5]]},"89":{"position":[[30,5],[225,5],[1203,5],[1674,5]]},"91":{"position":[[170,5]]},"97":{"position":[[105,5]]},"99":{"position":[[130,5]]},"101":{"position":[[468,6],[549,5],[1128,5],[1979,5],[2193,5],[3090,5]]},"113":{"position":[[174,5],[371,5],[496,6],[570,5],[1576,6],[1642,6],[1812,6],[1861,6],[1868,5],[2078,5],[2280,6],[2858,5],[3397,5]]},"180":{"position":[[763,5]]},"194":{"position":[[528,5],[745,5],[1509,5],[1651,5],[2328,6],[2488,6],[2755,5]]},"212":{"position":[[1478,5]]},"218":{"position":[[354,5],[1196,5]]},"234":{"position":[[438,5],[2207,5],[2242,5],[2391,6]]},"262":{"position":[[2137,5]]}}}],["claud",{"_index":1369,"t":{"188":{"position":[[267,7],[369,6],[436,6],[561,6],[837,7]]}}}],["clear",{"_index":1158,"t":{"137":{"position":[[1612,6]]},"260":{"position":[[1474,7],[1482,5],[1934,6],[1941,5]]}}}],["clearli",{"_index":460,"t":{"65":{"position":[[1135,7]]}}}],["cli",{"_index":1,"t":{"41":{"position":[[13,3],[101,5],[157,3]]},"107":{"position":[[672,5]]},"258":{"position":[[239,5]]},"272":{"position":[[681,3]]}}}],["cli_only_mod",{"_index":930,"t":{"107":{"position":[[715,13]]}}}],["click",{"_index":462,"t":{"65":{"position":[[1228,5]]}}}],["client",{"_index":1349,"t":{"180":{"position":[[1668,6]]}}}],["clone",{"_index":669,"t":{"79":{"position":[[601,6]]},"248":{"position":[[200,5],[225,5]]},"258":{"position":[[42,6]]},"260":{"position":[[149,5]]},"274":{"position":[[395,5]]}}}],["close",{"_index":871,"t":{"101":{"position":[[214,7]]}}}],["co",{"_index":967,"t":{"109":{"position":[[591,3]]}}}],["code",{"_index":45,"t":{"47":{"position":[[50,4],[134,4],[179,4],[237,4],[345,4],[386,4],[417,4],[522,5]]},"49":{"position":[[7,4],[180,4],[236,4],[280,4],[443,4],[669,4],[932,5],[1021,5]]},"51":{"position":[[4,4],[121,4],[200,4],[376,4],[428,4]]},"53":{"position":[[97,4],[527,4],[612,4],[674,4],[1934,4],[2196,4],[3225,4],[3385,4],[3593,4]]},"57":{"position":[[280,5]]},"59":{"position":[[142,4],[173,4],[655,4],[1085,4],[1172,5],[1249,4]]},"63":{"position":[[355,4],[1887,4],[2459,4],[3013,4],[3048,4],[3372,4],[3424,4],[4305,4],[4467,4],[4519,4]]},"65":{"position":[[749,4],[824,4],[1592,5]]},"67":{"position":[[837,5],[1353,4]]},"73":{"position":[[151,5],[314,5],[1025,4],[1145,4]]},"75":{"position":[[48,4],[376,4],[462,4],[484,4],[585,5]]},"77":{"position":[[33,4],[191,4],[268,4],[318,4],[498,4],[573,5]]},"79":{"position":[[17,4],[457,4],[582,4],[724,4],[1290,5]]},"81":{"position":[[47,4],[175,4]]},"83":{"position":[[402,4]]},"85":{"position":[[189,4],[266,4]]},"87":{"position":[[294,7],[599,7],[707,4]]},"95":{"position":[[591,4],[832,4],[916,4],[1007,4],[1109,4]]},"97":{"position":[[1163,4]]},"101":{"position":[[3172,4]]},"107":{"position":[[100,4],[361,4],[422,4],[478,4],[1854,4],[1906,4],[2111,4],[2257,4],[2309,4],[2495,4],[2641,4],[2693,4]]},"113":{"position":[[4374,5]]},"115":{"position":[[1113,4],[1212,4],[1438,4],[2073,4],[2214,4],[2430,4],[2646,4],[2940,4]]},"124":{"position":[[204,4],[275,4]]},"128":{"position":[[64,4],[648,4],[936,4],[1112,4],[1180,4],[1597,5],[1984,4],[2056,5],[2069,4],[2109,4],[2262,4],[2401,4],[2687,4]]},"131":{"position":[[949,4]]},"133":{"position":[[213,4]]},"139":{"position":[[713,5]]},"141":{"position":[[43,4]]},"145":{"position":[[42,4],[131,5]]},"150":{"position":[[64,4],[924,4]]},"152":{"position":[[388,4]]},"154":{"position":[[1439,4],[1755,4],[1881,4],[3008,4],[3239,4],[4379,4],[4450,5],[4472,4],[4647,4],[5023,4],[5149,4],[5205,4],[5314,4],[5570,4],[5626,4],[6623,4],[6758,4],[8648,4],[9019,4],[9093,4],[9167,4],[9223,4],[9485,4],[9673,4],[9729,4],[11890,4],[12192,4],[12266,4],[12340,4],[12396,4],[12492,4],[12632,4],[12688,4]]},"196":{"position":[[174,5]]},"208":{"position":[[163,4]]},"212":{"position":[[228,4],[257,4],[376,4],[464,4]]},"218":{"position":[[232,4],[600,4],[795,4],[1090,4]]},"222":{"position":[[1213,4],[1265,4],[1611,4],[1796,4],[1848,4]]},"224":{"position":[[287,4],[413,4],[773,5],[1174,5],[1742,4],[1914,4],[1946,4],[2044,5],[2054,4],[2143,4],[2681,5]]},"226":{"position":[[134,4],[160,4]]},"228":{"position":[[16,4],[162,5],[880,4],[1106,4],[1173,4],[1244,4],[1330,4],[1385,4]]},"230":{"position":[[275,4],[389,4],[618,4]]},"234":{"position":[[186,4],[295,5]]},"238":{"position":[[92,5],[315,5],[325,4],[2257,4],[2319,4],[2393,4],[2487,4],[2523,4],[2533,5],[2656,4],[2727,4],[2770,5],[2813,4],[2854,4],[3021,4]]},"241":{"position":[[187,4],[259,4],[336,5],[1303,4],[1422,4]]},"243":{"position":[[358,4],[443,4],[501,4]]},"250":{"position":[[534,4],[775,4],[859,4]]},"258":{"position":[[977,5]]},"260":{"position":[[2136,5],[2287,5]]},"262":{"position":[[75,4]]},"264":{"position":[[261,4],[316,4]]},"268":{"position":[[214,4]]}}}],["code_error",{"_index":1108,"t":{"128":{"position":[[913,10]]},"154":{"position":[[1739,12],[5007,12],[9003,12],[12176,12]]}}}],["code_gener",{"_index":295,"t":{"59":{"position":[[1042,14],[1106,14]]}}}],["code_generator.auto_plugin_selection_topk",{"_index":316,"t":{"61":{"position":[[114,42]]},"115":{"position":[[2452,41]]}}}],["code_generator.enable_auto_plugin_select",{"_index":312,"t":{"61":{"position":[[0,44]]},"115":{"position":[[2238,43]]}}}],["code_generator.example_base_path",{"_index":1072,"t":{"115":{"position":[[2020,32]]}}}],["code_generator.llm_alia",{"_index":1525,"t":{"206":{"position":[[1558,27]]}}}],["code_generator.prompt_compress",{"_index":246,"t":{"55":{"position":[[280,33]]},"115":{"position":[[2139,33],[3338,34]]}}}],["code_generator.use_experi",{"_index":1074,"t":{"115":{"position":[[2329,29]]},"152":{"position":[[223,29]]},"186":{"position":[[122,29]]}}}],["code_interpret",{"_index":925,"t":{"107":{"position":[[323,20],[380,17],[899,17]]},"113":{"position":[[4056,19]]},"115":{"position":[[2734,19]]}}}],["code_interpreter.allowed_modul",{"_index":78,"t":{"49":{"position":[[369,32]]},"115":{"position":[[1138,32]]}}}],["code_interpreter.blocked_funct",{"_index":90,"t":{"49":{"position":[[598,34]]},"115":{"position":[[1367,34]]}}}],["code_interpreter.code_verification_on",{"_index":71,"t":{"49":{"position":[[56,40]]},"115":{"position":[[1057,37]]}}}],["code_interpreter_cli_onli",{"_index":34,"t":{"44":{"position":[[114,29]]},"107":{"position":[[577,26]]}}}],["code_interpreter_plugin_onli",{"_index":927,"t":{"107":{"position":[[496,29]]},"241":{"position":[[1060,31]]}}}],["codeexecutor",{"_index":451,"t":{"65":{"position":[[837,12]]}}}],["codegener",{"_index":69,"t":{"47":{"position":[[489,13]]},"51":{"position":[[279,13]]},"65":{"position":[[796,13]]}}}],["codegenerator'",{"_index":110,"t":{"51":{"position":[[81,15]]}}}],["codeinterpret",{"_index":13,"t":{"41":{"position":[[131,15]]},"63":{"position":[[1689,15],[2179,15],[2285,15],[2336,15],[2404,17],[2725,16],[4257,16],[5554,15]]},"65":{"position":[[214,16]]},"91":{"position":[[1209,16]]},"97":{"position":[[1599,15]]},"107":{"position":[[967,15],[1013,16],[2063,16]]},"113":{"position":[[117,15],[3897,15],[4164,16],[4617,16]]},"124":{"position":[[72,15],[250,15],[454,16]]},"126":{"position":[[90,16],[145,16],[283,16],[811,15],[1060,15],[1216,15],[1401,15],[1807,15],[2345,16],[2665,15]]},"128":{"position":[[2,15],[32,15],[197,15],[396,15],[544,15],[1283,16],[1381,15],[1541,16]]},"131":{"position":[[218,16],[239,15],[482,15],[880,15]]},"137":{"position":[[888,15]]},"152":{"position":[[323,15],[1301,17]]},"154":{"position":[[995,15],[1152,15],[1358,15],[1380,15],[4566,15],[4588,15],[5939,15],[8197,15],[8287,15],[8408,15],[8567,15],[8589,15],[9987,17],[10328,15],[10426,15],[11350,15],[11449,15],[11589,15],[11809,15],[11831,15],[12780,17],[13105,15],[13204,15]]},"206":{"position":[[172,16],[1511,16],[1769,16]]},"222":{"position":[[670,15],[762,15],[832,15],[919,17],[1563,16],[2221,15]]},"224":{"position":[[1722,15],[2609,15],[2797,15]]},"226":{"position":[[353,15]]},"230":{"position":[[65,16]]},"268":{"position":[[155,15]]}}}],["codeinterpreter'",{"_index":838,"t":{"93":{"position":[[62,17]]}}}],["codeinterpreter][python",{"_index":1279,"t":{"154":{"position":[[8759,25],[12021,25]]}}}],["codeinterpreter_exampl",{"_index":845,"t":{"95":{"position":[[542,26]]},"250":{"position":[[485,26]]}}}],["coher",{"_index":1491,"t":{"200":{"position":[[144,7],[589,6],[755,7]]}}}],["cohere_api_key=mi",{"_index":1498,"t":{"200":{"position":[[642,17]]}}}],["col",{"_index":1299,"t":{"154":{"position":[[11670,3]]}}}],["collect",{"_index":825,"t":{"91":{"position":[[258,10],[751,10]]},"93":{"position":[[181,10]]},"99":{"position":[[215,10]]},"124":{"position":[[394,10]]}}}],["collector",{"_index":509,"t":{"67":{"position":[[1412,10],[1440,9],[1574,9],[1628,9],[2275,9]]},"69":{"position":[[260,10],[374,11],[486,9],[819,9],[897,9],[941,10],[998,10],[1028,9],[1060,9],[1577,10],[1857,9],[1988,10]]}}}],["collector:0.96.0",{"_index":538,"t":{"69":{"position":[[297,16]]}}}],["collector:9464",{"_index":577,"t":{"69":{"position":[[1921,16]]}}}],["column",{"_index":413,"t":{"63":{"position":[[4075,9],[4133,8],[4187,6],[5170,9],[5228,8],[5282,6]]},"137":{"position":[[1138,6]]},"154":{"position":[[227,7],[6698,8],[6729,8],[6800,7],[6854,8],[6952,6],[7312,6],[7946,7],[8056,7],[8250,7],[8342,7],[9426,8],[9932,8],[10077,7],[10187,7],[10381,7],[10481,7],[10550,7],[10653,7],[10876,7],[11115,7],[11225,7],[11405,7],[11511,6],[11735,6],[11949,6],[11976,6],[12870,7],[12980,7],[13160,7],[13266,6],[13425,6],[13580,6]]},"234":{"position":[[665,6],[860,6],[929,6],[1028,6],[1225,6],[1393,6]]},"238":{"position":[[1464,6],[1804,6],[1911,6],[2066,6]]},"272":{"position":[[962,6]]}}}],["column(",{"_index":1297,"t":{"154":{"position":[[10732,9],[10945,9]]}}}],["columnor",{"_index":1298,"t":{"154":{"position":[[11651,8]]}}}],["com.docker.network.bridge.enable_ip_masquerade=fals",{"_index":730,"t":{"85":{"position":[[1026,52]]}}}],["come",{"_index":1203,"t":{"150":{"position":[[490,4]]}}}],["command",{"_index":7,"t":{"41":{"position":[[78,7],[161,9],[301,7]]},"63":{"position":[[79,7],[669,7]]},"67":{"position":[[1746,7]]},"69":{"position":[[314,8],[742,8]]},"79":{"position":[[687,7]]},"81":{"position":[[560,8]]},"83":{"position":[[681,7]]},"85":{"position":[[989,8]]},"107":{"position":[[649,7]]},"139":{"position":[[327,7]]},"141":{"position":[[241,7]]},"150":{"position":[[681,7]]},"152":{"position":[[675,7]]},"154":{"position":[[6305,7]]},"180":{"position":[[1283,7]]},"194":{"position":[[3985,7],[4232,8]]},"200":{"position":[[785,7]]},"248":{"position":[[52,8]]},"258":{"position":[[226,7]]},"260":{"position":[[12,7],[230,7],[451,7],[1003,8],[1088,9],[1102,8],[1198,9],[1651,8],[1699,7]]},"268":{"position":[[516,7],[825,8],[1075,8]]},"270":{"position":[[100,8]]},"272":{"position":[[92,8],[700,8],[785,8]]},"274":{"position":[[755,8]]}}}],["common",{"_index":717,"t":{"85":{"position":[[323,6]]},"182":{"position":[[200,6]]},"212":{"position":[[120,6]]},"238":{"position":[[3014,6]]}}}],["commun",{"_index":6,"t":{"41":{"position":[[57,11]]},"85":{"position":[[626,11],[2583,13]]},"97":{"position":[[151,11],[696,11],[992,13]]},"107":{"position":[[628,11],[857,11]]}}}],["compar",{"_index":1141,"t":{"137":{"position":[[321,9],[1463,7]]},"241":{"position":[[93,8]]}}}],["compat",{"_index":570,"t":{"69":{"position":[[1543,10]]},"111":{"position":[[57,10]]},"200":{"position":[[853,14]]},"245":{"position":[[111,10]]},"274":{"position":[[633,13]]}}}],["compil",{"_index":96,"t":{"49":{"position":[[728,10]]},"115":{"position":[[1498,10]]}}}],["complet",{"_index":297,"t":{"59":{"position":[[1070,10]]},"196":{"position":[[218,8]]}}}],["completionservic",{"_index":1405,"t":{"194":{"position":[[236,18],[409,18],[1549,17]]}}}],["complex",{"_index":1546,"t":{"210":{"position":[[778,7]]},"228":{"position":[[689,7],[1778,7],[1920,7]]}}}],["complic",{"_index":579,"t":{"71":{"position":[[142,11]]},"85":{"position":[[2534,10]]}}}],["compon",{"_index":435,"t":{"65":{"position":[[290,10]]},"67":{"position":[[1455,9]]},"139":{"position":[[466,9]]},"175":{"position":[[64,11]]},"206":{"position":[[64,11],[255,11],[512,11],[1274,11],[1378,10],[1634,10]]}}}],["compos",{"_index":515,"t":{"67":{"position":[[1814,7]]},"69":{"position":[[97,7]]},"91":{"position":[[1162,8]]},"210":{"position":[[22,8]]},"238":{"position":[[21,8]]}}}],["compose.yaml",{"_index":532,"t":{"69":{"position":[[179,13]]},"71":{"position":[[1458,12]]}}}],["compress",{"_index":168,"t":{"53":{"position":[[892,9]]},"105":{"position":[[410,8]]},"115":{"position":[[1866,8],[2184,8],[2814,9]]}}}],["comput",{"_index":654,"t":{"75":{"position":[[670,10]]}}}],["concept",{"_index":769,"t":{"87":{"position":[[24,7]]},"91":{"position":[[25,7]]},"97":{"position":[[19,7]]},"99":{"position":[[18,7]]},"113":{"position":[[14,7]]},"208":{"position":[[227,8],[266,8]]},"212":{"position":[[1218,7]]},"262":{"position":[[963,8]]}}}],["concern",{"_index":1786,"t":{"274":{"position":[[268,9]]}}}],["concret",{"_index":1646,"t":{"230":{"position":[[293,8]]}}}],["conda",{"_index":1719,"t":{"248":{"position":[[83,5],[131,5],[172,5]]}}}],["conduct",{"_index":116,"t":{"51":{"position":[[333,7]]}}}],["config",{"_index":734,"t":{"85":{"position":[[1336,9]]},"89":{"position":[[343,7],[553,7],[977,6],[1084,6]]},"101":{"position":[[698,7],[962,7]]},"113":{"position":[[214,7],[2124,7]]},"115":{"position":[[51,6]]},"143":{"position":[[446,10],[918,6],[1076,6],[1197,6],[1226,6],[1272,6]]},"194":{"position":[[1737,7],[1782,6],[2804,7],[2872,6]]}}}],["config.file=/etc/prometheus/prometheus.yml",{"_index":555,"t":{"69":{"position":[[755,44]]}}}],["config.yaml",{"_index":540,"t":{"69":{"position":[[349,13],[413,11],[1070,12]]}}}],["config.yaml:/etc/collector",{"_index":542,"t":{"69":{"position":[[386,26]]}}}],["config.yml",{"_index":571,"t":{"69":{"position":[[1745,10]]}}}],["config.yml:/etc/prometheus/prometheus.yml",{"_index":554,"t":{"69":{"position":[[700,41]]}}}],["config=/etc/collector",{"_index":539,"t":{"69":{"position":[[327,21]]}}}],["configur",{"_index":28,"t":{"44":{"position":[[23,13],[52,13]]},"49":{"position":[[42,13],[117,13],[319,13]]},"59":{"position":[[490,10]]},"67":{"position":[[606,13],[767,13],[853,13],[894,13],[1614,9],[2231,9],[2303,13],[2418,13]]},"69":{"position":[[1038,13],[1122,13],[1768,13]]},"79":{"position":[[3,9]]},"85":{"position":[[2658,14]]},"89":{"position":[[565,14],[1028,13],[1140,13]]},"95":{"position":[[48,13],[404,13]]},"101":{"position":[[974,14]]},"103":{"position":[[29,15]]},"111":{"position":[[119,15],[159,14],[1208,10]]},"113":{"position":[[1192,14],[1257,14],[1392,13],[1922,13],[1963,10],[1989,13],[2251,13],[3720,13],[3852,13]]},"115":{"position":[[19,14],[142,9],[172,13],[431,13],[3395,14],[3463,13]]},"143":{"position":[[830,14],[896,14],[1036,14],[1121,13],[1376,13]]},"152":{"position":[[270,13],[1565,13]]},"180":{"position":[[594,9]]},"186":{"position":[[182,13]]},"188":{"position":[[735,9]]},"192":{"position":[[330,13]]},"194":{"position":[[2243,13],[3490,9],[3873,11]]},"196":{"position":[[604,13]]},"198":{"position":[[233,13]]},"200":{"position":[[320,14],[361,9],[1291,13]]},"202":{"position":[[131,9],[709,13]]},"206":{"position":[[561,9]]},"214":{"position":[[235,13]]},"220":{"position":[[17,9]]},"222":{"position":[[36,11]]},"224":{"position":[[320,13],[511,14],[595,13],[684,13],[1024,15],[1085,13],[1428,15],[1531,15],[2209,14],[2328,15],[2414,14]]},"226":{"position":[[67,14],[188,14],[224,15]]},"238":{"position":[[882,15],[902,13],[3045,13],[3139,13],[3190,13],[3262,15],[3310,13]]},"241":{"position":[[1017,13],[1107,13]]},"250":{"position":[[90,13],[347,13]]},"256":{"position":[[286,13],[328,13]]},"260":{"position":[[196,15]]},"270":{"position":[[599,9]]},"274":{"position":[[442,15]]}}}],["confirm",{"_index":1159,"t":{"137":{"position":[[1619,7]]},"154":{"position":[[7300,7],[7934,7],[8238,7],[8330,7],[10065,7],[10369,7],[10469,7],[10538,7],[11103,7],[11393,7],[12858,7],[13148,7]]}}}],["conflict",{"_index":1360,"t":{"184":{"position":[[514,9]]}}}],["confus",{"_index":254,"t":{"57":{"position":[[211,9]]}}}],["connect",{"_index":719,"t":{"85":{"position":[[419,11],[1117,9],[1465,9]]},"133":{"position":[[92,7]]}}}],["consecut",{"_index":977,"t":{"111":{"position":[[725,11]]}}}],["consid",{"_index":757,"t":{"85":{"position":[[2381,10]]},"154":{"position":[[4761,11]]},"241":{"position":[[788,8]]}}}],["consider",{"_index":1637,"t":{"228":{"position":[[1286,13]]}}}],["consist",{"_index":1087,"t":{"124":{"position":[[489,8]]},"234":{"position":[[132,8]]}}}],["consol",{"_index":408,"t":{"63":{"position":[[3933,7],[5028,7],[5950,7],[6292,7],[6626,7]]},"83":{"position":[[696,7]]},"101":{"position":[[2271,8]]},"139":{"position":[[291,7],[358,7]]},"141":{"position":[[205,7],[272,7],[605,7]]},"143":{"position":[[798,7]]},"152":{"position":[[696,7]]},"154":{"position":[[6322,7]]},"188":{"position":[[71,8]]},"260":{"position":[[1338,7],[1492,7],[1521,7],[1951,7],[1987,7]]}}}],["consoleeventhandl",{"_index":899,"t":{"101":{"position":[[2146,22],[2173,19]]}}}],["consoleeventhandler(sessioneventhandl",{"_index":894,"t":{"101":{"position":[[1985,41]]}}}],["constrain",{"_index":980,"t":{"111":{"position":[[913,11],[1045,11],[1295,11]]}}}],["constraint",{"_index":1117,"t":{"128":{"position":[[2127,12]]}}}],["construct",{"_index":826,"t":{"91":{"position":[[313,9]]}}}],["constructor",{"_index":787,"t":{"89":{"position":[[212,12]]},"143":{"position":[[949,12],[1293,12]]}}}],["consum",{"_index":433,"t":{"65":{"position":[[258,8],[458,8],[1510,8]]},"67":{"position":[[365,8]]},"212":{"position":[[2546,8]]},"241":{"position":[[864,8]]}}}],["consumpt",{"_index":598,"t":{"71":{"position":[[1215,11]]}}}],["contact",{"_index":1542,"t":{"210":{"position":[[638,8]]}}}],["contain",{"_index":222,"t":{"53":{"position":[[2735,10],[2877,10]]},"67":{"position":[[1864,11],[2116,10],[2185,10]]},"69":{"position":[[1107,10]]},"75":{"position":[[18,9]]},"77":{"position":[[59,10],[74,9],[163,9],[212,10]]},"79":{"position":[[179,10],[211,10],[307,9],[527,9],[1056,9],[1104,9],[1141,9],[1201,9]]},"83":{"position":[[4,9],[113,9],[194,10],[254,10],[384,10],[423,9],[602,10]]},"85":{"position":[[201,9],[612,10],[799,10],[1107,9],[1454,10],[1823,9],[2482,9],[2573,9]]},"87":{"position":[[52,8],[537,8]]},"89":{"position":[[1015,8]]},"91":{"position":[[53,8]]},"95":{"position":[[222,8]]},"97":{"position":[[47,8]]},"99":{"position":[[46,8]]},"113":{"position":[[1411,8]]},"115":{"position":[[2973,10]]},"124":{"position":[[557,8],[652,7]]},"126":{"position":[[2479,8],[2973,8]]},"128":{"position":[[1474,8]]},"133":{"position":[[66,9],[146,9],[247,9]]},"135":{"position":[[159,8]]},"147":{"position":[[74,9],[227,10]]},"184":{"position":[[72,8]]},"210":{"position":[[1105,10]]},"224":{"position":[[861,8],[1262,8]]},"234":{"position":[[872,8],[941,8]]},"238":{"position":[[1816,8],[1923,8],[2086,10]]},"241":{"position":[[197,8],[312,7]]},"243":{"position":[[144,8]]},"250":{"position":[[254,8]]},"258":{"position":[[1043,8]]},"262":{"position":[[160,8],[723,8],[833,8]]},"264":{"position":[[295,10],[344,10]]},"268":{"position":[[200,9],[795,9]]},"270":{"position":[[50,10]]},"272":{"position":[[42,10],[540,9]]}}}],["container'",{"_index":710,"t":{"85":{"position":[[67,11],[355,11]]}}}],["content",{"_index":59,"t":{"47":{"position":[[251,7]]},"69":{"position":[[197,7]]},"71":{"position":[[1436,7]]},"81":{"position":[[470,8]]},"87":{"position":[[337,8],[350,7],[459,8],[642,7],[657,7]]},"101":{"position":[[1302,11]]},"126":{"position":[[862,8],[1036,8],[1195,8],[1609,8],[1783,8],[1942,8]]},"128":{"position":[[610,8],[707,7],[744,8],[888,8],[924,8],[973,8],[1015,8]]},"184":{"position":[[202,7],[592,7]]},"190":{"position":[[71,7]]},"196":{"position":[[402,7]]},"200":{"position":[[1030,7]]},"212":{"position":[[1560,8],[1579,7]]},"220":{"position":[[349,7]]},"260":{"position":[[1959,7]]},"262":{"position":[[1747,10],[1852,10],[1970,10]]}}}],["context",{"_index":137,"t":{"53":{"position":[[175,7]]},"73":{"position":[[923,7]]},"143":{"position":[[537,7]]},"208":{"position":[[102,7]]},"210":{"position":[[997,7]]}}}],["context_summari",{"_index":171,"t":{"53":{"position":[[983,15]]}}}],["contrast",{"_index":1047,"t":{"113":{"position":[[4413,9]]}}}],["contribut",{"_index":1402,"t":{"194":{"position":[[110,10]]}}}],["control",{"_index":192,"t":{"53":{"position":[[1825,7]]},"55":{"position":[[48,11]]},"91":{"position":[[1254,7]]},"180":{"position":[[1101,7]]},"212":{"position":[[663,7]]}}}],["convent",{"_index":1001,"t":{"113":{"position":[[964,10]]}}}],["convers",{"_index":808,"t":{"89":{"position":[[1580,12],[2397,12]]},"91":{"position":[[2,12],[145,13],[176,13],[195,12],[284,12],[368,13],[456,13],[491,12],[733,12],[921,13],[972,12],[1024,12],[1124,13],[1270,12]]},"93":{"position":[[233,12]]},"97":{"position":[[80,13]]},"99":{"position":[[175,12]]},"101":{"position":[[15,12],[1683,13],[1907,13]]},"105":{"position":[[298,13]]},"107":{"position":[[276,13]]},"111":{"position":[[285,13],[544,13],[658,13],[758,12],[943,13]]},"113":{"position":[[80,12],[1526,13]]},"115":{"position":[[2708,13]]},"124":{"position":[[371,12],[476,12]]},"126":{"position":[[231,12]]},"128":{"position":[[1208,12]]},"152":{"position":[[417,12],[853,13],[1379,13]]},"154":{"position":[[12,12]]},"182":{"position":[[170,13]]},"208":{"position":[[117,13],[402,12],[442,12]]},"210":{"position":[[76,12],[838,12],[958,12],[1012,13]]},"212":{"position":[[1637,15],[1987,13],[2051,13],[2692,14]]},"222":{"position":[[78,13],[101,12]]},"228":{"position":[[952,12],[1010,12]]},"238":{"position":[[168,14]]},"262":{"position":[[775,12],[2079,13]]}}}],["conversationsummari",{"_index":182,"t":{"53":{"position":[[1223,19],[1371,19],[1684,19],[1773,20],[1967,22],[2987,20],[3187,19]]}}}],["convert",{"_index":649,"t":{"75":{"position":[[431,8]]}}}],["coordin",{"_index":1627,"t":{"228":{"position":[[193,11]]},"234":{"position":[[61,11]]}}}],["copi",{"_index":1594,"t":{"220":{"position":[[330,4]]},"224":{"position":[[374,4]]},"250":{"position":[[181,4]]}}}],["correct",{"_index":257,"t":{"57":{"position":[[272,7]]},"128":{"position":[[897,7],[1681,8],[1992,7]]},"143":{"position":[[1393,8]]},"274":{"position":[[685,7]]}}}],["correctli",{"_index":162,"t":{"53":{"position":[[651,9]]},"131":{"position":[[861,10]]},"143":{"position":[[1059,9]]}}}],["correspond",{"_index":684,"t":{"81":{"position":[[542,13]]},"91":{"position":[[131,13]]}}}],["cosin",{"_index":288,"t":{"59":{"position":[[847,6],[994,6]]},"63":{"position":[[2651,6]]}}}],["cost",{"_index":239,"t":{"53":{"position":[[3513,5]]}}}],["count",{"_index":211,"t":{"53":{"position":[[2474,5]]},"67":{"position":[[338,5]]},"126":{"position":[[540,5],[610,5],[749,5],[899,5],[1102,5],[1258,5],[1646,5],[1849,5],[2217,6],[2423,5]]},"154":{"position":[[5232,5],[5653,5],[6944,7],[9261,5],[9767,5],[10701,5],[10918,5],[11009,5],[11505,5],[11645,5],[11664,5],[11729,5],[11943,5],[13260,5],[13419,5],[13574,5]]},"262":{"position":[[1343,8]]}}}],["creat",{"_index":280,"t":{"59":{"position":[[446,7]]},"73":{"position":[[914,6]]},"85":{"position":[[450,8],[928,6],[1013,6],[2232,6]]},"89":{"position":[[116,6],[166,7],[1556,8],[1910,8],[2209,7],[2289,7]]},"95":{"position":[[198,7]]},"99":{"position":[[574,10],[603,8],[625,10]]},"101":{"position":[[97,7],[264,7],[405,7],[517,7]]},"105":{"position":[[133,6]]},"113":{"position":[[3352,6],[3406,6],[4111,6],[4391,6]]},"124":{"position":[[755,7]]},"126":{"position":[[580,7]]},"143":{"position":[[518,6]]},"152":{"position":[[485,7],[781,7],[1423,7]]},"165":{"position":[[3,6]]},"178":{"position":[[0,6],[56,6]]},"180":{"position":[[0,6],[112,6]]},"184":{"position":[[3,6],[48,6]]},"188":{"position":[[0,6]]},"190":{"position":[[0,6]]},"194":{"position":[[149,6],[515,6],[1496,6]]},"204":{"position":[[0,6]]},"218":{"position":[[0,6]]},"220":{"position":[[283,6]]},"228":{"position":[[1821,6]]},"234":{"position":[[2188,6]]},"248":{"position":[[74,6],[137,6]]},"250":{"position":[[42,6]]},"262":{"position":[[483,6]]}}}],["critic",{"_index":455,"t":{"65":{"position":[[968,8]]}}}],["crucial",{"_index":1564,"t":{"212":{"position":[[1768,7]]}}}],["csv",{"_index":1685,"t":{"234":{"position":[[2822,3]]},"236":{"position":[[463,3]]}}}],["ctx=temp_ctx",{"_index":1184,"t":{"143":{"position":[[432,13]]}}}],["cumbersom",{"_index":1604,"t":{"224":{"position":[[360,10]]}}}],["curl",{"_index":1509,"t":{"202":{"position":[[287,4]]}}}],["current",{"_index":101,"t":{"49":{"position":[[782,9]]},"53":{"position":[[481,7],[687,7],[3112,7]]},"65":{"position":[[1153,10]]},"71":{"position":[[378,7]]},"75":{"position":[[522,7]]},"81":{"position":[[150,7]]},"95":{"position":[[869,7],[1051,7]]},"97":{"position":[[1476,7],[1688,7],[1803,7],[1964,7]]},"111":{"position":[[1069,10]]},"124":{"position":[[10,9]]},"126":{"position":[[2614,7]]},"143":{"position":[[965,9]]},"152":{"position":[[611,7]]},"180":{"position":[[890,7]]},"182":{"position":[[162,7]]},"210":{"position":[[1153,7]]},"212":{"position":[[791,7],[1945,7],[2658,7]]},"245":{"position":[[0,10]]},"250":{"position":[[812,7]]},"260":{"position":[[1432,7],[1596,7],[1861,7],[1894,7],[2059,7],[2150,8]]}}}],["current_plan_step",{"_index":364,"t":{"63":{"position":[[2253,19],[5655,19]]},"126":{"position":[[1177,17],[1924,17],[2056,18]]},"135":{"position":[[207,18]]},"154":{"position":[[1120,19],[6064,19],[8376,19],[10515,19],[11557,19],[13312,19]]},"222":{"position":[[730,19],[2281,19]]},"262":{"position":[[1949,20]]}}}],["custom",{"_index":616,"t":{"73":{"position":[[94,9]]},"81":{"position":[[16,9],[275,9]]},"85":{"position":[[764,6]]},"101":{"position":[[1864,9]]},"173":{"position":[[34,10]]},"194":{"position":[[34,10]]},"200":{"position":[[161,6]]},"224":{"position":[[1289,8]]},"228":{"position":[[515,10]]},"270":{"position":[[647,9]]}}}],["customer_identifi",{"_index":1487,"t":{"196":{"position":[[1068,19]]}}}],["cutoff",{"_index":1670,"t":{"234":{"position":[[1488,6],[1527,7],[1542,6]]}}}],["cwd",{"_index":847,"t":{"95":{"position":[[857,5],[1077,5],[1173,3],[1274,3]]},"250":{"position":[[800,5]]},"260":{"position":[[2146,3],[2297,3]]}}}],["d:/demo_dat",{"_index":1277,"t":{"154":{"position":[[8525,11]]}}}],["d:/demo_data.csv",{"_index":1220,"t":{"154":{"position":[[756,16],[1269,16],[1474,16],[1609,18],[3087,18],[4682,16],[4852,18],[5393,18],[6152,16],[6253,16],[6565,16],[7829,16],[8683,16],[8822,18],[8916,18],[9564,18],[10621,16],[10844,16],[13449,16],[13604,16]]}}}],["d:/demo_data.csva",{"_index":1276,"t":{"154":{"position":[[8502,17]]}}}],["d:\\project\\experience\\raw_exp_20231228",{"_index":1270,"t":{"154":{"position":[[6994,38]]}}}],["d:\\python_project\\octopus\\venv\\lib\\sit",{"_index":1231,"t":{"154":{"position":[[2060,39],[2215,39],[2340,39],[2468,39],[2597,39],[2729,39],[2862,39],[3418,39],[3573,39],[3698,39],[3826,39],[3955,39],[4087,39],[4220,39]]}}}],["daemon",{"_index":1130,"t":{"133":{"position":[[114,7]]}}}],["danger",{"_index":62,"t":{"47":{"position":[[306,10]]},"77":{"position":[[616,6]]},"264":{"position":[[92,6]]}}}],["dashscop",{"_index":1450,"t":{"194":{"position":[[2517,9]]},"198":{"position":[[184,10]]},"214":{"position":[[184,10],[207,9]]}}}],["dat",{"_index":1301,"t":{"154":{"position":[[11997,3]]}}}],["data",{"_index":502,"t":{"67":{"position":[[1225,4]]},"71":{"position":[[218,4],[1379,4]]},"87":{"position":[[19,4],[72,4]]},"91":{"position":[[20,4]]},"95":{"position":[[108,5],[738,5],[937,4],[982,5]]},"97":{"position":[[14,4],[261,4],[1117,4]]},"99":{"position":[[13,4]]},"126":{"position":[[720,4],[778,4],[886,4],[928,4],[1088,4],[1131,4],[1244,4],[1287,4],[1312,4],[1380,4],[1466,4],[1531,4],[1633,4],[1675,4],[1835,4],[1878,4],[2394,4],[2452,6],[2722,4],[2790,4],[2876,4],[2941,4]]},"137":{"position":[[266,5]]},"154":{"position":[[819,4],[873,4],[1023,4],[1076,4],[1180,4],[1233,4],[1259,4],[1329,4],[1464,4],[1534,4],[4672,4],[4742,4],[5763,4],[5817,4],[5967,4],[6020,4],[6144,4],[6245,4],[6966,6],[7919,4],[8225,4],[8315,4],[8436,4],[8455,4],[8492,4],[8673,4],[10050,4],[10356,4],[10454,4],[10611,4],[10668,4],[10834,4],[10891,4],[11088,4],[11378,4],[11970,5],[12843,4],[13133,4],[13439,4],[13594,4]]},"212":{"position":[[295,4],[2142,4]]},"224":{"position":[[148,4],[184,4],[225,4],[639,4],[724,4],[818,4],[965,4],[1125,4],[1219,4],[1369,4]]},"228":{"position":[[81,4],[262,4],[333,4],[390,4],[1062,4],[1470,4]]},"230":{"position":[[327,4],[476,4],[724,4],[804,5]]},"234":{"position":[[800,5],[1932,4],[2893,5]]},"236":{"position":[[203,5],[823,4]]},"238":{"position":[[1658,4]]},"250":{"position":[[681,5],[880,4]]},"262":{"position":[[1362,4],[1482,4]]}}}],["data\".format(anomaly_count",{"_index":1677,"t":{"234":{"position":[[1723,27]]}}}],["data_descript",{"_index":1648,"t":{"230":{"position":[[431,16]]}}}],["data_df",{"_index":1223,"t":{"154":{"position":[[1630,7],[3108,7],[4873,7],[5414,7]]}}}],["data_df.mean",{"_index":1226,"t":{"154":{"position":[[1683,14],[2036,14],[3161,14],[3394,14]]}}}],["data_df.mean(axis=0",{"_index":1256,"t":{"154":{"position":[[4926,20],[5467,20]]}}}],["data_file_path",{"_index":1222,"t":{"154":{"position":[[1592,14],[3070,14],[4835,14],[5376,14],[8805,14],[8899,14],[9547,14]]}}}],["databas",{"_index":149,"t":{"53":{"position":[[368,8]]},"212":{"position":[[2504,8]]},"224":{"position":[[160,9],[194,8],[235,8],[649,8],[734,8],[834,8],[850,8],[1135,8],[1235,8],[1251,8]]},"230":{"position":[[337,8],[736,9]]},"262":{"position":[[1498,9]]}}}],["dataclass",{"_index":771,"t":{"87":{"position":[[118,10]]},"91":{"position":[[159,10]]},"97":{"position":[[94,10]]},"99":{"position":[[119,10]]}}}],["datafram",{"_index":414,"t":{"63":{"position":[[4104,9],[5199,9]]},"137":{"position":[[1094,9],[1282,10]]},"218":{"position":[[995,11]]},"228":{"position":[[456,11]]},"234":{"position":[[621,9],[816,9]]},"238":{"position":[[1420,9],[1607,9],[1978,9],[2009,9],[2037,9]]},"241":{"position":[[745,9]]}}}],["datalumn",{"_index":1300,"t":{"154":{"position":[[11756,8]]}}}],["dataset",{"_index":1747,"t":{"262":{"position":[[1398,8]]}}}],["datetim",{"_index":87,"t":{"49":{"position":[[525,11]]},"115":{"position":[[1294,11]]},"234":{"position":[[885,8],[1239,10]]},"238":{"position":[[1829,8]]}}}],["debug",{"_index":563,"t":{"69":{"position":[[1253,6],[1517,7]]},"143":{"position":[[23,9],[50,5],[94,5]]},"228":{"position":[[1493,5],[1538,6]]}}}],["decid",{"_index":449,"t":{"65":{"position":[[707,7]]}}}],["decis",{"_index":1617,"t":{"224":{"position":[[2658,9],[2847,10]]},"226":{"position":[[380,10]]}}}],["decor",{"_index":630,"t":{"73":{"position":[[785,9]]},"113":{"position":[[419,9],[3073,11]]},"234":{"position":[[209,9],[2124,9],[2297,9]]}}}],["def",{"_index":635,"t":{"73":{"position":[[1096,3]]},"89":{"position":[[254,3],[1236,3],[1687,3]]},"101":{"position":[[572,3],[1161,3],[2027,3],[2351,3],[2501,3],[3117,3]]},"113":{"position":[[194,3],[1898,3],[2104,3],[2373,3]]},"194":{"position":[[791,3],[1718,3],[1794,3],[2076,3],[2785,3]]},"218":{"position":[[384,3],[1229,3]]},"234":{"position":[[476,3]]}}}],["default",{"_index":77,"t":{"49":{"position":[[361,7]]},"53":{"position":[[1306,8],[1347,8]]},"55":{"position":[[128,8],[178,8]]},"61":{"position":[[90,7],[212,7]]},"67":{"position":[[14,7],[630,7],[2327,7]]},"75":{"position":[[36,7]]},"77":{"position":[[96,7]]},"79":{"position":[[194,7]]},"85":{"position":[[519,8]]},"105":{"position":[[69,7],[470,7],[696,7],[860,8]]},"107":{"position":[[213,7],[294,7],[470,7]]},"111":{"position":[[303,7],[562,7],[961,7]]},"115":{"position":[[473,7]]},"131":{"position":[[10,7]]},"133":{"position":[[164,7]]},"194":{"position":[[2176,7]]},"202":{"position":[[577,7]]},"206":{"position":[[1677,8]]},"238":{"position":[[187,7],[291,7],[359,7],[947,7],[3538,7],[3640,7]]},"241":{"position":[[605,7]]},"262":{"position":[[224,8]]}}}],["defaultazurecredenti",{"_index":1343,"t":{"180":{"position":[[740,22]]}}}],["defin",{"_index":621,"t":{"73":{"position":[[440,6],[774,6]]},"93":{"position":[[21,7]]},"101":{"position":[[1705,7]]},"113":{"position":[[1174,6],[1796,6]]},"143":{"position":[[118,6],[219,6],[1149,7]]},"218":{"position":[[138,7]]},"228":{"position":[[1841,6]]},"232":{"position":[[71,7],[125,7]]}}}],["delet",{"_index":860,"t":{"97":{"position":[[1530,7]]}}}],["delimiter=promptutil.delimiter_tempor",{"_index":863,"t":{"97":{"position":[[1878,40]]}}}],["demonstr",{"_index":1037,"t":{"113":{"position":[[2914,12]]},"124":{"position":[[128,11]]}}}],["denot",{"_index":824,"t":{"91":{"position":[[208,7]]},"97":{"position":[[222,6],[767,6],[976,6]]}}}],["depend",{"_index":363,"t":{"63":{"position":[[2142,7],[5517,7]]},"81":{"position":[[208,12],[967,9]]},"101":{"position":[[1094,10]]},"113":{"position":[[469,12],[4192,7]]},"126":{"position":[[385,12],[947,7],[1009,7],[1694,7],[1756,7]]},"154":{"position":[[892,7],[956,7],[5836,7],[5900,7],[7991,7],[8078,7],[8142,7],[10122,7],[10209,7],[10273,7],[11160,7],[11247,7],[11311,7],[12915,7],[13002,7],[13066,7]]},"180":{"position":[[542,13],[640,12],[857,9]]},"218":{"position":[[1385,7]]},"236":{"position":[[36,7]]},"248":{"position":[[116,12]]},"258":{"position":[[1060,12]]},"268":{"position":[[413,12]]}}}],["depends_on",{"_index":547,"t":{"69":{"position":[[496,11],[800,11]]},"71":{"position":[[1742,11]]}}}],["deploy",{"_index":1324,"t":{"178":{"position":[[69,10],[105,10]]},"180":{"position":[[125,10],[161,10]]},"202":{"position":[[428,9]]},"274":{"position":[[207,6]]}}}],["deployment_nam",{"_index":1333,"t":{"178":{"position":[[411,15]]},"180":{"position":[[457,15]]},"254":{"position":[[229,15]]}}}],["descend",{"_index":207,"t":{"53":{"position":[[2249,10]]}}}],["describ",{"_index":1587,"t":{"218":{"position":[[1038,8]]},"238":{"position":[[2187,10]]}}}],["descript",{"_index":76,"t":{"49":{"position":[[349,11]]},"53":{"position":[[2710,14],[2852,14]]},"59":{"position":[[406,13]]},"63":{"position":[[3206,11],[3264,11],[4355,11],[4413,11]]},"115":{"position":[[461,11]]},"218":{"position":[[457,11],[723,11],[905,12],[1011,11]]},"220":{"position":[[195,12],[414,12],[667,12],[776,12]]},"224":{"position":[[797,12],[924,11],[1198,12],[1328,11],[2495,11],[2535,12],[2638,11],[2695,12]]},"226":{"position":[[299,11]]},"234":{"position":[[1066,12],[1083,11],[1666,11],[1818,11],[2018,11],[2535,11],[2739,11],[2839,11],[2904,11]]},"236":{"position":[[709,11]]},"238":{"position":[[405,14],[428,11],[628,11],[794,11],[1342,12],[1632,12],[1779,12],[1886,12],[1988,12],[2135,11],[2157,12]]},"260":{"position":[[1707,11]]}}}],["design",{"_index":1570,"t":{"212":{"position":[[2472,9]]},"228":{"position":[[760,8],[981,8],[1140,8],[1515,8],[1728,8],[1963,8]]}}}],["desir",{"_index":300,"t":{"59":{"position":[[1164,7]]}}}],["desktop",{"_index":1756,"t":{"266":{"position":[[99,8]]}}}],["detail",{"_index":40,"t":{"44":{"position":[[197,8]]},"65":{"position":[[1284,7],[1375,7]]},"69":{"position":[[1271,8]]},"71":{"position":[[1071,7]]},"73":{"position":[[261,7]]},"93":{"position":[[99,7]]},"103":{"position":[[5,7]]},"105":{"position":[[205,7],[516,7]]},"107":{"position":[[568,8],[738,8]]},"147":{"position":[[157,8]]},"167":{"position":[[117,7]]},"169":{"position":[[130,7]]},"178":{"position":[[776,8]]},"180":{"position":[[1028,8]]},"188":{"position":[[887,8]]},"190":{"position":[[320,8]]},"192":{"position":[[232,7],[705,8]]},"196":{"position":[[819,8]]},"198":{"position":[[127,7],[618,8]]},"200":{"position":[[1502,8]]},"202":{"position":[[1126,8]]},"204":{"position":[[655,8]]},"212":{"position":[[3066,7]]},"214":{"position":[[114,7],[551,8]]},"220":{"position":[[274,8]]},"228":{"position":[[1553,8]]},"238":{"position":[[655,7]]}}}],["detect",{"_index":1136,"t":{"137":{"position":[[231,9]]},"228":{"position":[[1203,6]]},"230":{"position":[[364,10],[779,7]]},"234":{"position":[[261,9],[1113,9],[2779,9]]},"236":{"position":[[415,9]]},"238":{"position":[[1251,9],[2109,9],[2210,9]]},"262":{"position":[[1373,9]]}}}],["determin",{"_index":1044,"t":{"113":{"position":[[4089,9]]},"212":{"position":[[820,10],[969,10],[1825,10]]},"238":{"position":[[107,9],[223,9]]}}}],["develop",{"_index":42,"t":{"47":{"position":[[6,10]]},"81":{"position":[[127,9]]},"85":{"position":[[25,9],[157,9]]},"150":{"position":[[10,10]]},"167":{"position":[[34,9]]},"169":{"position":[[26,9]]},"173":{"position":[[11,10]]},"180":{"position":[[1188,13]]},"194":{"position":[[11,10]]},"196":{"position":[[30,9]]},"198":{"position":[[23,9]]},"214":{"position":[[31,9]]},"216":{"position":[[43,7]]},"222":{"position":[[3390,10]]},"234":{"position":[[2431,10]]},"241":{"position":[[921,9]]},"264":{"position":[[151,11]]},"274":{"position":[[57,11]]}}}],["df",{"_index":1153,"t":{"137":{"position":[[1278,3]]},"154":{"position":[[8841,2],[8937,2],[8972,2],[9585,2],[9620,2]]},"224":{"position":[[920,3],[1324,3]]},"230":{"position":[[427,3]]},"234":{"position":[[495,3],[786,3],[978,3],[988,2],[1054,3],[2014,3]]},"238":{"position":[[1598,2],[1969,2]]}}}],["df._mgr.reduce(blk_func",{"_index":1243,"t":{"154":{"position":[[2563,24],[3921,24]]}}}],["df[\"is_anomali",{"_index":1673,"t":{"234":{"position":[[1549,16]]}}}],["df[\"is_anomaly\"].sum",{"_index":1676,"t":{"234":{"position":[[1643,22]]}}}],["df['count'].var",{"_index":1303,"t":{"154":{"position":[[12064,17],[12113,17],[12547,17]]}}}],["df[time_col_nam",{"_index":1660,"t":{"234":{"position":[[1141,17]]}}}],["df[value_col_nam",{"_index":1664,"t":{"234":{"position":[[1307,18]]}}}],["df[value_col_name].apply(lambda",{"_index":1674,"t":{"234":{"position":[[1568,31]]}}}],["df[value_col_name].astype(float",{"_index":1665,"t":{"234":{"position":[[1328,32]]}}}],["df[value_col_name].mean",{"_index":1668,"t":{"234":{"position":[[1436,26]]}}}],["df[value_col_name].std",{"_index":1669,"t":{"234":{"position":[[1463,24]]}}}],["diablo",{"_index":409,"t":{"63":{"position":[[3943,6],[5038,6],[5960,6],[6302,6],[6636,6]]}}}],["diagram",{"_index":499,"t":{"67":{"position":[[1142,7]]}}}],["dialog",{"_index":823,"t":{"91":{"position":[[64,6]]}}}],["dict",{"_index":1524,"t":{"206":{"position":[[1241,4]]}}}],["dict[str",{"_index":901,"t":{"101":{"position":[[2542,9]]}}}],["dictionari",{"_index":803,"t":{"89":{"position":[[999,10]]},"228":{"position":[[432,13]]},"238":{"position":[[973,11]]}}}],["differ",{"_index":472,"t":{"65":{"position":[[1616,9]]},"67":{"position":[[2199,9]]},"77":{"position":[[118,10]]},"101":{"position":[[368,9],[2923,9],[2972,9]]},"111":{"position":[[83,9],[109,9]]},"113":{"position":[[57,9]]},"175":{"position":[[35,9],[54,9]]},"180":{"position":[[1066,9]]},"188":{"position":[[747,9]]},"194":{"position":[[3502,9]]},"206":{"position":[[35,9],[54,9],[226,9],[245,9],[502,9],[1264,9],[1368,9]]},"224":{"position":[[337,10],[425,9],[1503,11],[1589,10],[1618,9],[2233,10],[2270,10],[2318,9],[2516,10],[2552,10]]},"228":{"position":[[1453,9]]},"238":{"position":[[3087,9]]}}}],["dir",{"_index":692,"t":{"81":{"position":[[749,3]]},"194":{"position":[[3928,3],[4168,3]]}}}],["direct",{"_index":589,"t":{"71":{"position":[[764,10]]}}}],["directli",{"_index":929,"t":{"107":{"position":[[619,8],[848,8],[1158,9]]},"131":{"position":[[954,8]]},"133":{"position":[[444,8]]},"241":{"position":[[855,8],[1383,9]]},"243":{"position":[[513,8]]}}}],["directori",{"_index":325,"t":{"63":{"position":[[215,9]]},"79":{"position":[[707,9]]},"83":{"position":[[367,9]]},"89":{"position":[[473,10],[674,10],[2234,9]]},"95":{"position":[[22,9],[332,9],[713,9],[885,9],[1067,9],[1290,9]]},"115":{"position":[[3023,10]]},"152":{"position":[[472,9],[509,10],[807,10],[1446,10]]},"184":{"position":[[293,10]]},"236":{"position":[[631,10]]},"250":{"position":[[59,9],[140,9],[234,9],[656,9],[828,9]]},"258":{"position":[[136,9]]},"260":{"position":[[360,9],[2167,10],[2225,10],[2301,9]]},"270":{"position":[[33,9],[586,9],[704,10],[744,9],[796,10]]},"272":{"position":[[25,9],[589,10],[653,9]]}}}],["disabl",{"_index":476,"t":{"67":{"position":[[22,9]]},"85":{"position":[[1195,8]]}}}],["discuss",{"_index":809,"t":{"89":{"position":[[1654,7]]},"208":{"position":[[650,7]]},"224":{"position":[[1491,7]]}}}],["display",{"_index":892,"t":{"101":{"position":[[1878,7]]},"113":{"position":[[3629,7]]},"272":{"position":[[950,7]]}}}],["distilroberta",{"_index":963,"t":{"109":{"position":[[537,13]]}}}],["distinguish",{"_index":1620,"t":{"224":{"position":[[2737,11]]},"226":{"position":[[266,11]]}}}],["distribut",{"_index":210,"t":{"53":{"position":[[2385,12]]},"266":{"position":[[313,13]]}}}],["divid",{"_index":167,"t":{"53":{"position":[[858,7]]}}}],["doc",{"_index":1351,"t":{"180":{"position":[[1801,4]]}}}],["docker",{"_index":514,"t":{"67":{"position":[[1807,6]]},"69":{"position":[[90,6]]},"71":{"position":[[1451,6]]},"75":{"position":[[140,6],[209,7]]},"77":{"position":[[205,6]]},"79":{"position":[[354,6],[397,6],[649,6],[857,6],[892,6],[920,6],[1173,6]]},"81":{"position":[[30,6],[158,6],[289,6],[399,6],[634,6],[842,6],[1133,6],[1186,6],[1220,6],[1290,6]]},"83":{"position":[[187,6],[247,6],[790,6],[894,6],[1017,6]]},"85":{"position":[[60,6],[348,6],[461,6],[528,6],[771,6],[953,7],[998,6],[1236,6],[1434,6],[1664,6],[2076,6],[2317,6]]},"133":{"position":[[107,6]]},"228":{"position":[[2095,6]]},"258":{"position":[[998,6],[1025,6]]},"264":{"position":[[78,6],[131,6],[405,6]]},"266":{"position":[[17,6],[92,6]]},"268":{"position":[[52,6],[556,6],[677,6],[834,6],[1084,6]]},"270":{"position":[[109,6]]},"272":{"position":[[101,6]]}}}],["docker'",{"_index":1758,"t":{"266":{"position":[[133,8],[227,8]]}}}],["docker_network_subnet",{"_index":751,"t":{"85":{"position":[[1976,23],[2016,23]]}}}],["dockerfil",{"_index":681,"t":{"81":{"position":[[326,10],[431,11]]},"83":{"position":[[949,10]]}}}],["document",{"_index":38,"t":{"44":{"position":[[174,13]]},"59":{"position":[[600,14]]},"71":{"position":[[1049,13]]},"180":{"position":[[1005,13],[1491,8],[1822,13]]},"188":{"position":[[404,14]]},"196":{"position":[[661,9]]},"200":{"position":[[1344,9]]},"256":{"position":[[342,14]]},"264":{"position":[[8,9]]}}}],["doesn't",{"_index":1372,"t":{"188":{"position":[[447,7],[652,7]]},"274":{"position":[[939,7]]}}}],["domain",{"_index":1634,"t":{"228":{"position":[[718,6],[796,6]]}}}],["domin",{"_index":461,"t":{"65":{"position":[[1186,9]]}}}],["don't",{"_index":113,"t":{"51":{"position":[[175,5]]},"113":{"position":[[4321,5]]},"224":{"position":[[2089,5]]},"274":{"position":[[531,5]]}}}],["done",{"_index":605,"t":{"71":{"position":[[1404,4]]},"73":{"position":[[37,4]]},"212":{"position":[[417,4]]},"264":{"position":[[278,4]]}}}],["dot",{"_index":962,"t":{"109":{"position":[[526,3]]},"115":{"position":[[3510,3]]}}}],["doubl",{"_index":1050,"t":{"115":{"position":[[368,6]]}}}],["download",{"_index":1757,"t":{"266":{"position":[[116,8]]}}}],["drop",{"_index":753,"t":{"85":{"position":[[2003,4],[2156,5]]},"200":{"position":[[806,4]]}}}],["drop_param",{"_index":1500,"t":{"200":{"position":[[726,12]]}}}],["dtype",{"_index":1259,"t":{"154":{"position":[[5249,6],[5670,6]]}}}],["due",{"_index":732,"t":{"85":{"position":[[1184,3]]},"131":{"position":[[601,3]]},"135":{"position":[[21,3]]},"139":{"position":[[524,3]]}}}],["dummi",{"_index":978,"t":{"111":{"position":[[815,5]]}}}],["dump",{"_index":1683,"t":{"234":{"position":[[1998,6]]},"236":{"position":[[889,6]]}}}],["dure",{"_index":270,"t":{"59":{"position":[[131,6],[1310,6]]},"67":{"position":[[374,6]]},"101":{"position":[[1672,6],[1896,6]]},"141":{"position":[[942,6],[991,6]]},"154":{"position":[[1907,6],[3265,6]]},"238":{"position":[[161,6]]}}}],["dynam",{"_index":250,"t":{"57":{"position":[[64,11]]}}}],["e",{"_index":1763,"t":{"268":{"position":[[850,1],[879,1],[906,1],[935,1],[1100,1],[1129,1],[1156,1],[1185,1]]},"270":{"position":[[125,1],[154,1],[181,1],[210,1],[235,1],[309,1]]},"272":{"position":[[117,1],[146,1],[173,1],[202,1],[227,1],[301,1]]}}}],["e.g",{"_index":713,"t":{"85":{"position":[[111,5]]},"139":{"position":[[133,5],[689,6]]},"188":{"position":[[600,6]]},"194":{"position":[[2283,6]]},"212":{"position":[[843,6]]},"218":{"position":[[986,6]]},"234":{"position":[[2248,6]]},"254":{"position":[[175,5]]},"256":{"position":[[62,5]]},"260":{"position":[[1766,5]]}}}],["each",{"_index":212,"t":{"53":{"position":[[2508,4]]},"57":{"position":[[103,4]]},"61":{"position":[[196,4]]},"65":{"position":[[270,4],[470,4]]},"71":{"position":[[157,4]]},"91":{"position":[[112,4],[779,4]]},"101":{"position":[[1775,4]]},"115":{"position":[[2533,4]]},"124":{"position":[[471,4],[525,4],[1047,4]]},"137":{"position":[[1167,4]]},"210":{"position":[[53,4],[503,4],[862,4]]},"230":{"position":[[187,4]]},"234":{"position":[[692,4]]},"238":{"position":[[1491,4]]},"262":{"position":[[552,4]]}}}],["earlier",{"_index":1334,"t":{"178":{"position":[[585,7]]},"204":{"position":[[465,7]]}}}],["easi",{"_index":1170,"t":{"139":{"position":[[636,4]]},"141":{"position":[[566,4]]},"228":{"position":[[1485,4],[1530,4],[1697,4],[1935,4],[1978,4]]}}}],["easier",{"_index":618,"t":{"73":{"position":[[242,6]]},"124":{"position":[[980,6]]}}}],["easili",{"_index":1569,"t":{"212":{"position":[[2383,6]]},"228":{"position":[[775,6],[1743,6]]}}}],["echo",{"_index":997,"t":{"113":{"position":[[724,4],[740,6],[1247,4],[1279,4],[1340,4],[1364,7],[1851,4],[1944,4],[2995,4],[3015,7],[3842,4],[4048,7]]}}}],["echo(rol",{"_index":1018,"t":{"113":{"position":[[2084,11]]}}}],["echo.decor",{"_index":1015,"t":{"113":{"position":[[2013,16]]}}}],["echo.pi",{"_index":1012,"t":{"113":{"position":[[1836,7]]}}}],["echo.role.yaml",{"_index":1007,"t":{"113":{"position":[[1225,14]]}}}],["echoconfig",{"_index":1019,"t":{"113":{"position":[[2132,11]]}}}],["echoconfig(roleconfig",{"_index":1013,"t":{"113":{"position":[[1874,23]]}}}],["edit",{"_index":389,"t":{"63":{"position":[[3511,7],[4606,7],[5811,8],[5976,8],[6153,8],[6318,8],[6487,8],[6652,8]]},"115":{"position":[[124,4]]},"252":{"position":[[119,7]]},"270":{"position":[[527,4]]}}}],["effect",{"_index":729,"t":{"85":{"position":[[870,11]]},"135":{"position":[[293,9]]},"212":{"position":[[1927,9],[2027,9],[2640,9],[2812,10]]}}}],["effici",{"_index":1626,"t":{"228":{"position":[[181,11]]}}}],["effortlessli",{"_index":5,"t":{"41":{"position":[[44,12]]}}}],["element",{"_index":776,"t":{"87":{"position":[[374,8],[417,8],[681,8]]}}}],["elif",{"_index":1460,"t":{"194":{"position":[[3015,4],[3335,4],[3674,4]]}}}],["embed",{"_index":278,"t":{"59":{"position":[[345,9],[424,9],[474,9],[579,9],[754,9],[802,9],[885,9],[910,9]]},"63":{"position":[[126,11],[421,11],[495,9],[565,9],[1488,10],[1635,10]]},"109":{"position":[[34,9],[63,10],[141,9],[258,9],[360,9],[411,9],[439,9],[606,9],[641,9],[681,9]]},"115":{"position":[[951,9],[1023,9]]},"154":{"position":[[7076,9],[7094,10]]},"188":{"position":[[677,9],[708,11]]},"194":{"position":[[711,9],[3467,10],[3512,9],[3547,9],[3586,9]]},"198":{"position":[[348,10]]}}}],["embedding_model",{"_index":1272,"t":{"154":{"position":[[7054,16]]},"194":{"position":[[1397,18]]}}}],["embeddingservic",{"_index":1407,"t":{"194":{"position":[[276,16],[428,17],[1571,16],[1691,18]]}}}],["emitt",{"_index":1039,"t":{"113":{"position":[[3258,8],[3584,7]]}}}],["employ",{"_index":298,"t":{"59":{"position":[[1121,7]]}}}],["empti",{"_index":89,"t":{"49":{"position":[[563,6]]},"53":{"position":[[1246,6]]},"115":{"position":[[1332,6]]},"152":{"position":[[536,5]]},"238":{"position":[[967,5]]}}}],["enabl",{"_index":3,"t":{"41":{"position":[[27,7]]},"49":{"position":[[227,8]]},"55":{"position":[[194,6]]},"61":{"position":[[56,6]]},"63":{"position":[[346,8],[888,8]]},"67":{"position":[[35,6],[540,6]]},"85":{"position":[[1805,7]]},"91":{"position":[[470,8],[507,8],[710,8],[1230,7]]},"113":{"position":[[3665,6]]},"115":{"position":[[1106,6],[2293,6]]},"124":{"position":[[707,8]]},"126":{"position":[[504,8]]},"128":{"position":[[248,8]]},"152":{"position":[[62,6],[145,6]]},"180":{"position":[[1538,6]]},"220":{"position":[[176,8],[385,8]]},"238":{"position":[[98,8],[139,7],[251,7],[1293,8],[3465,7]]},"241":{"position":[[972,6]]}}}],["enable_ip_masquerad",{"_index":721,"t":{"85":{"position":[[481,20],[728,20]]}}}],["encapsul",{"_index":1632,"t":{"228":{"position":[[564,11]]}}}],["encount",{"_index":439,"t":{"65":{"position":[[424,12]]}}}],["end",{"_index":832,"t":{"91":{"position":[[823,4]]},"143":{"position":[[672,3]]},"218":{"position":[[510,7],[849,5]]}}}],["endpoint",{"_index":527,"t":{"67":{"position":[[2245,8],[2335,8],[2451,8]]},"69":{"position":[[1190,9],[1219,9],[1286,9],[1342,9]]}}}],["enforc",{"_index":988,"t":{"111":{"position":[[1358,8]]}}}],["engin",{"_index":1392,"t":{"192":{"position":[[87,8]]}}}],["enhanc",{"_index":1515,"t":{"202":{"position":[[487,8]]}}}],["enough",{"_index":1619,"t":{"224":{"position":[[2727,6]]}}}],["ensur",{"_index":746,"t":{"85":{"position":[[1760,6],[2629,6]]},"180":{"position":[[1223,6]]},"200":{"position":[[838,6]]},"236":{"position":[[100,6]]},"238":{"position":[[2569,6]]}}}],["enter",{"_index":341,"t":{"63":{"position":[[1316,5],[2005,5]]},"107":{"position":[[800,5],[1599,5]]},"154":{"position":[[700,5],[7769,5]]},"222":{"position":[[540,5]]},"258":{"position":[[727,5]]},"260":{"position":[[946,5],[1288,5]]},"272":{"position":[[874,5]]}}}],["enterprise:latest",{"_index":607,"t":{"71":{"position":[[1509,17]]}}}],["entir",{"_index":822,"t":{"89":{"position":[[2390,6]]}}}],["entri",{"_index":151,"t":{"53":{"position":[[403,8]]},"89":{"position":[[73,5]]},"137":{"position":[[1172,5]]},"212":{"position":[[1554,5],[1729,5],[2624,7],[2761,7],[2859,7]]},"234":{"position":[[697,5]]},"238":{"position":[[1496,5]]}}}],["entrypoint",{"_index":1769,"t":{"268":{"position":[[1224,10]]}}}],["enum",{"_index":783,"t":{"87":{"position":[[521,4]]}}}],["environ",{"_index":609,"t":{"71":{"position":[[1561,12]]},"77":{"position":[[252,11]]},"85":{"position":[[2683,11]]},"89":{"position":[[1162,11]]},"115":{"position":[[3414,11]]},"133":{"position":[[197,11]]},"143":{"position":[[185,12],[736,12]]},"145":{"position":[[310,11]]},"163":{"position":[[79,12]]},"180":{"position":[[615,11],[906,11],[927,11],[1076,11],[1370,13],[1632,11],[1851,11]]},"200":{"position":[[541,11]]},"202":{"position":[[76,12]]},"228":{"position":[[1352,11]]},"248":{"position":[[89,11]]},"274":{"position":[[553,12]]}}}],["envis",{"_index":1046,"t":{"113":{"position":[[4327,8]]}}}],["equal",{"_index":1519,"t":{"204":{"position":[[380,5]]}}}],["error",{"_index":67,"t":{"47":{"position":[[458,6]]},"65":{"position":[[417,6]]},"67":{"position":[[1924,7],[1938,6]]},"128":{"position":[[227,6],[941,6],[1752,5],[2191,5],[2612,5]]},"133":{"position":[[8,5]]},"135":{"position":[[277,6]]},"139":{"position":[[256,6],[433,5],[545,5],[659,6]]},"141":{"position":[[111,5],[347,5],[469,5],[582,6],[657,6],[741,6],[763,7],[832,5],[919,6]]},"143":{"position":[[766,7]]},"145":{"position":[[152,5]]},"147":{"position":[[8,5]]},"154":{"position":[[4789,6],[6582,5],[6602,5]]}}}],["especi",{"_index":132,"t":{"53":{"position":[[73,10]]},"75":{"position":[[64,10]]},"77":{"position":[[669,10]]},"81":{"position":[[107,10]]}}}],["essenti",{"_index":1686,"t":{"236":{"position":[[87,9]]},"241":{"position":[[772,12]]},"262":{"position":[[458,12]]}}}],["establish",{"_index":301,"t":{"59":{"position":[[1186,11]]},"75":{"position":[[637,11]]},"85":{"position":[[1531,12]]}}}],["etc",{"_index":473,"t":{"65":{"position":[[1633,4]]},"115":{"position":[[3626,4]]},"180":{"position":[[968,6]]}}}],["eval",{"_index":1066,"t":{"115":{"position":[[1470,7]]}}}],["even",{"_index":747,"t":{"85":{"position":[[1772,4]]},"150":{"position":[[432,4]]},"200":{"position":[[156,4]]},"210":{"position":[[558,4]]}}}],["event",{"_index":888,"t":{"101":{"position":[[1416,5],[1665,6],[1726,6],[1760,5],[1780,5],[1841,5],[1889,6],[1949,5],[2044,6],[2211,5],[2241,5]]},"113":{"position":[[3252,5],[3578,5],[3607,5],[3641,5]]},"145":{"position":[[89,5],[186,5],[247,5]]},"262":{"position":[[2266,5]]}}}],["event.msg",{"_index":898,"t":{"101":{"position":[[2084,10]]}}}],["event_emitt",{"_index":991,"t":{"113":{"position":[[279,14],[2187,14],[2346,14]]}}}],["event_emitter.create_post_proxi",{"_index":1040,"t":{"113":{"position":[[3300,31]]}}}],["event_handl",{"_index":885,"t":{"101":{"position":[[1199,14],[1397,14],[1614,13]]}}}],["event_handler=your_event_handl",{"_index":1755,"t":{"262":{"position":[[2199,34]]}}}],["everyth",{"_index":1728,"t":{"258":{"position":[[259,10]]},"260":{"position":[[478,10]]}}}],["exactli",{"_index":976,"t":{"111":{"position":[[625,7]]},"113":{"position":[[1002,7]]},"150":{"position":[[437,7]]}}}],["exampl",{"_index":48,"t":{"47":{"position":[[91,7]]},"51":{"position":[[160,8]]},"53":{"position":[[1885,7]]},"63":{"position":[[742,7],[811,8]]},"65":{"position":[[1691,7]]},"81":{"position":[[577,8]]},"85":{"position":[[2108,8]]},"89":{"position":[[1899,7],[2172,8]]},"91":{"position":[[327,9],[525,7],[1063,9],[1077,8]]},"95":{"position":[[78,9],[531,8],[608,8]]},"97":{"position":[[1586,8]]},"101":{"position":[[1935,7],[2900,8]]},"105":{"position":[[55,9],[157,9],[219,7],[243,8]]},"107":{"position":[[1179,8]]},"113":{"position":[[141,8],[654,8],[709,7],[2906,7],[3287,8],[3790,7]]},"115":{"position":[[1787,9],[2090,9],[3535,8]]},"124":{"position":[[33,9],[55,8],[88,9],[107,8],[220,8],[345,8],[682,7],[936,8],[1076,8],[1128,8]]},"126":{"position":[[11,7],[218,7],[328,7],[2121,8]]},"128":{"position":[[18,7],[177,7],[1172,7],[1931,8],[2344,8]]},"143":{"position":[[202,8],[1098,8]]},"145":{"position":[[355,8]]},"150":{"position":[[29,8]]},"180":{"position":[[1041,8]]},"184":{"position":[[372,8],[642,8]]},"194":{"position":[[2549,8]]},"200":{"position":[[602,8],[743,8]]},"202":{"position":[[108,7]]},"206":{"position":[[80,8],[1424,8],[1699,8]]},"212":{"position":[[195,8],[713,8]]},"218":{"position":[[176,8]]},"220":{"position":[[565,8]]},"224":{"position":[[91,8],[573,7],[907,9],[1311,9],[1787,8]]},"230":{"position":[[302,7]]},"234":{"position":[[238,7],[2412,7],[2705,7]]},"236":{"position":[[365,7]]},"238":{"position":[[1222,7],[2339,8],[2602,8]]},"241":{"position":[[236,8],[458,8],[1242,8]]},"243":{"position":[[194,8]]},"250":{"position":[[474,8],[551,8]]},"260":{"position":[[1141,8]]},"262":{"position":[[80,8],[862,7]]},"270":{"position":[[65,8],[673,8]]},"272":{"position":[[57,8],[713,8]]}}}],["example.csv",{"_index":1781,"t":{"272":{"position":[[748,11]]}}}],["exce",{"_index":913,"t":{"105":{"position":[[333,6]]},"107":{"position":[[156,7]]}}}],["exceed",{"_index":136,"t":{"53":{"position":[[161,9]]},"57":{"position":[[361,9]]},"202":{"position":[[469,9]]}}}],["except",{"_index":628,"t":{"73":{"position":[[685,9]]},"113":{"position":[[1052,9]]},"234":{"position":[[1195,6],[1202,10],[1361,6]]}}}],["excess",{"_index":253,"t":{"57":{"position":[[173,9]]}}}],["exec",{"_index":94,"t":{"49":{"position":[[708,7]]},"115":{"position":[[1478,7]]}}}],["exec(cod",{"_index":56,"t":{"47":{"position":[[198,10]]}}}],["execfil",{"_index":95,"t":{"49":{"position":[[716,11]]},"115":{"position":[[1486,11]]}}}],["execut",{"_index":60,"t":{"47":{"position":[[273,7]]},"53":{"position":[[106,9],[621,9],[2071,9],[2332,9],[2441,9],[2628,11]]},"63":{"position":[[3338,9],[3435,9],[4319,9],[4433,9],[4530,9]]},"65":{"position":[[619,10],[735,9],[769,9],[850,8],[994,10],[1048,10],[1117,10],[1173,9]]},"67":{"position":[[386,10]]},"75":{"position":[[53,10],[471,8],[573,7]]},"77":{"position":[[38,10],[178,8],[273,10],[305,8],[482,7]]},"79":{"position":[[22,9],[462,10],[1275,9]]},"81":{"position":[[52,9],[180,9]]},"83":{"position":[[407,8]]},"87":{"position":[[747,9]]},"95":{"position":[[837,9],[1012,9],[1114,9]]},"97":{"position":[[1635,9]]},"107":{"position":[[1820,9],[1917,9],[2125,9],[2223,9],[2320,9],[2509,9],[2607,9],[2704,9]]},"126":{"position":[[119,9],[180,9]]},"128":{"position":[[237,10],[1795,9],[1877,9],[2413,8],[2450,9],[2479,9],[2520,9],[2570,9],[2705,9]]},"131":{"position":[[255,8],[287,9],[352,9]]},"133":{"position":[[218,10]]},"137":{"position":[[1000,10]]},"141":{"position":[[88,9],[953,9]]},"145":{"position":[[30,7],[114,9]]},"154":{"position":[[1847,9],[1914,10],[3022,9],[3205,9],[3272,10],[4343,9],[4777,9],[5115,9],[5216,9],[5328,9],[5536,9],[5637,9],[6638,7],[9083,9],[9133,9],[9234,9],[9499,9],[9639,9],[9740,9],[12256,9],[12306,9],[12407,9],[12506,9],[12598,9],[12699,9]]},"192":{"position":[[34,9]]},"218":{"position":[[558,9]]},"222":{"position":[[1179,9],[1276,9],[1625,9],[1762,9],[1859,9]]},"228":{"position":[[71,9],[254,7],[932,10],[1185,10],[1390,10]]},"234":{"position":[[2677,9]]},"243":{"position":[[431,7]]},"250":{"position":[[780,9]]},"264":{"position":[[244,9],[328,8]]},"268":{"position":[[234,9]]}}}],["execution_result",{"_index":775,"t":{"87":{"position":[[317,19],[622,19]]},"128":{"position":[[998,16]]},"154":{"position":[[1822,18],[5090,18],[9108,18],[12281,18]]}}}],["execution_service.kernel_mod",{"_index":647,"t":{"75":{"position":[[275,29]]},"79":{"position":[[58,29],[477,29]]},"115":{"position":[[2894,29]]},"133":{"position":[[279,29]]}}}],["execution_statu",{"_index":1109,"t":{"128":{"position":[[956,16],[2353,16],[2647,16]]},"154":{"position":[[1791,18],[5059,18],[9055,18],[12228,18]]}}}],["executor",{"_index":432,"t":{"65":{"position":[[239,9]]},"79":{"position":[[971,8],[1252,8]]},"115":{"position":[[2945,9]]}}}],["exhibit",{"_index":1655,"t":{"234":{"position":[[227,7]]}}}],["exist",{"_index":173,"t":{"53":{"position":[[1007,7]]},"59":{"position":[[1407,8]]},"89":{"position":[[1115,8]]},"128":{"position":[[1078,6]]},"210":{"position":[[569,10]]}}}],["exit",{"_index":813,"t":{"89":{"position":[[1784,6],[1889,6]]},"101":{"position":[[2445,6]]},"260":{"position":[[1500,6],[1507,4],[1967,5],[1973,4]]}}}],["exp_id",{"_index":1261,"t":{"154":{"position":[[6480,7]]},"184":{"position":[[148,7],[388,6],[483,6],[651,7]]}}}],["exp_{session_id}.yaml",{"_index":1214,"t":{"152":{"position":[[997,22]]}}}],["experi",{"_index":917,"t":{"105":{"position":[[627,10]]},"115":{"position":[[1949,10],[2374,10]]},"131":{"position":[[773,10]]},"150":{"position":[[139,11],[564,12],[619,10],[741,10],[788,10],[871,10],[944,10],[1059,11]]},"152":{"position":[[73,10],[125,10],[156,10],[351,10],[461,10],[796,10],[1112,10],[1238,10],[1336,10],[1402,10],[1492,10]]},"154":{"position":[[6421,10]]},"182":{"position":[[41,10],[62,11],[129,11],[247,10]]},"184":{"position":[[24,11],[85,11],[170,10],[217,10],[260,10],[607,10]]},"186":{"position":[[24,10],[74,11],[241,10],[382,11]]},"228":{"position":[[848,10]]},"260":{"position":[[1616,10],[2079,10]]}}}],["experience_text",{"_index":1265,"t":{"154":{"position":[[6513,16]]},"184":{"position":[[181,16],[551,15],[661,16]]}}}],["experiment",{"_index":1730,"t":{"258":{"position":[[848,12]]}}}],["expertis",{"_index":1544,"t":{"210":{"position":[[701,10]]}}}],["explain",{"_index":240,"t":{"55":{"position":[[3,9]]},"71":{"position":[[30,9]]},"154":{"position":[[4515,7]]}}}],["explicit",{"_index":1618,"t":{"224":{"position":[[2718,8]]}}}],["explicitli",{"_index":646,"t":{"75":{"position":[[256,10]]},"124":{"position":[[915,10]]},"178":{"position":[[636,11]]},"204":{"position":[[515,11]]}}}],["export",{"_index":484,"t":{"67":{"position":[[267,8],[1550,7],[1641,6]]},"69":{"position":[[1242,10],[1413,10],[1458,10],[1506,10],[1595,6],[1643,9],[1661,6],[1720,9]]},"180":{"position":[[1703,6]]},"200":{"position":[[635,6]]}}}],["expos",{"_index":545,"t":{"69":{"position":[[448,6],[960,6]]}}}],["ext_llms.llm_config",{"_index":1520,"t":{"206":{"position":[[416,20],[798,23],[1199,20]]}}}],["extend",{"_index":263,"t":{"57":{"position":[[399,8]]},"93":{"position":[[44,6]]},"228":{"position":[[1705,6],[1750,8]]},"238":{"position":[[2019,7]]}}}],["extens",{"_index":1615,"t":{"224":{"position":[[1663,10],[2170,10]]},"238":{"position":[[2880,10]]}}}],["extern",{"_index":711,"t":{"85":{"position":[[93,8],[643,8],[1695,8]]}}}],["extra",{"_index":781,"t":{"87":{"position":[[472,6]]},"113":{"position":[[519,5]]},"180":{"position":[[536,5]]},"206":{"position":[[487,5],[1249,5]]},"212":{"position":[[1417,5]]},"228":{"position":[[1828,5]]},"238":{"position":[[1009,5]]}}}],["extra_bodi",{"_index":1488,"t":{"196":{"position":[[1095,10]]}}}],["extract",{"_index":1207,"t":{"150":{"position":[[733,7]]},"152":{"position":[[1100,7]]},"182":{"position":[[121,7]]},"186":{"position":[[64,9]]},"260":{"position":[[1627,10],[2090,10]]}}}],["f\"embed",{"_index":1471,"t":{"194":{"position":[[3798,11]]}}}],["facil",{"_index":1038,"t":{"113":{"position":[[3191,10]]}}}],["fail",{"_index":870,"t":{"99":{"position":[[564,9],[720,7],[741,9]]},"135":{"position":[[41,6]]},"139":{"position":[[448,6],[517,6]]},"141":{"position":[[376,6],[406,6],[426,6]]},"154":{"position":[[1896,6],[3254,6],[4388,7],[6628,6]]},"196":{"position":[[962,4]]},"212":{"position":[[548,4],[2225,6]]}}}],["failur",{"_index":1110,"t":{"128":{"position":[[982,7],[1831,8],[2595,7]]},"154":{"position":[[1810,7]]},"238":{"position":[[1102,7]]}}}],["fallback",{"_index":1485,"t":{"196":{"position":[[926,8]]}}}],["fallback_model",{"_index":1486,"t":{"196":{"position":[[1048,15]]}}}],["fals",{"_index":315,"t":{"61":{"position":[[107,6]]},"85":{"position":[[509,6],[752,5]]},"105":{"position":[[504,6],[713,6]]},"111":{"position":[[400,6],[579,6],[978,6]]},"115":{"position":[[245,5],[270,6],[1132,5],[1905,5],[2014,5],[2232,5],[2323,5],[2446,5]]},"137":{"position":[[1237,9]]},"234":{"position":[[760,7]]},"238":{"position":[[308,6],[1320,5],[1336,5],[1559,7],[3555,6]]},"241":{"position":[[622,6]]}}}],["faq",{"_index":1599,"t":{"222":{"position":[[3359,4]]}}}],["far",{"_index":1528,"t":{"208":{"position":[[476,3]]}}}],["faster",{"_index":1128,"t":{"131":{"position":[[997,6]]}}}],["featur",{"_index":643,"t":{"75":{"position":[[197,8]]},"111":{"position":[[1126,8]]},"152":{"position":[[84,7],[167,8]]},"228":{"position":[[319,8]]},"238":{"position":[[2989,8]]}}}],["few",{"_index":126,"t":{"53":{"position":[[21,3],[268,3],[439,3]]},"79":{"position":[[335,3]]},"200":{"position":[[445,3]]}}}],["field",{"_index":227,"t":{"53":{"position":[[2979,7],[3207,6]]},"113":{"position":[[1434,7]]},"124":{"position":[[1115,5]]},"135":{"position":[[247,6]]},"139":{"position":[[898,6],[940,7]]},"184":{"position":[[490,5],[567,6]]},"206":{"position":[[1171,6]]},"212":{"position":[[1423,6],[1470,7],[1759,5],[1819,5]]},"220":{"position":[[130,6]]},"224":{"position":[[1580,5],[1796,6],[1919,5],[2059,5],[2224,5],[2507,5]]},"226":{"position":[[139,5],[203,5],[249,5],[311,5]]},"238":{"position":[[1015,6],[1046,6],[2262,6],[3519,5]]},"241":{"position":[[577,5]]}}}],["field(default_factory=list",{"_index":828,"t":{"91":{"position":[[578,27],[635,27],[682,27]]}}}],["fifth",{"_index":1113,"t":{"128":{"position":[[1771,5]]}}}],["figur",{"_index":50,"t":{"47":{"position":[[112,7]]},"53":{"position":[[780,6]]},"210":{"position":[[397,6]]},"212":{"position":[[495,6]]},"236":{"position":[[209,8]]}}}],["file",{"_index":30,"t":{"44":{"position":[[66,4]]},"47":{"position":[[152,4],[264,4]]},"49":{"position":[[131,4],[333,5]]},"59":{"position":[[531,5]]},"63":{"position":[[115,5],[410,5],[447,5],[710,6],[1369,4],[2548,4]]},"65":{"position":[[560,5]]},"67":{"position":[[620,5],[781,5],[908,4],[2317,5],[2432,4]]},"69":{"position":[[105,4],[212,4],[845,5],[1052,4],[1136,4],[1756,4],[1782,4]]},"71":{"position":[[1471,5]]},"75":{"position":[[345,4]]},"79":{"position":[[128,5],[567,5]]},"81":{"position":[[266,5]]},"83":{"position":[[448,5],[533,4],[573,4],[651,4]]},"89":{"position":[[1154,4]]},"95":{"position":[[62,6],[249,5],[418,4],[1139,6],[1235,5],[1257,4],[1312,5]]},"97":{"position":[[1191,4]]},"101":{"position":[[1252,6],[1438,6],[1449,6],[2284,5],[2318,5]]},"113":{"position":[[816,6],[865,5],[1165,5],[1406,4],[1787,5],[2003,4],[3764,5],[3828,4]]},"115":{"position":[[58,5],[134,4],[186,4],[445,5],[1586,5],[1654,5]]},"126":{"position":[[725,4],[891,4],[1093,4],[1249,4],[1317,4],[1385,4],[1471,4],[1536,4],[1638,4],[1840,4],[2399,4],[2727,4],[2795,6],[2881,4],[2946,6]]},"128":{"position":[[289,4],[350,4],[472,4],[673,4],[812,5],[1051,4],[1328,4],[1434,4]]},"133":{"position":[[358,5]]},"139":{"position":[[104,5],[275,5],[597,4],[788,4],[863,4]]},"141":{"position":[[678,4]]},"143":{"position":[[155,4],[690,5],[717,4],[865,5],[996,5],[1169,5]]},"152":{"position":[[284,4],[744,4],[947,4],[986,4],[1579,5]]},"154":{"position":[[824,4],[1028,4],[1185,4],[1264,4],[1469,4],[2055,4],[2210,4],[2335,4],[2463,4],[2592,4],[2724,4],[2857,4],[3413,4],[3568,4],[3693,4],[3821,4],[3950,4],[4082,4],[4215,4],[4677,4],[5768,4],[5972,4],[7924,4],[8230,4],[8320,4],[8441,4],[8460,4],[8497,4],[8520,4],[8678,4],[10055,4],[10361,4],[10459,4],[10616,4],[10839,4],[11093,4],[11383,4],[12848,4],[13138,4],[13444,4],[13599,4]]},"178":{"position":[[171,5]]},"180":{"position":[[227,5]]},"184":{"position":[[62,4],[106,4],[232,4],[308,4],[405,4],[533,4]]},"186":{"position":[[196,4]]},"188":{"position":[[129,5]]},"190":{"position":[[110,5]]},"194":{"position":[[3908,4]]},"196":{"position":[[441,5]]},"200":{"position":[[1069,5]]},"204":{"position":[[99,5]]},"206":{"position":[[366,5],[467,4],[598,4]]},"218":{"position":[[16,4],[70,4]]},"220":{"position":[[297,4]]},"224":{"position":[[435,6],[1644,4],[1951,4],[2148,4]]},"226":{"position":[[165,4]]},"232":{"position":[[22,6],[61,4],[107,4]]},"234":{"position":[[127,4],[1900,4],[2826,5]]},"236":{"position":[[467,5],[523,4],[791,4]]},"238":{"position":[[330,4],[2324,4],[2398,4],[2492,4],[2539,5],[2661,4],[2818,4],[2914,5]]},"241":{"position":[[433,4],[1121,4]]},"250":{"position":[[104,6],[277,5],[361,4]]},"252":{"position":[[154,5],[262,5]]},"256":{"position":[[275,5]]},"260":{"position":[[1376,7],[1391,4],[1725,6],[1739,4]]},"262":{"position":[[196,4],[1367,5]]},"270":{"position":[[559,4]]},"272":{"position":[[527,5],[615,4],[737,4],[989,4]]},"274":{"position":[[997,5]]}}}],["file.read",{"_index":55,"t":{"47":{"position":[[186,11]]},"128":{"position":[[834,11]]}}}],["file_cont",{"_index":1106,"t":{"128":{"position":[[818,13]]}}}],["file_name=\"anomaly_detection_results.csv",{"_index":1680,"t":{"234":{"position":[[1846,42]]},"236":{"position":[[737,42]]}}}],["file_name=\"artifact.csv",{"_index":1583,"t":{"218":{"position":[[651,25]]}}}],["file_path",{"_index":1104,"t":{"128":{"position":[[756,9]]}}}],["filenotfoundexcept",{"_index":1102,"t":{"128":{"position":[[494,21],[1024,22]]}}}],["fill",{"_index":1593,"t":{"220":{"position":[[152,7]]},"260":{"position":[[174,4]]},"274":{"position":[[420,4]]}}}],["filter",{"_index":304,"t":{"59":{"position":[[1279,9]]},"71":{"position":[[333,6]]},"212":{"position":[[2390,6]]}}}],["final",{"_index":418,"t":{"63":{"position":[[5348,8]]},"89":{"position":[[2458,8]]},"126":{"position":[[2574,5]]},"150":{"position":[[347,7]]},"224":{"position":[[2465,8]]}}}],["find",{"_index":324,"t":{"63":{"position":[[200,4]]},"67":{"position":[[795,4]]},"73":{"position":[[328,4]]},"85":{"position":[[1833,5]]},"128":{"position":[[463,4]]},"137":{"position":[[754,4]]},"152":{"position":[[456,4],[733,4]]},"154":{"position":[[147,4],[7226,4]]},"188":{"position":[[342,4]]},"192":{"position":[[572,4]]},"198":{"position":[[490,4]]},"204":{"position":[[326,4]]},"208":{"position":[[139,4]]},"214":{"position":[[418,4]]},"262":{"position":[[2234,4]]},"266":{"position":[[261,4]]}}}],["finish",{"_index":869,"t":{"99":{"position":[[552,11],[654,8],[690,11]]},"101":{"position":[[157,8]]},"128":{"position":[[314,8]]},"154":{"position":[[10005,8],[12798,8]]},"262":{"position":[[1073,11]]}}}],["firewal",{"_index":740,"t":{"85":{"position":[[1565,8],[2273,8]]}}}],["first",{"_index":108,"t":{"51":{"position":[[51,6]]},"53":{"position":[[734,5]]},"59":{"position":[[736,5]]},"63":{"position":[[820,6]]},"71":{"position":[[7,5]]},"75":{"position":[[381,5]]},"126":{"position":[[2153,5],[2507,5]]},"128":{"position":[[1240,5],[1502,5]]},"139":{"position":[[0,6]]},"150":{"position":[[253,5],[525,5]]},"224":{"position":[[1547,6]]},"228":{"position":[[21,5]]}}}],["fix",{"_index":1171,"t":{"139":{"position":[[644,3]]},"141":{"position":[[574,3]]},"147":{"position":[[170,3]]},"154":{"position":[[270,5],[4417,3]]},"210":{"position":[[423,5]]},"228":{"position":[[1267,3]]}}}],["flag",{"_index":836,"t":{"91":{"position":[[1238,4]]}}}],["float",{"_index":1713,"t":{"241":{"position":[[718,6]]}}}],["float64",{"_index":1260,"t":{"154":{"position":[[5256,7],[5677,7]]}}}],["flow",{"_index":1557,"t":{"212":{"position":[[1162,5]]}}}],["focus",{"_index":1543,"t":{"210":{"position":[[682,7]]}}}],["folder",{"_index":326,"t":{"63":{"position":[[253,7],[1402,6]]},"91":{"position":[[1101,6]]},"95":{"position":[[10,6],[168,7],[188,6],[259,7],[456,6],[507,6],[575,6],[632,6],[813,6],[956,6],[1036,6],[1083,7],[1177,7]]},"105":{"position":[[31,6],[192,7]]},"113":{"position":[[934,7],[1026,6],[3977,6]]},"115":{"position":[[1630,6],[1686,6],[1763,6],[2057,6]]},"139":{"position":[[125,7]]},"152":{"position":[[1413,6],[1503,6]]},"184":{"position":[[271,6]]},"194":{"position":[[217,7]]},"218":{"position":[[58,7]]},"236":{"position":[[609,6]]},"250":{"position":[[165,7],[198,6],[287,8],[399,6],[450,6],[518,6],[575,6],[756,6]]},"258":{"position":[[35,6]]},"260":{"position":[[286,6]]},"262":{"position":[[148,6]]},"274":{"position":[[799,6],[862,6]]}}}],["follow",{"_index":27,"t":{"44":{"position":[[13,9]]},"47":{"position":[[81,9]]},"51":{"position":[[126,9],[396,7]]},"53":{"position":[[770,9]]},"57":{"position":[[146,9]]},"63":{"position":[[69,9],[801,9],[4123,9],[4288,9],[5218,9]]},"65":{"position":[[152,10],[485,9]]},"67":{"position":[[919,8],[1132,9],[1736,9]]},"69":{"position":[[223,8],[1147,8],[1815,8]]},"71":{"position":[[1426,9]]},"73":{"position":[[542,9]]},"79":{"position":[[677,9]]},"81":{"position":[[460,9]]},"85":{"position":[[299,9],[979,9],[1325,10]]},"89":{"position":[[1217,9]]},"95":{"position":[[301,9]]},"101":{"position":[[1142,9]]},"107":{"position":[[2094,9],[2478,9]]},"109":{"position":[[171,9]]},"113":{"position":[[953,6],[1212,9],[1424,9],[1823,9],[3774,9]]},"115":{"position":[[387,9]]},"126":{"position":[[202,9],[472,6]]},"131":{"position":[[65,9],[682,10]]},"135":{"position":[[71,6]]},"137":{"position":[[170,10],[879,8],[912,9]]},"139":{"position":[[423,9]]},"141":{"position":[[337,9]]},"143":{"position":[[264,8],[1217,8]]},"154":{"position":[[1929,9],[2991,9],[3287,9],[5297,9],[9468,9],[12475,9]]},"163":{"position":[[20,6]]},"178":{"position":[[130,9]]},"180":{"position":[[186,9],[1273,9],[1622,9],[1790,6]]},"184":{"position":[[127,9]]},"188":{"position":[[88,9]]},"190":{"position":[[61,9]]},"192":{"position":[[320,9]]},"194":{"position":[[3975,9],[4222,9]]},"196":{"position":[[392,9]]},"198":{"position":[[223,9]]},"200":{"position":[[389,9],[1020,9]]},"202":{"position":[[17,6],[159,10],[699,9]]},"204":{"position":[[58,9]]},"206":{"position":[[531,10]]},"212":{"position":[[1460,9]]},"214":{"position":[[225,9]]},"218":{"position":[[222,9],[590,9],[965,6],[1116,8]]},"220":{"position":[[339,9]]},"222":{"position":[[120,8],[1594,9]]},"230":{"position":[[418,8]]},"234":{"position":[[285,9],[2057,9]]},"238":{"position":[[2761,8],[3253,8],[3383,8]]},"241":{"position":[[149,9],[249,9],[471,9]]},"243":{"position":[[207,9]]},"248":{"position":[[42,9]]},"250":{"position":[[267,9]]},"252":{"position":[[211,9]]},"258":{"position":[[298,9]]},"260":{"position":[[108,6],[220,9],[517,9],[1690,8]]},"262":{"position":[[65,9]]},"266":{"position":[[193,9]]},"268":{"position":[[506,9],[815,9],[1065,9]]},"270":{"position":[[90,9]]},"272":{"position":[[82,9],[775,9]]},"274":{"position":[[354,6],[745,9]]}}}],["font='isometric1",{"_index":1592,"t":{"218":{"position":[[1321,18]]}}}],["form",{"_index":724,"t":{"85":{"position":[[559,4]]},"137":{"position":[[1399,5]]},"220":{"position":[[480,5],[736,5]]},"228":{"position":[[233,4],[630,4]]},"236":{"position":[[453,4]]},"241":{"position":[[330,5]]}}}],["format",{"_index":416,"t":{"63":{"position":[[4233,6],[5328,6]]},"97":{"position":[[266,7]]},"111":{"position":[[1351,6]]},"113":{"position":[[4511,7],[4567,7]]},"115":{"position":[[202,7],[838,6]]},"124":{"position":[[1174,7]]},"126":{"position":[[496,7]]},"178":{"position":[[226,6]]},"180":{"position":[[282,6]]},"184":{"position":[[630,7]]},"188":{"position":[[593,6]]},"196":{"position":[[94,6]]},"200":{"position":[[88,7]]},"238":{"position":[[1188,7]]},"256":{"position":[[141,7]]}}}],["former",{"_index":1390,"t":{"192":{"position":[[69,6]]}}}],["forth",{"_index":1122,"t":{"131":{"position":[[514,5]]}}}],["forward",{"_index":750,"t":{"85":{"position":[[1965,7],[2166,10]]}}}],["found",{"_index":124,"t":{"51":{"position":[[625,5]]},"53":{"position":[[3571,5]]},"63":{"position":[[5769,6],[6111,6],[6445,6]]},"67":{"position":[[1949,6]]},"93":{"position":[[128,5]]},"167":{"position":[[132,5]]},"169":{"position":[[145,5]]},"192":{"position":[[9,7],[247,5]]},"196":{"position":[[365,5]]},"198":{"position":[[142,5]]},"200":{"position":[[993,5]]},"212":{"position":[[521,5]]},"214":{"position":[[129,5]]},"256":{"position":[[315,5]]}}}],["fourth",{"_index":1098,"t":{"126":{"position":[[2806,6]]},"128":{"position":[[1714,6]]}}}],["framework",{"_index":429,"t":{"65":{"position":[[111,11]]},"75":{"position":[[393,10]]},"111":{"position":[[31,10],[1002,10]]},"228":{"position":[[33,9],[119,9]]}}}],["free",{"_index":1709,"t":{"241":{"position":[[324,5]]}}}],["frequenc",{"_index":193,"t":{"53":{"position":[[1837,9],[2484,9]]}}}],["frontend",{"_index":521,"t":{"67":{"position":[[1986,8],[2035,8]]},"71":{"position":[[77,9],[125,8],[946,9]]},"113":{"position":[[3652,9]]}}}],["fulfil",{"_index":926,"t":{"107":{"position":[[430,7]]}}}],["full",{"_index":1478,"t":{"196":{"position":[[313,4]]},"200":{"position":[[945,4]]},"222":{"position":[[96,4]]},"241":{"position":[[109,4]]}}}],["func(self.valu",{"_index":1249,"t":{"154":{"position":[[2835,17],[4193,17]]}}}],["function",{"_index":91,"t":{"49":{"position":[[645,9],[841,10],[943,8]]},"51":{"position":[[565,10]]},"63":{"position":[[3141,8]]},"65":{"position":[[1414,9]]},"73":{"position":[[881,8],[1055,9]]},"89":{"position":[[1745,8]]},"93":{"position":[[29,9]]},"101":{"position":[[1643,8],[2402,8]]},"113":{"position":[[2979,8],[3095,8],[3332,8],[4207,13],[4251,13],[4430,13]]},"115":{"position":[[1414,9]]},"137":{"position":[[929,9],[1050,8]]},"141":{"position":[[70,9],[148,8],[523,8],[706,8],[894,9],[977,9],[1024,9]]},"143":{"position":[[132,8],[233,8],[505,9],[565,8],[656,8]]},"188":{"position":[[774,14]]},"194":{"position":[[2461,8],[2664,8]]},"218":{"position":[[1376,8]]},"220":{"position":[[73,8]]},"222":{"position":[[1012,8],[1653,8]]},"224":{"position":[[1807,8]]},"228":{"position":[[241,9],[599,9],[645,11]]},"230":{"position":[[226,8]]},"234":{"position":[[11,8],[162,8],[577,8],[2349,8]]},"236":{"position":[[7,13]]},"238":{"position":[[64,8],[467,9],[872,9],[1376,8]]},"243":{"position":[[49,8],[157,8],[256,11]]},"262":{"position":[[1781,10],[1886,10],[2004,10]]}}}],["futur",{"_index":232,"t":{"53":{"position":[[3378,6]]},"152":{"position":[[1372,6]]}}}],["g",{"_index":1776,"t":{"270":{"position":[[332,2]]},"272":{"position":[[324,2]]}}}],["gam",{"_index":395,"t":{"63":{"position":[[3620,6],[4056,6],[4715,6],[5151,6]]}}}],["gamepad",{"_index":400,"t":{"63":{"position":[[3747,8],[4842,8]]}}}],["gateway",{"_index":737,"t":{"85":{"position":[[1377,10]]}}}],["gemini",{"_index":1382,"t":{"190":{"position":[[220,7]]},"206":{"position":[[153,6],[1100,7],[1492,6]]}}}],["gener",{"_index":14,"t":{"41":{"position":[[147,9]]},"47":{"position":[[40,9],[124,9],[227,9],[376,9],[509,8]]},"49":{"position":[[170,9],[448,11],[674,11],[922,9],[1011,9]]},"51":{"position":[[111,9],[190,9],[366,9]]},"53":{"position":[[661,8],[1032,9],[1394,9],[1707,9],[1939,9],[2014,10],[2145,9],[2221,9],[2765,9],[2923,9],[3230,9],[3390,11],[3598,10]]},"57":{"position":[[257,10]]},"59":{"position":[[147,10],[336,8],[742,8],[1090,11],[1254,10]]},"63":{"position":[[90,8],[228,9],[360,9],[519,10],[1499,9],[1646,9],[3035,8],[3355,9],[4450,9]]},"65":{"position":[[754,10],[810,9],[1582,9]]},"75":{"position":[[492,8]]},"77":{"position":[[556,8]]},"85":{"position":[[256,9]]},"89":{"position":[[2425,9]]},"95":{"position":[[662,9],[752,9],[906,9]]},"97":{"position":[[1619,8]]},"107":{"position":[[406,8],[1626,8],[1837,9],[2240,9],[2624,9]]},"109":{"position":[[54,8]]},"111":{"position":[[925,10],[1057,11],[1307,11]]},"115":{"position":[[1217,11],[1443,11],[2435,10]]},"124":{"position":[[209,10],[266,8]]},"128":{"position":[[55,8],[637,8],[1117,10],[1185,9],[1587,9],[1974,9],[2046,9],[2391,9]]},"131":{"position":[[84,8],[156,9],[538,8],[841,8],[935,9]]},"135":{"position":[[51,8],[131,8]]},"137":{"position":[[665,9]]},"141":{"position":[[33,9]]},"150":{"position":[[69,11],[929,11]]},"152":{"position":[[393,11]]},"154":{"position":[[1428,8],[1864,9],[3222,9],[4369,9],[4463,8],[4636,8],[5132,9],[5553,9],[8637,8],[9150,9],[9656,9],[11879,8],[12323,9],[12615,9]]},"196":{"position":[[266,8]]},"200":{"position":[[424,8]]},"212":{"position":[[248,8]]},"222":{"position":[[1196,9],[1779,9]]},"224":{"position":[[1747,11],[2672,8]]},"228":{"position":[[885,11],[1163,9],[1234,9]]},"230":{"position":[[265,9],[379,9],[608,9]]},"241":{"position":[[177,9],[1290,8],[1401,10]]},"243":{"position":[[116,8],[232,9],[522,9]]},"250":{"position":[[605,9],[695,9],[849,9]]},"260":{"position":[[2126,9],[2277,9]]},"268":{"position":[[219,10]]}}}],["generator[chatmessagetyp",{"_index":1446,"t":{"194":{"position":[[2031,26]]}}}],["get_embed",{"_index":1434,"t":{"194":{"position":[[1627,14],[2339,14]]}}}],["get_embeddings(self",{"_index":1447,"t":{"194":{"position":[[2080,20]]}}}],["get_sess",{"_index":805,"t":{"89":{"position":[[1240,12],[1449,11],[2307,11]]},"101":{"position":[[428,11],[498,11]]}}}],["get_tracer().start_as_current_span(\"span_nam",{"_index":634,"t":{"73":{"position":[[961,47]]}}}],["gf_security_admin_password=secret",{"_index":610,"t":{"71":{"position":[[1576,33]]}}}],["gf_users_allow_sign_up=fals",{"_index":613,"t":{"71":{"position":[[1672,28]]}}}],["giant'",{"_index":1394,"t":{"192":{"position":[[120,7]]}}}],["git",{"_index":1722,"t":{"248":{"position":[[221,3]]}}}],["github",{"_index":1601,"t":{"222":{"position":[[3440,7]]}}}],["give",{"_index":1202,"t":{"150":{"position":[[308,5]]}}}],["given",{"_index":155,"t":{"53":{"position":[[471,5]]},"113":{"position":[[4293,5]]}}}],["glm",{"_index":951,"t":{"109":{"position":[[229,3]]},"169":{"position":[[3,3]]},"198":{"position":[[0,3],[316,4],[517,3]]}}}],["go",{"_index":1121,"t":{"131":{"position":[[502,2]]},"150":{"position":[[259,2]]},"152":{"position":[[37,5]]},"163":{"position":[[3,2]]},"167":{"position":[[56,2]]},"169":{"position":[[66,2]]},"192":{"position":[[161,2]]},"198":{"position":[[63,2]]},"202":{"position":[[0,2]]},"214":{"position":[[53,2]]},"228":{"position":[[1655,5]]},"234":{"position":[[2042,2]]}}}],["goal",{"_index":1548,"t":{"210":{"position":[[828,5]]}}}],["goe",{"_index":1119,"t":{"131":{"position":[[48,4]]},"258":{"position":[[270,4]]},"260":{"position":[[489,4]]}}}],["good",{"_index":758,"t":{"85":{"position":[[2392,4]]},"234":{"position":[[2479,4],[2834,4]]}}}],["googl",{"_index":1313,"t":{"165":{"position":[[24,6]]},"190":{"position":[[21,6]]},"192":{"position":[[76,6]]},"206":{"position":[[146,6],[1485,6]]}}}],["google_genai",{"_index":1379,"t":{"190":{"position":[[134,15]]},"206":{"position":[[1040,15]]}}}],["gpt",{"_index":490,"t":{"67":{"position":[[664,3],[1062,4]]},"115":{"position":[[540,3]]},"131":{"position":[[726,3],[745,3]]},"135":{"position":[[383,3],[394,3]]},"196":{"position":[[580,4]]},"200":{"position":[[1156,4]]},"204":{"position":[[221,4]]},"206":{"position":[[116,3],[739,4],[950,4],[1455,3],[1708,3]]},"254":{"position":[[181,3]]},"256":{"position":[[68,3]]}}}],["grafana",{"_index":602,"t":{"71":{"position":[[1285,7],[1336,7],[1477,8],[1550,7]]}}}],["grafana/grafana",{"_index":606,"t":{"71":{"position":[[1493,15]]}}}],["grafana_data",{"_index":615,"t":{"71":{"position":[[1776,13]]}}}],["grafana_data:/var/lib/grafana",{"_index":614,"t":{"71":{"position":[[1712,29]]}}}],["graph",{"_index":474,"t":{"65":{"position":[[1708,5],[1782,5]]}}}],["groq",{"_index":1384,"t":{"192":{"position":[[0,4],[167,4],[289,5],[307,4],[465,7],[550,4],[599,4]]}}}],["grpc",{"_index":546,"t":{"69":{"position":[[459,4],[971,4],[1184,5]]}}}],["guid",{"_index":480,"t":{"67":{"position":[[167,6]]},"150":{"position":[[41,5],[901,5]]},"152":{"position":[[365,5],[1362,5]]},"182":{"position":[[93,6],[282,5]]},"212":{"position":[[275,5],[361,5],[451,5],[567,5]]},"262":{"position":[[1588,5]]},"266":{"position":[[283,5]]}}}],["handcraft",{"_index":1355,"t":{"182":{"position":[[235,11]]},"184":{"position":[[12,11]]},"186":{"position":[[12,11],[229,11],[370,11]]}}}],["handcrafted_exp_1.yaml",{"_index":1358,"t":{"184":{"position":[[425,23]]}}}],["handcrafted_exp_{exp_id",{"_index":1357,"t":{"184":{"position":[[342,25]]}}}],["handl",{"_index":890,"t":{"101":{"position":[[1657,7],[1745,7]]},"128":{"position":[[220,6]]},"180":{"position":[[725,7]]},"212":{"position":[[741,6]]}}}],["handle(self",{"_index":895,"t":{"101":{"position":[[2031,12]]}}}],["handler",{"_index":889,"t":{"101":{"position":[[1422,8],[1766,8],[1847,8],[1955,7],[2217,7]]},"113":{"position":[[3618,7]]},"262":{"position":[[2272,7]]}}}],["happen",{"_index":1129,"t":{"133":{"position":[[24,7]]},"141":{"position":[[179,8]]},"147":{"position":[[32,7]]},"208":{"position":[[464,8]]}}}],["hard",{"_index":1198,"t":{"150":{"position":[[224,4],[482,4]]}}}],["harm",{"_index":662,"t":{"77":{"position":[[490,7],[565,7]]}}}],["have",{"_index":728,"t":{"85":{"position":[[831,6]]},"196":{"position":[[919,6]]},"228":{"position":[[479,6]]}}}],["hear",{"_index":1362,"t":{"184":{"position":[[702,4],[737,4]]}}}],["hello",{"_index":1363,"t":{"184":{"position":[[707,8]]},"194":{"position":[[4302,7]]},"243":{"position":[[307,7]]},"262":{"position":[[350,7],[1037,7],[1152,7]]}}}],["help",{"_index":818,"t":{"89":{"position":[[2128,4]]},"101":{"position":[[2134,4]]},"113":{"position":[[3205,4]]},"124":{"position":[[241,4]]},"143":{"position":[[41,4]]},"226":{"position":[[328,4]]},"228":{"position":[[1627,4],[2044,4],[2111,4]]},"260":{"position":[[1054,4],[1163,5],[1316,5],[1529,6],[1547,4],[1995,5],[2011,4]]},"262":{"position":[[1306,4]]}}}],["helper",{"_index":1042,"t":{"113":{"position":[[3390,6]]}}}],["here",{"_index":419,"t":{"63":{"position":[[5741,4],[6083,4],[6417,4]]},"65":{"position":[[1765,4]]},"107":{"position":[[1168,4]]},"111":{"position":[[135,4]]},"150":{"position":[[638,4]]},"167":{"position":[[138,4]]},"169":{"position":[[151,5]]},"192":{"position":[[221,5],[253,5]]},"194":{"position":[[2750,4],[3134,4],[3565,5]]},"198":{"position":[[148,5]]},"200":{"position":[[256,4],[415,5]]},"204":{"position":[[350,5]]},"214":{"position":[[135,4]]},"222":{"position":[[2367,4],[2702,4],[3029,4]]},"224":{"position":[[562,4]]},"234":{"position":[[219,4]]},"238":{"position":[[1196,4]]}}}],["hide",{"_index":619,"t":{"73":{"position":[[252,4]]}}}],["hierarchi",{"_index":475,"t":{"65":{"position":[[1741,9]]}}}],["highest",{"_index":292,"t":{"59":{"position":[[986,7]]},"63":{"position":[[2643,7]]}}}],["highlight",{"_index":1629,"t":{"228":{"position":[[307,11]]}}}],["histogram",{"_index":214,"t":{"53":{"position":[[2524,9]]}}}],["histori",{"_index":128,"t":{"53":{"position":[[42,7],[258,7],[328,8],[395,7],[557,8],[810,7],[847,7],[967,8],[1156,7],[1267,7],[1496,8],[1572,8],[1604,7],[1859,7],[1905,7],[3032,8],[3078,7],[3143,7],[3433,7],[3540,7]]},"55":{"position":[[69,7],[210,7]]},"105":{"position":[[428,7],[672,7]]},"111":{"position":[[771,8]]},"115":{"position":[[1884,7],[1994,7],[2202,7],[2419,7]]},"150":{"position":[[716,7]]},"152":{"position":[[110,7],[581,7],[624,7],[1142,8]]},"154":{"position":[[6362,8],[6462,7]]},"208":{"position":[[415,8]]},"210":{"position":[[89,8],[851,7],[971,7]]},"260":{"position":[[1581,7],[2044,7]]}}}],["home/data.csv",{"_index":1095,"t":{"126":{"position":[[558,14],[628,14],[730,14],[1322,14],[1476,14],[2236,16],[2404,14],[2732,14],[2886,14]]}}}],["home/taskweaver/sample.csv",{"_index":1734,"t":{"260":{"position":[[1778,27]]}}}],["host",{"_index":663,"t":{"77":{"position":[[510,4]]},"79":{"position":[[381,4],[440,4]]},"83":{"position":[[294,4],[547,4]]},"85":{"position":[[698,4],[1900,4],[2216,5]]},"133":{"position":[[431,4]]},"270":{"position":[[283,4],[357,4]]},"272":{"position":[[275,4],[349,4]]}}}],["host'",{"_index":739,"t":{"85":{"position":[[1558,6]]}}}],["http",{"_index":561,"t":{"69":{"position":[[1213,5]]}}}],["http://0.0.0.0:8000",{"_index":1502,"t":{"200":{"position":[[916,20],[1093,22]]}}}],["http://127.0.0.1:4317",{"_index":496,"t":{"67":{"position":[[1003,24],[2347,22]]}}}],["http://localhost:11434",{"_index":1517,"t":{"202":{"position":[[603,23],[768,25]]}}}],["http://localhost:16686",{"_index":523,"t":{"67":{"position":[[2047,23]]}}}],["http://localhost:8000",{"_index":1772,"t":{"268":{"position":[[1369,21]]},"274":{"position":[[911,21]]}}}],["http://localhost:9090",{"_index":522,"t":{"67":{"position":[[1998,21]]}}}],["https://.yaml",{"_index":1168,"t":{"139":{"position":[[481,12]]}}}],["nat",{"_index":726,"t":{"85":{"position":[[598,4]]}}}],["nativ",{"_index":1376,"t":{"188":{"position":[[670,6]]}}}],["natur",{"_index":11,"t":{"41":{"position":[[113,7],[317,7]]},"107":{"position":[[681,7]]},"234":{"position":[[2564,7],[2606,7]]}}}],["nb",{"_index":1246,"t":{"154":{"position":[[2697,3],[4055,3]]}}}],["necessari",{"_index":842,"t":{"95":{"position":[[239,9]]},"194":{"position":[[328,9]]},"200":{"position":[[531,9]]},"252":{"position":[[77,9]]},"260":{"position":[[186,9]]},"274":{"position":[[432,9]]}}}],["need",{"_index":20,"t":{"41":{"position":[[220,6]]},"55":{"position":[[237,4]]},"63":{"position":[[53,4],[647,4]]},"67":{"position":[[55,4],[406,4],[1081,4],[1278,4],[2223,4]]},"73":{"position":[[121,4],[906,4],[1039,4]]},"75":{"position":[[248,4]]},"79":{"position":[[42,4]]},"81":{"position":[[307,4],[822,4],[1238,4]]},"83":{"position":[[170,5],[631,5],[842,5],[917,5]]},"85":{"position":[[2461,4]]},"97":{"position":[[1664,5]]},"113":{"position":[[945,4],[3699,4],[4340,4]]},"115":{"position":[[3223,4],[3441,4]]},"131":{"position":[[765,4],[1083,5]]},"137":{"position":[[969,4]]},"143":{"position":[[595,4],[1009,4],[1337,4]]},"152":{"position":[[180,4],[1069,5]]},"184":{"position":[[40,4]]},"186":{"position":[[332,4]]},"188":{"position":[[517,4],[703,4],[727,4]]},"194":{"position":[[2208,4],[2381,4]]},"206":{"position":[[274,4],[379,4],[403,4]]},"210":{"position":[[522,4],[909,5]]},"212":{"position":[[89,4],[342,5],[641,7],[732,5],[894,4],[2235,4]]},"218":{"position":[[1424,4]]},"220":{"position":[[9,4]]},"234":{"position":[[20,5],[2034,4]]},"250":{"position":[[34,4]]},"252":{"position":[[31,4],[195,4]]},"256":{"position":[[202,4]]},"260":{"position":[[2243,4]]},"262":{"position":[[475,4],[2036,4],[2097,4]]},"266":{"position":[[4,4]]},"274":{"position":[[243,4]]}}}],["network",{"_index":712,"t":{"85":{"position":[[102,8],[468,7],[567,7],[652,8],[778,8],[818,7],[942,7],[1005,7],[1243,7],[1441,8],[1483,7],[2083,8],[2545,7]]}}}],["network'",{"_index":745,"t":{"85":{"position":[[1671,9],[2324,9]]}}}],["new",{"_index":174,"t":{"53":{"position":[[1017,3]]},"63":{"position":[[282,3]]},"81":{"position":[[1165,3],[1286,3]]},"89":{"position":[[1337,3],[1541,3]]},"101":{"position":[[82,3],[390,3],[527,3]]},"113":{"position":[[685,3],[3492,3],[4120,3],[4145,3],[4400,3],[4598,3]]},"137":{"position":[[1134,3]]},"152":{"position":[[413,3],[740,3],[849,3],[982,3]]},"154":{"position":[[8,3]]},"178":{"position":[[65,3]]},"180":{"position":[[121,3]]},"194":{"position":[[158,3],[524,3],[1505,3]]},"196":{"position":[[736,3]]},"200":{"position":[[1419,3]]},"234":{"position":[[661,3],[984,3],[2444,3]]},"238":{"position":[[1460,3]]},"241":{"position":[[933,3]]},"260":{"position":[[1922,3]]}}}],["newli",{"_index":309,"t":{"59":{"position":[[1366,5]]},"238":{"position":[[2054,5]]}}}],["next",{"_index":190,"t":{"53":{"position":[[1585,4]]},"67":{"position":[[1072,5]]},"97":{"position":[[1498,4],[2034,4]]},"150":{"position":[[383,4]]},"152":{"position":[[1151,4]]},"220":{"position":[[0,5]]},"234":{"position":[[2951,4]]}}}],["nightli",{"_index":1501,"t":{"200":{"position":[[793,8]]}}}],["non",{"_index":632,"t":{"73":{"position":[[821,3]]},"154":{"position":[[213,3],[6717,3],[6788,3]]},"238":{"position":[[3606,3]]}}}],["none",{"_index":378,"t":{"63":{"position":[[3295,4]]},"87":{"position":[[495,4]]},"89":{"position":[[299,5],[337,5],[378,5],[404,5],[1287,5],[1705,5]]},"101":{"position":[[758,5],[1246,5],[1323,5],[2369,5]]},"107":{"position":[[1766,4]]},"113":{"position":[[349,5]]},"115":{"position":[[314,4]]},"128":{"position":[[1704,5],[1843,5],[2242,4],[2667,4]]},"154":{"position":[[1730,4],[4998,4],[8994,4],[12167,4]]},"194":{"position":[[815,5],[1077,4],[1271,4],[1472,4],[1906,5],[1940,5],[1971,5],[2005,5],[2058,5],[2064,6],[2852,5]]},"222":{"position":[[1136,4]]}}}],["note",{"_index":234,"t":{"53":{"position":[[3415,4]]},"63":{"position":[[6000,4],[6342,4],[6676,4]]},"107":{"position":[[1030,4]]},"113":{"position":[[3920,4]]},"141":{"position":[[809,4]]},"152":{"position":[[520,4]]},"192":{"position":[[513,5]]},"194":{"position":[[2148,5]]},"198":{"position":[[432,5]]},"202":{"position":[[883,5]]},"214":{"position":[[359,5]]},"218":{"position":[[855,4],[1361,4]]},"238":{"position":[[2799,4],[3562,4]]},"264":{"position":[[106,4]]},"274":{"position":[[15,4],[566,4]]}}}],["notebook",{"_index":1193,"t":{"145":{"position":[[407,9]]}}}],["notic",{"_index":975,"t":{"111":{"position":[[589,6]]}}}],["now",{"_index":423,"t":{"65":{"position":[[11,3]]},"67":{"position":[[447,3]]},"79":{"position":[[1030,3]]},"85":{"position":[[1219,4]]},"139":{"position":[[178,4]]},"143":{"position":[[73,4]]},"152":{"position":[[542,3]]},"274":{"position":[[975,3]]}}}],["np",{"_index":933,"t":{"107":{"position":[[1693,2],[2161,2],[2545,2]]}}}],["np.random.rand",{"_index":223,"t":{"53":{"position":[[2781,17]]}}}],["np.random.rand(10",{"_index":935,"t":{"107":{"position":[[1713,18],[2181,18],[2565,18]]}}}],["null",{"_index":1049,"t":{"115":{"position":[[281,4],[298,4],[322,7],[660,4],[894,5],[3262,5]]},"178":{"position":[[685,5]]},"204":{"position":[[564,5]]}}}],["number",{"_index":197,"t":{"53":{"position":[[2039,8],[2128,7],[2162,8],[2238,7],[2295,8],[2409,8],[2497,7],[2569,7],[2757,7],[2906,7],[2940,8]]},"57":{"position":[[183,6],[294,6]]},"61":{"position":[[161,6]]},"65":{"position":[[441,6]]},"67":{"position":[[348,6]]},"107":{"position":[[49,6],[125,6],[169,7],[1645,7]]},"115":{"position":[[2498,6],[2595,6],[2794,6],[2864,6]]},"212":{"position":[[1102,6]]}}}],["numer",{"_index":1219,"t":{"154":{"position":[[217,9],[6721,7],[6792,7],[6846,7]]},"234":{"position":[[954,7],[1407,9]]},"238":{"position":[[1936,7]]}}}],["numeric_onli",{"_index":1235,"t":{"154":{"position":[[2182,13],[3540,13]]}}}],["numeric_only=tru",{"_index":1257,"t":{"154":{"position":[[4947,18],[5488,18]]}}}],["numpi",{"_index":83,"t":{"49":{"position":[[485,8]]},"53":{"position":[[2695,6],[2837,6]]},"107":{"position":[[1684,5],[2152,5],[2536,5]]},"115":{"position":[[1254,8]]}}}],["object",{"_index":226,"t":{"53":{"position":[[2964,6]]},"93":{"position":[[246,7]]},"113":{"position":[[3125,7],[3371,7],[3420,7],[3442,6],[3476,6],[3555,6]]},"135":{"position":[[147,6]]},"243":{"position":[[132,6],[222,6],[334,7]]},"262":{"position":[[506,6],[536,6],[709,7],[883,6]]}}}],["observ",{"_index":428,"t":{"65":{"position":[[97,13]]},"171":{"position":[[44,14]]},"196":{"position":[[227,14],[896,14]]}}}],["obtain",{"_index":1027,"t":{"113":{"position":[[2508,6]]},"236":{"position":[[429,8]]},"268":{"position":[[527,6]]}}}],["offic",{"_index":1387,"t":{"192":{"position":[[44,7]]}}}],["offici",{"_index":1344,"t":{"180":{"position":[[996,8],[1813,8]]},"266":{"position":[[142,8],[236,8]]}}}],["older",{"_index":1078,"t":{"115":{"position":[[3188,5]]},"256":{"position":[[169,5]]}}}],["ollama",{"_index":949,"t":{"109":{"position":[[200,6],[452,6]]},"163":{"position":[[9,6]]},"202":{"position":[[6,6],[145,6],[192,6],[222,6],[264,6],[345,6],[389,6],[558,7],[845,9],[928,6],[981,6]]}}}],["on",{"_index":141,"t":{"53":{"position":[[225,3],[3402,3]]},"59":{"position":[[1129,3],[1304,5],[1416,5]]},"63":{"position":[[3898,4],[4993,4]]},"65":{"position":[[61,3]]},"71":{"position":[[415,3],[743,3]]},"83":{"position":[[461,3]]},"124":{"position":[[501,3],[566,3],[615,3],[678,3]]},"126":{"position":[[300,3]]},"147":{"position":[[120,3]]},"196":{"position":[[106,3]]},"202":{"position":[[1018,3]]},"206":{"position":[[284,3]]},"210":{"position":[[34,3]]},"212":{"position":[[116,3],[834,3],[2065,3],[2707,5],[2725,3],[2805,3],[2890,4]]},"224":{"position":[[174,3]]},"228":{"position":[[2091,3]]},"230":{"position":[[82,3],[289,3]]},"238":{"position":[[2923,3]]},"258":{"position":[[994,3]]},"264":{"position":[[74,3],[127,3],[401,3]]},"268":{"position":[[48,3]]}}}],["onboard",{"_index":1494,"t":{"200":{"position":[[231,9]]}}}],["onc",{"_index":183,"t":{"53":{"position":[[1253,4]]},"79":{"position":[[573,4]]},"113":{"position":[[3536,4]]},"268":{"position":[[742,4]]}}}],["one:1.54",{"_index":549,"t":{"69":{"position":[[553,8]]}}}],["one:latest",{"_index":1759,"t":{"268":{"position":[[105,11],[290,10],[607,10],[728,10],[996,10],[1304,10]]},"270":{"position":[[503,10]]},"272":{"position":[[485,10]]}}}],["onlin",{"_index":1143,"t":{"137":{"position":[[356,6],[1496,6]]},"139":{"position":[[725,6]]}}}],["open",{"_index":97,"t":{"49":{"position":[[739,7]]},"65":{"position":[[85,4]]},"69":{"position":[[39,4]]},"75":{"position":[[106,4]]},"77":{"position":[[711,4]]},"81":{"position":[[422,4]]},"115":{"position":[[1509,7]]},"196":{"position":[[729,4]]},"200":{"position":[[1412,4]]},"202":{"position":[[358,4]]},"268":{"position":[[478,4]]},"274":{"position":[[172,4],[889,4],[947,4]]}}}],["open(\"abc.pi",{"_index":53,"t":{"47":{"position":[[159,14]]}}}],["open(file_path",{"_index":1105,"t":{"128":{"position":[[788,15]]}}}],["openai",{"_index":488,"t":{"67":{"position":[[486,6]]},"109":{"position":[[188,6],[399,6]]},"111":{"position":[[50,6],[203,6]]},"115":{"position":[[579,6],[648,6],[694,6],[715,6],[732,6],[774,6],[852,6],[3137,6],[3205,6]]},"157":{"position":[[16,6]]},"178":{"position":[[27,6],[436,6]]},"180":{"position":[[27,6],[482,6]]},"188":{"position":[[502,7]]},"194":{"position":[[2931,10],[3252,10]]},"196":{"position":[[87,6],[1117,7]]},"200":{"position":[[106,7],[272,6]]},"204":{"position":[[21,6]]},"206":{"position":[[109,6],[851,9],[1448,6]]},"245":{"position":[[53,6],[131,6]]},"252":{"position":[[52,6],[183,7]]},"254":{"position":[[199,7]]},"256":{"position":[[96,6],[186,6]]}}}],["openai/aoai",{"_index":1309,"t":{"159":{"position":[[16,11]]}}}],["opentelemetri",{"_index":425,"t":{"65":{"position":[[37,14]]},"67":{"position":[[92,14],[124,13],[215,13],[234,13],[253,13],[282,13],[1398,13],[1426,13],[2261,13]]},"69":{"position":[[927,13],[1563,13],[1974,13]]},"71":{"position":[[262,13]]},"73":{"position":[[49,13],[209,13],[276,13],[492,13]]},"228":{"position":[[1609,14]]}}}],["oper",{"_index":22,"t":{"41":{"position":[[253,7]]},"81":{"position":[[985,9]]},"212":{"position":[[2513,10]]}}}],["opt",{"_index":644,"t":{"75":{"position":[[220,3]]},"85":{"position":[[1022,3]]},"133":{"position":[[232,3]]}}}],["option",{"_index":158,"t":{"53":{"position":[[579,6]]},"111":{"position":[[1339,8]]},"113":{"position":[[3064,8]]},"115":{"position":[[3081,7]]},"180":{"position":[[583,10]]},"194":{"position":[[2364,9]]},"206":{"position":[[1223,8]]},"224":{"position":[[2068,9]]},"238":{"position":[[612,9]]},"248":{"position":[[63,10]]},"256":{"position":[[300,7]]}}}],["optional[ani",{"_index":782,"t":{"87":{"position":[[479,13]]}}}],["optional[bool",{"_index":794,"t":{"89":{"position":[[320,14]]}}}],["optional[dict[str",{"_index":795,"t":{"89":{"position":[[351,18]]}}}],["optional[float",{"_index":1441,"t":{"194":{"position":[[1888,15],[1953,15]]}}}],["optional[int",{"_index":1443,"t":{"194":{"position":[[1924,13]]}}}],["optional[list[dict[literal[\"nam",{"_index":887,"t":{"101":{"position":[[1259,34]]}}}],["optional[list[str",{"_index":1445,"t":{"194":{"position":[[1983,19]]}}}],["optional[roleentri",{"_index":994,"t":{"113":{"position":[[327,19]]}}}],["optional[sessioneventhandl",{"_index":886,"t":{"101":{"position":[[1214,29]]}}}],["optional[str",{"_index":792,"t":{"89":{"position":[[283,13],[1271,13]]}}}],["optl",{"_index":535,"t":{"69":{"position":[[255,4],[814,4],[1852,4],[1914,6]]}}}],["opu",{"_index":1370,"t":{"188":{"position":[[277,5]]}}}],["orchestr",{"_index":1085,"t":{"124":{"position":[[283,11]]},"128":{"position":[[72,11]]},"210":{"position":[[116,11],[429,13],[796,11]]},"228":{"position":[[661,11],[1887,11]]},"230":{"position":[[36,12]]},"234":{"position":[[82,13]]}}}],["order",{"_index":161,"t":{"53":{"position":[[642,5],[2260,5]]},"184":{"position":[[499,5]]},"212":{"position":[[1137,5]]}}}],["os",{"_index":52,"t":{"47":{"position":[[149,2]]},"51":{"position":[[219,2],[311,2]]},"79":{"position":[[768,2]]},"270":{"position":[[288,2],[362,2]]},"272":{"position":[[280,2],[354,2]]}}}],["otel/opentelemetri",{"_index":537,"t":{"69":{"position":[[278,18]]}}}],["other",{"_index":852,"t":{"97":{"position":[[352,7]]}}}],["otherwis",{"_index":1002,"t":{"113":{"position":[[1039,9]]},"128":{"position":[[2555,10]]},"137":{"position":[[1247,10]]},"141":{"position":[[904,10]]},"154":{"position":[[4497,10]]},"212":{"position":[[1960,10]]},"224":{"position":[[2766,10]]},"234":{"position":[[768,10]]},"238":{"position":[[1567,10]]}}}],["otl/opentelemetri",{"_index":556,"t":{"69":{"position":[[879,17]]}}}],["otlp",{"_index":485,"t":{"67":{"position":[[276,5],[975,7]]},"69":{"position":[[1167,5],[1280,5],[1406,6],[1424,6],[1451,6],[1499,6],[1638,4]]}}}],["out",{"_index":305,"t":{"59":{"position":[[1289,3]]},"133":{"position":[[236,3]]},"210":{"position":[[366,3]]},"212":{"position":[[2397,3]]}}}],["outgo",{"_index":743,"t":{"85":{"position":[[1638,8],[2291,8]]}}}],["outlin",{"_index":989,"t":{"111":{"position":[[1371,9]]}}}],["output",{"_index":590,"t":{"71":{"position":[[804,7],[875,6]]},"85":{"position":[[1303,6]]},"113":{"position":[[4540,6]]},"126":{"position":[[489,6]]},"131":{"position":[[97,7],[551,7],[854,6]]},"135":{"position":[[64,6]]},"139":{"position":[[299,6]]},"141":{"position":[[213,6],[613,6]]},"143":{"position":[[806,7]]},"188":{"position":[[533,7]]},"218":{"position":[[945,6]]},"220":{"position":[[523,6]]},"241":{"position":[[836,6]]}}}],["output_s",{"_index":469,"t":{"65":{"position":[[1536,12]]}}}],["overrid",{"_index":804,"t":{"89":{"position":[[1106,8]]}}}],["overview",{"_index":265,"t":{"59":{"position":[[13,8]]},"115":{"position":[[3,8]]}}}],["overwrit",{"_index":1572,"t":{"212":{"position":[[2867,9]]}}}],["p",{"_index":1727,"t":{"258":{"position":[[91,1],[107,1]]},"260":{"position":[[315,1],[331,1]]},"268":{"position":[[1208,1]]}}}],["packag",{"_index":478,"t":{"67":{"position":[[71,8],[325,9],[435,8],[522,9]]},"81":{"position":[[84,8],[506,8],[619,7],[701,8]]},"83":{"position":[[774,8],[857,7],[934,7]]},"113":{"position":[[447,7]]},"141":{"position":[[799,9]]},"180":{"position":[[793,8]]},"192":{"position":[[280,8]]},"198":{"position":[[175,8]]},"200":{"position":[[468,7]]},"214":{"position":[[175,8]]},"218":{"position":[[1400,7]]},"236":{"position":[[71,9]]},"274":{"position":[[479,7]]}}}],["packages\\pandas\\core\\frame.py:11136",{"_index":1250,"t":{"154":{"position":[[2902,35],[4260,35]]}}}],["packages\\pandas\\core\\frame.py:11204",{"_index":1241,"t":{"154":{"position":[[2508,35],[3866,35]]}}}],["packages\\pandas\\core\\frame.py:11335",{"_index":1232,"t":{"154":{"position":[[2100,35],[3458,35]]}}}],["packages\\pandas\\core\\generic.py:11941",{"_index":1238,"t":{"154":{"position":[[2380,37],[3738,37]]}}}],["packages\\pandas\\core\\generic.py:11984",{"_index":1236,"t":{"154":{"position":[[2255,37],[3613,37]]}}}],["packages\\pandas\\core\\internals\\blocks.py:377",{"_index":1248,"t":{"154":{"position":[[2769,44],[4127,44]]}}}],["packages\\pandas\\core\\internals\\managers.py:1459",{"_index":1244,"t":{"154":{"position":[[2637,47],[3995,47]]}}}],["page",{"_index":1479,"t":{"196":{"position":[[378,5]]},"200":{"position":[[1006,5]]}}}],["pair",{"_index":903,"t":{"101":{"position":[[2746,4]]}}}],["panda",{"_index":81,"t":{"49":{"position":[[460,10]]},"115":{"position":[[1229,10]]},"154":{"position":[[1545,7],[1575,6],[3053,6],[4753,7],[4818,6],[5359,6],[8733,5],[8792,6],[8882,6],[9530,6]]},"228":{"position":[[449,6]]},"234":{"position":[[308,6]]}}}],["pandas.api.typ",{"_index":1656,"t":{"234":{"position":[[326,16]]}}}],["pandas.demo_data.csv",{"_index":1278,"t":{"154":{"position":[[8706,20]]}}}],["paper",{"_index":1749,"t":{"262":{"position":[[1462,7]]}}}],["paper_summari",{"_index":373,"t":{"63":{"position":[[2880,16],[2987,16]]}}}],["param",{"_index":797,"t":{"89":{"position":[[445,6],[484,6],[546,6],[580,6],[1384,6]]},"101":{"position":[[792,6],[827,6],[860,6],[899,6],[926,6],[955,6],[989,6],[1361,6],[1390,6],[1431,6],[2594,6]]},"196":{"position":[[1106,5]]},"200":{"position":[[811,6]]},"234":{"position":[[779,6],[826,6],[894,6]]}}}],["paramet",{"_index":75,"t":{"49":{"position":[[339,9]]},"53":{"position":[[1811,10]]},"55":{"position":[[34,10]]},"75":{"position":[[305,9]]},"79":{"position":[[88,9],[151,9],[507,9]]},"89":{"position":[[637,9],[703,9],[837,9],[984,9],[1091,9],[1512,9]]},"101":{"position":[[1548,9],[1628,9],[2290,9]]},"115":{"position":[[413,10],[451,9]]},"133":{"position":[[309,9]]},"137":{"position":[[958,10]]},"139":{"position":[[917,10]]},"143":{"position":[[925,9],[1083,10],[1204,9]]},"152":{"position":[[253,9],[1548,9]]},"188":{"position":[[487,9]]},"196":{"position":[[1032,10]]},"202":{"position":[[453,9]]},"220":{"position":[[208,10],[617,11]]},"224":{"position":[[995,11],[1399,11]]},"238":{"position":[[477,12],[523,9],[673,10],[916,10],[1578,11],[3059,9],[3153,10],[3204,10],[3324,10]]},"252":{"position":[[221,10]]}}}],["parameter'",{"_index":1692,"t":{"238":{"position":[[562,11]]}}}],["parent",{"_index":1021,"t":{"113":{"position":[[2273,6]]},"234":{"position":[[2235,6]]}}}],["pars",{"_index":119,"t":{"51":{"position":[[436,6]]},"91":{"position":[[1112,6]]},"135":{"position":[[269,7]]}}}],["part",{"_index":107,"t":{"51":{"position":[[44,6]]},"53":{"position":[[466,4],[540,4],[875,6],[907,4],[1131,4]]},"65":{"position":[[662,6]]},"97":{"position":[[1764,4]]},"206":{"position":[[197,5]]},"212":{"position":[[2358,4]]},"234":{"position":[[148,6]]},"238":{"position":[[41,6]]}}}],["pass",{"_index":66,"t":{"47":{"position":[[431,4]]},"143":{"position":[[1263,4]]},"194":{"position":[[1789,4],[2071,4],[2143,4]]},"262":{"position":[[2147,4]]}}}],["password",{"_index":612,"t":{"71":{"position":[[1644,8]]}}}],["past",{"_index":858,"t":{"97":{"position":[[1380,4]]},"224":{"position":[[383,5]]}}}],["path",{"_index":456,"t":{"65":{"position":[[977,4],[1026,4]]},"89":{"position":[[654,4]]},"97":{"position":[[1196,5]]},"101":{"position":[[1294,7]]},"113":{"position":[[1559,4]]},"180":{"position":[[1254,5]]},"258":{"position":[[116,4]]},"260":{"position":[[340,4],[1760,5],[2264,5],[2330,5]]}}}],["path/to/project",{"_index":821,"t":{"89":{"position":[[2251,19]]}}}],["path/to/sqlite_a.db",{"_index":1611,"t":{"224":{"position":[[1060,20]]}}}],["path/to/sqlite_b.db",{"_index":1614,"t":{"224":{"position":[[1464,20]]}}}],["pd",{"_index":1221,"t":{"154":{"position":[[1585,2],[3063,2],[4828,2],[5369,2],[8802,2],[8892,2],[9540,2]]},"234":{"position":[[318,2]]}}}],["pd.datafram",{"_index":1659,"t":{"234":{"position":[[499,13]]}}}],["pd.read_csv(data_fil",{"_index":1280,"t":{"154":{"position":[[8846,20]]}}}],["pd.read_csv(data_file_path",{"_index":1224,"t":{"154":{"position":[[1640,27],[3118,27],[4883,27],[5424,27],[8942,27],[9590,27]]}}}],["pd.to_datetime(df[time_col_nam",{"_index":1661,"t":{"234":{"position":[[1161,33]]}}}],["peac",{"_index":1364,"t":{"184":{"position":[[722,7]]}}}],["perform",{"_index":1086,"t":{"124":{"position":[[306,7]]},"128":{"position":[[95,7]]},"154":{"position":[[1776,10],[5044,10],[9040,10],[12213,10]]},"202":{"position":[[496,11]]},"236":{"position":[[397,9]]}}}],["peripher",{"_index":1541,"t":{"210":{"position":[[588,10]]},"212":{"position":[[173,10]]}}}],["peripheri",{"_index":1536,"t":{"210":{"position":[[218,10]]}}}],["persist",{"_index":503,"t":{"67":{"position":[[1237,10]]},"236":{"position":[[165,7]]}}}],["phase",{"_index":308,"t":{"59":{"position":[[1359,6]]},"65":{"position":[[682,6],[779,6],[873,6]]}}}],["ping",{"_index":1088,"t":{"124":{"position":[[743,4],[785,4]]}}}],["pip",{"_index":690,"t":{"81":{"position":[[726,3]]},"180":{"position":[[556,3]]},"192":{"position":[[295,3]]},"198":{"position":[[195,3]]},"200":{"position":[[476,3]]},"214":{"position":[[195,3]]},"218":{"position":[[1448,3]]},"248":{"position":[[316,3]]},"274":{"position":[[490,3]]}}}],["pipelin",{"_index":569,"t":{"69":{"position":[[1376,10]]}}}],["placehold",{"_index":1506,"t":{"200":{"position":[[1224,11]]}}}],["placeholderembeddingservic",{"_index":1467,"t":{"194":{"position":[[3411,28],[3616,29]]}}}],["plan",{"_index":274,"t":{"59":{"position":[[214,8]]},"63":{"position":[[2160,6],[5535,6]]},"65":{"position":[[673,8]]},"124":{"position":[[98,8],[163,4]]},"126":{"position":[[2,8],[37,4],[423,5],[1031,4],[1778,4],[2046,5],[2539,5],[2580,5],[2622,4]]},"131":{"position":[[168,4],[206,4],[268,4],[1025,8],[1093,8]]},"135":{"position":[[197,5]]},"150":{"position":[[51,8],[911,8]]},"152":{"position":[[375,8]]},"154":{"position":[[974,6],[5918,6],[8160,6],[10291,6],[11329,6],[13084,6]]},"210":{"position":[[320,8]]},"212":{"position":[[3081,4]]},"222":{"position":[[651,6],[2202,6]]},"228":{"position":[[58,8],[867,8]]},"234":{"position":[[2942,4]]},"262":{"position":[[1844,7]]}}}],["planer",{"_index":1120,"t":{"131":{"position":[[471,6]]}}}],["planner",{"_index":228,"t":{"53":{"position":[[3166,7],[3581,7]]},"59":{"position":[[238,8],[624,7]]},"63":{"position":[[1562,7],[1865,7],[2395,8],[2709,7],[4274,9],[5361,7],[6067,8]]},"65":{"position":[[201,8],[699,7],[890,7]]},"91":{"position":[[1194,7]]},"95":{"position":[[523,7]]},"97":{"position":[[340,8]]},"105":{"position":[[47,7],[149,7],[321,7],[683,8],[772,8],[819,8]]},"107":{"position":[[88,7],[311,11],[769,7],[814,8],[1086,8],[2080,9]]},"113":{"position":[[105,7],[3885,7],[4036,11]]},"115":{"position":[[1779,7],[1896,8],[2005,8],[2634,7],[2722,11]]},"124":{"position":[[47,7],[148,7],[437,8],[815,7],[870,7]]},"126":{"position":[[266,8],[352,7],[461,7],[668,7],[794,7],[1426,7],[1552,7],[2193,8],[2330,7],[2688,8],[2835,7]]},"128":{"position":[[148,8],[379,7],[569,7],[1268,7],[1404,8]]},"131":{"position":[[135,8],[148,7],[316,8],[329,7],[443,8],[923,7]]},"137":{"position":[[737,8]]},"152":{"position":[[311,7],[1289,7]]},"154":{"position":[[779,7],[5709,7],[5723,7],[7852,7],[9965,7],[9979,7],[11021,7],[12758,7],[12772,7]]},"206":{"position":[[130,7],[1469,7],[1753,7]]},"210":{"position":[[168,7],[262,8],[279,7],[609,7]]},"212":{"position":[[208,7],[334,7],[429,7],[536,7],[3042,7]]},"222":{"position":[[910,8],[1580,9],[2686,8]]},"224":{"position":[[2593,7],[2781,7]]},"226":{"position":[[337,7]]},"228":{"position":[[1875,7]]},"241":{"position":[[1048,11]]},"250":{"position":[[466,7]]},"262":{"position":[[1211,10],[1634,10]]},"268":{"position":[[143,7]]}}}],["planner'",{"_index":466,"t":{"65":{"position":[[1398,9]]},"113":{"position":[[1709,9]]},"126":{"position":[[2095,9]]},"135":{"position":[[93,9]]},"210":{"position":[[722,9]]}}}],["planner.example_base_path",{"_index":910,"t":{"105":{"position":[[0,26]]},"115":{"position":[[1733,25]]}}}],["planner.llm_alia",{"_index":918,"t":{"105":{"position":[[720,18]]},"206":{"position":[[1528,20]]}}}],["planner.prompt_compress",{"_index":245,"t":{"55":{"position":[[249,26]]},"105":{"position":[[252,27]]},"115":{"position":[[1828,26],[3307,26]]}}}],["planner.use_experi",{"_index":916,"t":{"105":{"position":[[588,23]]},"115":{"position":[[1911,22]]},"152":{"position":[[196,22]]},"186":{"position":[[96,22]]}}}],["planner][plan",{"_index":1274,"t":{"154":{"position":[[8169,15],[10300,15]]}}}],["planner_exampl",{"_index":844,"t":{"95":{"position":[[482,18]]},"250":{"position":[[425,18]]}}}],["platform",{"_index":1474,"t":{"196":{"position":[[40,8]]}}}],["platform:xbox",{"_index":406,"t":{"63":{"position":[[3883,14],[4978,14]]}}}],["play",{"_index":1644,"t":{"228":{"position":[[2128,4]]}}}],["playground",{"_index":1783,"t":{"274":{"position":[[42,10]]}}}],["playground/ui",{"_index":1790,"t":{"274":{"position":[[809,14],[847,14]]}}}],["pleas",{"_index":35,"t":{"44":{"position":[[146,6]]},"59":{"position":[[559,6]]},"63":{"position":[[1309,6],[1998,6],[2366,6],[2422,6],[2742,6],[5993,6],[6335,6],[6669,6]]},"67":{"position":[[107,6]]},"77":{"position":[[623,6]]},"107":{"position":[[526,6],[699,6],[1592,6]]},"126":{"position":[[704,6],[2075,6],[2377,7]]},"128":{"position":[[1315,7]]},"137":{"position":[[435,6]]},"139":{"position":[[838,6]]},"141":{"position":[[188,6]]},"154":{"position":[[693,6],[1243,6],[4456,6],[4508,6],[7762,6],[8476,6],[10711,6],[10924,6],[11685,6]]},"194":{"position":[[2430,6],[3483,6],[3605,6]]},"196":{"position":[[633,6]]},"200":{"position":[[1320,6]]},"220":{"position":[[232,6]]},"222":{"position":[[533,6],[862,6],[937,6]]},"258":{"position":[[720,6]]},"260":{"position":[[939,6],[1281,6]]},"262":{"position":[[1508,6]]},"264":{"position":[[99,6],[358,6]]},"266":{"position":[[254,6]]},"272":{"position":[[867,6]]},"274":{"position":[[8,6],[655,6]]}}}],["plot",{"_index":209,"t":{"53":{"position":[[2376,4]]}}}],["plu",{"_index":187,"t":{"53":{"position":[[1325,4],[1650,4]]}}}],["plugin",{"_index":248,"t":{"57":{"position":[[34,6],[92,6],[193,7],[304,7]]},"59":{"position":[[43,6],[86,6],[304,6],[371,8],[682,6],[935,8],[969,7],[1141,7],[1200,6],[1225,7],[1342,6],[1379,7]]},"61":{"position":[[68,6],[185,7]]},"63":{"position":[[22,6],[103,6],[245,7],[319,6],[398,6],[433,8],[488,6],[534,6],[558,6],[698,6],[725,6],[767,6],[861,6],[1425,6],[1481,6],[1628,6],[2486,6],[2591,6],[2626,7],[2787,6],[2836,8],[2939,6],[3072,8],[3134,6],[5462,6],[5611,6]]},"81":{"position":[[137,8],[714,7]]},"85":{"position":[[241,7]]},"91":{"position":[[408,8],[427,7],[606,8],[880,7],[896,7]]},"93":{"position":[[0,7],[113,7],[141,6],[205,7]]},"95":{"position":[[69,8],[440,9],[472,7]]},"101":{"position":[[2834,7],[3005,7],[3184,6]]},"109":{"position":[[83,6]]},"113":{"position":[[4149,6],[4602,6]]},"115":{"position":[[1702,8],[2305,6],[2522,7]]},"124":{"position":[[295,7]]},"128":{"position":[[84,7]]},"137":{"position":[[52,6],[153,7],[506,6],[559,7],[634,6],[922,6],[1354,6],[1541,6],[1747,6],[1784,6],[1850,7]]},"139":{"position":[[35,6],[117,7],[213,7],[830,7]]},"141":{"position":[[63,6],[141,6],[362,6],[392,6],[441,6],[516,6],[699,6],[887,6],[970,6],[1017,6]]},"143":{"position":[[61,7],[105,6],[558,6],[615,6],[942,6],[1286,6]]},"216":{"position":[[62,6],[89,6]]},"218":{"position":[[50,7],[106,6],[123,6],[153,6],[189,6],[260,6],[313,7],[771,6],[1155,7]]},"220":{"position":[[89,7],[245,6],[435,6]]},"222":{"position":[[10,6],[64,6],[1005,6],[1646,6],[3403,6]]},"224":{"position":[[43,7],[125,7],[265,6],[313,6],[504,6],[588,6],[621,7],[706,6],[1107,6],[2006,7],[2111,6],[2305,7],[2407,6],[2757,8]]},"226":{"position":[[60,6],[282,8]]},"228":{"position":[[218,7],[614,7],[1804,8],[2018,7]]},"230":{"position":[[0,7],[101,7],[192,6],[647,8],[711,6],[772,6]]},"232":{"position":[[2,6],[29,6],[83,6],[90,6],[151,6]]},"234":{"position":[[4,6],[113,6],[155,6],[202,6],[271,6],[397,7],[2087,7],[2117,6],[2164,7],[2200,6],[2228,6],[2342,6],[2384,6],[2448,6],[2498,6]]},"236":{"position":[[29,6],[238,6]]},"238":{"position":[[4,6],[129,6],[241,6],[269,6],[347,7],[392,6],[460,6],[935,7],[1121,6],[1140,6],[1208,6],[1261,7],[2273,6],[2300,6],[2352,6],[2452,6],[2552,6],[2615,6],[2744,6],[3097,8],[3171,6],[3236,6],[3358,6],[3455,6],[3481,6],[3576,7],[3610,6],[3665,6],[3692,7]]},"241":{"position":[[4,6],[84,8],[124,6],[223,8],[292,6],[390,7],[481,6],[510,6],[633,7],[648,6],[803,7],[900,6],[983,6],[1168,6],[1326,7],[1376,6]]},"243":{"position":[[4,6],[375,7],[478,7],[550,6]]},"245":{"position":[[15,6],[167,6]]},"250":{"position":[[78,7],[383,9],[415,7]]},"270":{"position":[[661,7]]}}}],["plugin.base_path",{"_index":1070,"t":{"115":{"position":[[1665,16]]}}}],["plugin_mgt",{"_index":322,"t":{"63":{"position":[[159,10]]}}}],["plugin_onli",{"_index":1691,"t":{"238":{"position":[[210,12],[1307,12],[3507,11],[3705,12]]},"241":{"position":[[403,12],[547,12]]}}}],["plugin_only_mod",{"_index":928,"t":{"107":{"position":[[542,16]]}}}],["pluginclass(plugin",{"_index":905,"t":{"101":{"position":[[3096,20]]}}}],["pluginorchestr",{"_index":1714,"t":{"241":{"position":[[949,19]]}}}],["plugintemplate(plugin",{"_index":1578,"t":{"218":{"position":[[360,23]]}}}],["point",{"_index":581,"t":{"71":{"position":[[223,7]]},"89":{"position":[[79,5]]},"210":{"position":[[629,5]]}}}],["pong",{"_index":1089,"t":{"124":{"position":[[854,4]]}}}],["pool",{"_index":302,"t":{"59":{"position":[[1207,4]]},"63":{"position":[[2946,5]]},"150":{"position":[[799,5]]},"152":{"position":[[136,5]]}}}],["popular",{"_index":426,"t":{"65":{"position":[[77,7]]},"69":{"position":[[31,7]]}}}],["port",{"_index":543,"t":{"69":{"position":[[425,6],[473,4],[562,6],[639,6],[985,4]]},"71":{"position":[[1527,6]]},"85":{"position":[[443,6]]},"274":{"position":[[164,4]]}}}],["post",{"_index":471,"t":{"65":{"position":[[1602,5]]},"87":{"position":[[112,5]]},"97":{"position":[[4,4],[111,5],[123,4],[391,5],[431,5],[472,5],[511,5],[563,5],[668,4],[809,4],[892,5],[1071,5],[1259,5],[1312,5]]},"99":{"position":[[229,6],[295,5],[513,5]]},"113":{"position":[[2418,5],[3120,4],[3415,4],[3471,4]]},"124":{"position":[[578,6],[587,4]]},"126":{"position":[[2142,6],[2159,4],[2308,4],[2643,4],[2813,4],[3030,5]]},"128":{"position":[[1229,6],[1246,4],[1359,4]]},"208":{"position":[[254,4]]},"210":{"position":[[1198,5]]},"212":{"position":[[1310,4],[2187,6],[2370,5]]},"262":{"position":[[852,6],[1108,5],[1255,5]]}}}],["post_list",{"_index":864,"t":{"99":{"position":[[274,10],[427,10],[490,9]]},"124":{"position":[[763,10]]},"126":{"position":[[588,10]]},"128":{"position":[[323,10]]},"262":{"position":[[1085,12]]}}}],["post_proxi",{"_index":1030,"t":{"113":{"position":[[2582,10]]}}}],["post_proxy.end",{"_index":1036,"t":{"113":{"position":[[2793,16]]}}}],["post_proxy.update_messag",{"_index":1033,"t":{"113":{"position":[[2691,26]]}}}],["post_proxy.update_send_to(last_post.send_from",{"_index":1032,"t":{"113":{"position":[[2644,46]]}}}],["postproxi",{"_index":1041,"t":{"113":{"position":[[3361,9],[3432,9],[3545,9]]}}}],["potenti",{"_index":61,"t":{"47":{"position":[[294,11]]},"57":{"position":[[348,12]]},"77":{"position":[[447,11],[590,9]]},"228":{"position":[[1210,9]]}}}],["power",{"_index":594,"t":{"71":{"position":[[1007,9]]},"135":{"position":[[355,8]]}}}],["powershel",{"_index":17,"t":{"41":{"position":[[187,10]]}}}],["practic",{"_index":759,"t":{"85":{"position":[[2397,8]]},"150":{"position":[[175,9]]},"224":{"position":[[3,9]]},"234":{"position":[[2484,8]]}}}],["prefer",{"_index":1268,"t":{"154":{"position":[[6863,12],[6878,10],[6901,7]]}}}],["prefix",{"_index":1356,"t":{"184":{"position":[[328,8]]}}}],["prepar",{"_index":530,"t":{"69":{"position":[[79,8]]},"154":{"position":[[7873,9],[11042,9]]},"210":{"position":[[918,7],[1073,9]]},"212":{"position":[[919,7]]}}}],["prerequisit",{"_index":666,"t":{"79":{"position":[[339,14],[1001,12]]}}}],["present",{"_index":837,"t":{"91":{"position":[[1286,9]]},"97":{"position":[[1351,7],[2000,9]]},"128":{"position":[[695,7]]}}}],["prevent",{"_index":63,"t":{"47":{"position":[[320,7]]},"85":{"position":[[791,7]]},"228":{"position":[[1367,7]]}}}],["preview",{"_index":1062,"t":{"115":{"position":[[797,7]]},"178":{"position":[[381,9]]},"180":{"position":[[427,9]]},"206":{"position":[[962,9]]}}}],["previou",{"_index":176,"t":{"53":{"position":[[1055,8],[1764,8]]},"85":{"position":[[2099,8]]},"105":{"position":[[658,8]]},"115":{"position":[[1980,8],[2405,8]]},"154":{"position":[[4360,8]]},"210":{"position":[[1124,8]]},"212":{"position":[[2881,8]]}}}],["price",{"_index":359,"t":{"63":{"position":[[1846,5],[1919,6],[2044,5],[2088,5],[2210,5],[2316,5],[2385,5],[2441,5],[2761,5],[3169,7],[3456,5],[4148,6],[4217,5],[4551,5],[5243,6],[5312,5],[5436,5],[5585,5],[5760,6],[6016,6],[6102,6],[6358,6],[6436,6],[6692,6]]},"137":{"position":[[331,6],[1471,6]]}}}],["primari",{"_index":920,"t":{"105":{"position":[[832,7]]},"196":{"position":[[947,7]]},"206":{"position":[[315,7],[1124,7],[1321,7],[1649,7]]},"208":{"position":[[4,7]]}}}],["princip",{"_index":1338,"t":{"180":{"position":[[100,11],[1771,10],[1885,9]]}}}],["print",{"_index":347,"t":{"63":{"position":[[1520,8]]},"101":{"position":[[2230,6]]},"260":{"position":[[1403,5],[1536,5],[1812,5],[2001,5]]}}}],["print(\"tim",{"_index":1662,"t":{"234":{"position":[[1213,11]]}}}],["print(\"valu",{"_index":1666,"t":{"234":{"position":[[1380,12]]}}}],["print(event.t",{"_index":897,"t":{"101":{"position":[[2069,14]]}}}],["print(file_cont",{"_index":1107,"t":{"128":{"position":[[846,20]]}}}],["print(render(text=\"hello",{"_index":1185,"t":{"143":{"position":[[457,24]]}}}],["print(response_round.to_dict",{"_index":1740,"t":{"262":{"position":[[426,31]]}}}],["print(round",{"_index":819,"t":{"89":{"position":[[2140,12]]}}}],["pro",{"_index":1383,"t":{"190":{"position":[[228,4]]},"206":{"position":[[160,3],[1108,5],[1499,3]]}}}],["problem",{"_index":135,"t":{"53":{"position":[[150,7],[216,8],[757,8]]},"57":{"position":[[160,9]]},"150":{"position":[[229,8],[365,8],[421,7],[454,8]]},"154":{"position":[[4425,7],[4527,7]]},"224":{"position":[[456,8]]}}}],["proceed",{"_index":1687,"t":{"236":{"position":[[138,11]]}}}],["process",{"_index":271,"t":{"59":{"position":[[158,7],[223,7],[1265,7]]},"67":{"position":[[1534,11]]},"77":{"position":[[357,8]]},"101":{"position":[[2339,11]]},"113":{"position":[[4348,7],[4450,7]]},"131":{"position":[[564,7],[657,8]]},"152":{"position":[[1025,7]]},"210":{"position":[[1062,7]]},"218":{"position":[[975,10]]},"234":{"position":[[2420,7]]},"250":{"position":[[21,8]]},"258":{"position":[[177,7]]},"260":{"position":[[401,8]]},"262":{"position":[[1610,10]]}}}],["processor",{"_index":1397,"t":{"192":{"position":[[149,11]]}}}],["produc",{"_index":299,"t":{"59":{"position":[[1152,7]]},"241":{"position":[[816,7]]}}}],["product",{"_index":767,"t":{"85":{"position":[[2719,10]]},"196":{"position":[[148,9],[204,8],[853,8]]},"262":{"position":[[1421,8]]},"274":{"position":[[227,11]]}}}],["program",{"_index":656,"t":{"75":{"position":[[702,11]]},"95":{"position":[[678,7],[768,7]]},"250":{"position":[[621,7],[711,7]]}}}],["programap",{"_index":375,"t":{"63":{"position":[[3095,10]]},"154":{"position":[[1412,10],[4620,10],[8621,10],[11863,10]]}}}],["project",{"_index":29,"t":{"44":{"position":[[44,7]]},"49":{"position":[[109,7],[311,7]]},"67":{"position":[[598,7],[759,7],[886,7],[2410,7]]},"89":{"position":[[465,7],[666,7],[2226,7]]},"91":{"position":[[1093,7]]},"95":{"position":[[2,7],[160,7],[180,7],[324,7],[353,9],[396,7]]},"99":{"position":[[195,8]]},"113":{"position":[[1981,7]]},"115":{"position":[[3015,7]]},"152":{"position":[[501,7],[1438,7]]},"184":{"position":[[285,7]]},"186":{"position":[[174,7]]},"194":{"position":[[3920,7],[4160,7],[4266,7]]},"236":{"position":[[623,7]]},"241":{"position":[[1099,7]]},"250":{"position":[[51,7],[132,7],[157,7],[190,7],[226,7],[296,9],[339,7]]},"258":{"position":[[93,10],[128,7]]},"260":{"position":[[317,10],[352,7]]},"262":{"position":[[236,12],[259,12]]},"270":{"position":[[25,7],[578,7],[696,7],[736,7]]}}}],["project/sample_data/data_demo.csv",{"_index":1216,"t":{"154":{"position":[[86,36],[7165,36]]}}}],["project/taskweaver_config.json",{"_index":1048,"t":{"115":{"position":[[84,31]]}}}],["project/workspace/session_id/cwd",{"_index":1690,"t":{"236":{"position":[[576,32]]},"260":{"position":[[2192,32]]}}}],["project/workspace/sessions//planner_prompt_log_xxxx.yaml",{"_index":1149,"t":{"137":{"position":[[776,69]]}}}],["prom/prometheus:latest",{"_index":552,"t":{"69":{"position":[[616,22]]}}}],["prometheu",{"_index":512,"t":{"67":{"position":[[1700,10],[1975,10]]},"69":{"position":[[16,10],[597,11],[662,10],[687,12],[1330,11],[1469,12],[1683,10],[1709,10],[1734,10],[1791,11]]},"71":{"position":[[114,10],[502,11],[935,10],[1038,10],[1361,10],[1756,10]]}}}],["prompt",{"_index":111,"t":{"51":{"position":[[97,7],[264,6]]},"53":{"position":[[3523,7]]},"59":{"position":[[1057,7]]},"65":{"position":[[320,7],[1471,6]]},"71":{"position":[[475,6],[645,6],[842,6]]},"73":{"position":[[733,6]]},"91":{"position":[[1180,6],[1303,7]]},"97":{"position":[[1366,6],[1547,6],[1566,6],[2017,6]]},"113":{"position":[[1511,6],[1719,6]]},"126":{"position":[[2105,7]]},"128":{"position":[[1098,6],[1195,7]]},"135":{"position":[[103,7]]},"137":{"position":[[723,6],[763,7]]},"150":{"position":[[1078,6]]},"152":{"position":[[1277,6]]},"188":{"position":[[625,8]]},"210":{"position":[[1085,6]]},"236":{"position":[[221,8]]},"258":{"position":[[308,7]]},"260":{"position":[[527,7]]}}}],["prompt_compress",{"_index":915,"t":{"105":{"position":[[530,18],[568,19]]}}}],["prompt_siz",{"_index":468,"t":{"65":{"position":[[1519,12]]},"71":{"position":[[433,11],[562,11]]}}}],["prompt_size_tot",{"_index":585,"t":{"71":{"position":[[589,18],[608,17]]}}}],["promptutil.wrap_text_with_delimiter(messag",{"_index":862,"t":{"97":{"position":[[1833,44]]}}}],["promql",{"_index":593,"t":{"71":{"position":[[985,6]]}}}],["proper",{"_index":1336,"t":{"180":{"position":[[49,6]]}}}],["properli",{"_index":763,"t":{"85":{"position":[[2612,9]]}}}],["propos",{"_index":1206,"t":{"150":{"position":[[591,8]]}}}],["protocol",{"_index":559,"t":{"69":{"position":[[1173,10]]}}}],["provid",{"_index":204,"t":{"53":{"position":[[2185,8]]},"57":{"position":[[18,7]]},"73":{"position":[[529,8]]},"77":{"position":[[229,8]]},"89":{"position":[[1374,9],[1529,9]]},"97":{"position":[[1720,7]]},"113":{"position":[[645,8],[3183,7]]},"133":{"position":[[175,7]]},"137":{"position":[[980,8]]},"150":{"position":[[104,7]]},"188":{"position":[[660,7]]},"200":{"position":[[13,8],[292,8]]},"202":{"position":[[92,7]]},"212":{"position":[[281,8],[2985,8]]},"228":{"position":[[1409,8],[1994,7],[2074,7]]},"234":{"position":[[2401,7]]},"236":{"position":[[272,8],[376,8]]},"238":{"position":[[640,9],[811,8]]},"250":{"position":[[114,8]]},"252":{"position":[[39,7]]},"258":{"position":[[836,8],[1015,7]]},"260":{"position":[[985,8]]},"262":{"position":[[1515,7]]}}}],["proxi",{"_index":1495,"t":{"200":{"position":[[279,5],[351,5],[681,5]]}}}],["ps",{"_index":678,"t":{"79":{"position":[[1180,3]]}}}],["public",{"_index":1785,"t":{"274":{"position":[[184,7]]}}}],["pull",{"_index":1602,"t":{"224":{"position":[[143,4],[178,5],[219,5],[634,4],[718,5],[813,4],[1119,5],[1214,4]]},"230":{"position":[[319,7],[718,5]]},"262":{"position":[[1474,7]]},"268":{"position":[[563,4],[684,4],[760,7]]}}}],["purpos",{"_index":1092,"t":{"126":{"position":[[311,8],[437,7]]},"128":{"position":[[161,7]]},"208":{"position":[[12,7]]},"264":{"position":[[175,8]]},"274":{"position":[[81,8]]}}}],["purposefulli",{"_index":1530,"t":{"208":{"position":[[583,12]]}}}],["put",{"_index":851,"t":{"97":{"position":[[284,3]]},"113":{"position":[[893,3]]}}}],["py",{"_index":1701,"t":{"238":{"position":[[2876,3]]}}}],["pyfiglet",{"_index":1589,"t":{"218":{"position":[[1267,8],[1408,9],[1460,9]]}}}],["pyfiglet.figlet_format(text",{"_index":1591,"t":{"218":{"position":[[1292,28]]}}}],["python",{"_index":320,"t":{"63":{"position":[[149,6],[3181,8],[3365,6],[3417,6],[4298,6],[4329,9],[4460,6],[4512,6]]},"73":{"position":[[63,6]]},"107":{"position":[[415,6],[1847,6],[1899,6],[2104,6],[2135,9],[2250,6],[2302,6],[2488,6],[2519,9],[2634,6],[2686,6]]},"128":{"position":[[737,6],[1615,7]]},"141":{"position":[[671,6]]},"143":{"position":[[148,6],[683,6],[710,6]]},"154":{"position":[[1557,8],[1874,6],[3001,6],[3034,9],[3232,6],[4800,8],[5142,6],[5198,6],[5307,6],[5340,9],[5563,6],[5619,6],[8749,9],[9160,6],[9216,6],[9478,6],[9511,9],[9666,6],[9722,6],[12011,9],[12333,6],[12389,6],[12485,6],[12518,9],[12625,6],[12681,6]]},"194":{"position":[[162,6],[4112,6],[4241,6]]},"218":{"position":[[9,6]]},"222":{"position":[[985,8],[1206,6],[1258,6],[1604,6],[1789,6],[1841,6]]},"224":{"position":[[1637,6]]},"228":{"position":[[409,7],[638,6]]},"230":{"position":[[219,6]]},"232":{"position":[[54,6]]},"234":{"position":[[47,7],[120,6]]},"238":{"position":[[85,6],[2927,6]]},"258":{"position":[[69,6],[970,6]]},"260":{"position":[[293,6]]}}}],["python:3.10",{"_index":687,"t":{"81":{"position":[[653,11]]}}}],["python=3.10",{"_index":1721,"t":{"248":{"position":[[158,11]]}}}],["python]start",{"_index":932,"t":{"107":{"position":[[1657,19]]}}}],["qa",{"_index":961,"t":{"109":{"position":[[512,2],[578,2]]}}}],["qianwen",{"_index":1315,"t":{"167":{"position":[[16,8]]},"214":{"position":[[13,8]]}}}],["queri",{"_index":467,"t":{"65":{"position":[[1460,6]]},"71":{"position":[[910,5],[960,5],[1086,5],[1106,5]]},"99":{"position":[[331,5],[467,5]]},"113":{"position":[[2519,5],[2942,5],[4306,6],[4467,5]]},"124":{"position":[[183,5],[547,5]]},"126":{"position":[[57,5],[2290,6]]},"131":{"position":[[122,5],[186,5],[977,6]]},"137":{"position":[[1713,6]]},"152":{"position":[[1187,5]]},"154":{"position":[[6536,6]]},"194":{"position":[[4176,5],[4296,5]]}}}],["question",{"_index":1566,"t":{"212":{"position":[[2069,8]]}}}],["quick",{"_index":1209,"t":{"152":{"position":[[8,5]]},"178":{"position":[[755,5]]},"182":{"position":[[81,5]]},"188":{"position":[[866,5]]},"190":{"position":[[299,5]]},"192":{"position":[[684,5]]},"196":{"position":[[798,5]]},"198":{"position":[[597,5]]},"200":{"position":[[1481,5]]},"202":{"position":[[1105,5]]},"204":{"position":[[634,5]]},"214":{"position":[[530,5]]},"260":{"position":[[134,5]]},"274":{"position":[[380,5]]}}}],["quickli",{"_index":1643,"t":{"228":{"position":[[2120,7]]}}}],["quit",{"_index":130,"t":{"53":{"position":[[61,5]]},"71":{"position":[[1001,5]]}}}],["quot",{"_index":1051,"t":{"115":{"position":[[375,7]]}}}],["qwen",{"_index":948,"t":{"109":{"position":[[195,4],[429,4]]},"167":{"position":[[3,4],[62,4]]},"194":{"position":[[2512,4]]},"214":{"position":[[0,4],[59,4],[294,7],[315,5],[396,4],[445,4]]}}}],["r",{"_index":54,"t":{"47":{"position":[[174,4]]},"128":{"position":[[804,4]]},"248":{"position":[[329,1]]}}}],["r1",{"_index":1711,"t":{"241":{"position":[[378,2]]},"243":{"position":[[419,2]]}}}],["r1=ascii_render(**{\"text\":\"hello",{"_index":1710,"t":{"241":{"position":[[342,35]]},"243":{"position":[[383,35]]}}}],["rais",{"_index":1003,"t":{"113":{"position":[[1070,7]]},"128":{"position":[[525,7]]},"194":{"position":[[3145,5],[3780,5]]}}}],["random",{"_index":196,"t":{"53":{"position":[[2032,6],[2155,6],[2231,6],[2750,6],[2933,6]]},"107":{"position":[[1638,6]]}}}],["random_numb",{"_index":934,"t":{"107":{"position":[[1696,14],[1732,14],[2164,14],[2200,14],[2548,14],[2584,14]]}}}],["random_numbers_100",{"_index":220,"t":{"53":{"position":[[2665,21]]}}}],["raw_exp_{session_id}.yaml",{"_index":1212,"t":{"152":{"position":[[755,25],[921,25]]}}}],["raw_experience_path",{"_index":1269,"t":{"154":{"position":[[6973,20]]}}}],["raw_input",{"_index":99,"t":{"49":{"position":[[756,12]]},"115":{"position":[[1526,12]]}}}],["rbac",{"_index":1337,"t":{"180":{"position":[[62,4]]}}}],["re",{"_index":70,"t":{"47":{"position":[[506,2]]},"154":{"position":[[2557,3],[3915,3]]}}}],["reach",{"_index":184,"t":{"53":{"position":[[1275,7],[1612,7]]}}}],["read",{"_index":58,"t":{"47":{"position":[[242,4]]},"69":{"position":[[836,4]]},"115":{"position":[[3272,4]]},"124":{"position":[[1067,4]]},"128":{"position":[[284,4],[345,4],[664,4],[1089,4],[1323,4],[1428,5]]},"139":{"position":[[26,4]]},"143":{"position":[[982,4]]},"152":{"position":[[912,4]]}}}],["real",{"_index":504,"t":{"67":{"position":[[1253,4]]},"210":{"position":[[657,4]]}}}],["reason",{"_index":1169,"t":{"139":{"position":[[532,8],[577,6]]},"141":{"position":[[455,8],[501,6]]},"212":{"position":[[1191,8],[2198,6]]},"224":{"position":[[2370,6]]},"241":{"position":[[1438,8]]}}}],["rebuild",{"_index":683,"t":{"81":{"position":[[387,7],[830,7]]},"83":{"position":[[1005,7]]}}}],["rebuilt",{"_index":698,"t":{"81":{"position":[[1121,7]]}}}],["receiv",{"_index":437,"t":{"65":{"position":[[362,8]]},"67":{"position":[[1470,8]]},"69":{"position":[[464,8],[976,8],[1156,10],[1395,10],[1440,10],[1488,10]]},"97":{"position":[[459,8],[880,7],[1299,8]]},"107":{"position":[[987,7]]},"126":{"position":[[107,7]]},"131":{"position":[[413,8]]},"150":{"position":[[1090,8]]},"210":{"position":[[1212,8]]}}}],["recent",{"_index":1228,"t":{"154":{"position":[[1979,6],[3337,6]]}}}],["recommend",{"_index":1346,"t":{"180":{"position":[[1165,12],[1347,12]]},"202":{"position":[[418,9]]}}}],["record",{"_index":470,"t":{"65":{"position":[[1569,8]]},"71":{"position":[[451,7]]}}}],["reduc",{"_index":1245,"t":{"154":{"position":[[2688,6],[2817,6],[4046,6],[4175,6]]}}}],["refer",{"_index":36,"t":{"44":{"position":[[153,5]]},"53":{"position":[[3349,5]]},"59":{"position":[[566,5]]},"71":{"position":[[1025,5]]},"75":{"position":[[131,5]]},"105":{"position":[[231,8],[556,8]]},"107":{"position":[[533,5],[706,5]]},"126":{"position":[[2082,5]]},"147":{"position":[[128,5]]},"178":{"position":[[742,5]]},"180":{"position":[[983,5]]},"188":{"position":[[853,5]]},"190":{"position":[[286,5]]},"192":{"position":[[671,5]]},"194":{"position":[[2503,5],[3646,9]]},"196":{"position":[[640,5],[785,5]]},"198":{"position":[[584,5]]},"200":{"position":[[1327,5],[1468,5]]},"202":{"position":[[1092,5]]},"204":{"position":[[621,5]]},"210":{"position":[[945,5]]},"212":{"position":[[1050,5],[2936,9]]},"214":{"position":[[517,5]]},"238":{"position":[[2891,5]]},"262":{"position":[[52,5],[950,5]]},"270":{"position":[[761,8]]}}}],["refresh",{"_index":323,"t":{"63":{"position":[[172,7],[686,7]]}}}],["regist",{"_index":1176,"t":{"141":{"position":[[416,9]]},"167":{"position":[[71,8]]},"169":{"position":[[84,8]]},"192":{"position":[[176,8]]},"194":{"position":[[2558,8],[3108,8],[3533,8]]},"198":{"position":[[81,8]]},"214":{"position":[[68,8]]},"234":{"position":[[2076,8]]}}}],["register_plugin",{"_index":904,"t":{"101":{"position":[[3073,16]]},"218":{"position":[[321,15],[337,16],[1163,15],[1179,16]]},"234":{"position":[[405,15],[421,16],[2172,15],[2310,16]]}}}],["registri",{"_index":882,"t":{"101":{"position":[[1020,9]]}}}],["rel",{"_index":1735,"t":{"260":{"position":[[2255,8]]}}}],["releas",{"_index":392,"t":{"63":{"position":[[3577,8],[4013,8],[4672,8],[5108,8]]}}}],["relev",{"_index":154,"t":{"53":{"position":[[457,8]]},"152":{"position":[[1229,8]]}}}],["reliabl",{"_index":1148,"t":{"137":{"position":[[585,8],[694,8]]},"228":{"position":[[912,11]]}}}],["reload",{"_index":100,"t":{"49":{"position":[[769,9]]},"115":{"position":[[1539,9]]}}}],["rememb",{"_index":1378,"t":{"188":{"position":[[896,8]]}}}],["remot",{"_index":802,"t":{"89":{"position":[[918,6],[960,6]]}}}],["remov",{"_index":1568,"t":{"212":{"position":[[2243,6]]}}}],["render",{"_index":1138,"t":{"137":{"position":[[274,9],[1361,7]]},"143":{"position":[[384,6]]},"216":{"position":[[100,6]]},"220":{"position":[[442,7],[712,8],[796,8]]},"222":{"position":[[567,6],[610,6],[689,6],[781,6],[869,6],[944,6],[1024,6],[1665,6],[2161,6],[2240,6],[2390,8],[2725,8],[3052,8]]}}}],["repeat",{"_index":1552,"t":{"212":{"position":[[437,9],[556,6]]}}}],["replac",{"_index":754,"t":{"85":{"position":[[2008,7]]},"111":{"position":[[435,8]]},"115":{"position":[[3498,7]]},"188":{"position":[[908,7]]}}}],["repli",{"_index":452,"t":{"65":{"position":[[867,5],[908,5],[1408,5]]},"113":{"position":[[2882,5],[2973,5],[3089,5],[4271,5],[4360,5]]}}}],["reply(self",{"_index":1023,"t":{"113":{"position":[[2377,11]]}}}],["repo",{"_index":1736,"t":{"262":{"position":[[213,4]]}}}],["report",{"_index":68,"t":{"47":{"position":[[473,8]]},"63":{"position":[[2097,6],[2219,6],[5374,6],[5472,6],[5621,6],[5678,6]]},"126":{"position":[[964,6],[1139,6],[1711,6],[1886,6],[1954,6]]},"154":{"position":[[911,6],[1086,6],[5855,6],[6030,6],[6087,6],[8097,6],[10228,6],[11266,6],[11523,6],[13021,6],[13278,6],[13335,6]]},"222":{"position":[[2301,6]]}}}],["repositori",{"_index":668,"t":{"79":{"position":[[587,10],[729,11]]},"248":{"position":[[210,10]]},"258":{"position":[[58,10]]},"260":{"position":[[159,10]]},"274":{"position":[[405,10]]}}}],["repres",{"_index":454,"t":{"65":{"position":[[954,9]]},"113":{"position":[[42,10]]},"230":{"position":[[202,11]]}}}],["request",{"_index":156,"t":{"53":{"position":[[494,8],[700,8],[2000,9],[2363,9],[3125,8]]},"57":{"position":[[113,8]]},"59":{"position":[[640,7],[779,7],[877,7]]},"63":{"position":[[1327,8],[2016,8]]},"75":{"position":[[449,7]]},"107":{"position":[[449,8],[1117,8],[1610,8]]},"137":{"position":[[1564,8]]},"150":{"position":[[840,9],[1014,7],[1109,7]]},"154":{"position":[[49,7],[711,8],[7124,7],[7780,8]]},"196":{"position":[[708,8]]},"200":{"position":[[1391,8]]},"210":{"position":[[1161,8]]},"212":{"position":[[804,7]]},"222":{"position":[[551,8]]},"228":{"position":[[145,8]]},"258":{"position":[[738,8]]},"260":{"position":[[957,8],[1299,8]]},"272":{"position":[[885,8]]}}}],["requir",{"_index":112,"t":{"51":{"position":[[140,8],[408,8]]},"53":{"position":[[3455,8]]},"67":{"position":[[80,8],[187,8]]},"83":{"position":[[765,8]]},"111":{"position":[[511,7],[617,7]]},"113":{"position":[[2295,8]]},"137":{"position":[[949,8],[1268,9],[1415,9],[1703,9]]},"139":{"position":[[889,8]]},"192":{"position":[[271,8]]},"198":{"position":[[166,8]]},"200":{"position":[[617,8]]},"208":{"position":[[77,8]]},"214":{"position":[[166,8]]},"218":{"position":[[952,8]]},"220":{"position":[[185,9],[399,9],[652,9]]},"238":{"position":[[600,8],[1157,8],[1326,9],[1617,9],[1764,9],[1871,9],[3031,8]]},"248":{"position":[[303,12]]},"268":{"position":[[404,8]]}}}],["requirements.txt",{"_index":1724,"t":{"248":{"position":[[331,16]]}}}],["research",{"_index":1748,"t":{"262":{"position":[[1453,8]]}}}],["reserv",{"_index":1539,"t":{"210":{"position":[[463,8]]}}}],["reset",{"_index":1732,"t":{"260":{"position":[[1448,7],[1456,5],[1877,6],[1884,5]]}}}],["resolut",{"_index":1266,"t":{"154":{"position":[[6588,11],[6740,10]]}}}],["resource>.openai.azure.com",{"_index":1327,"t":{"178":{"position":[[248,27]]},"180":{"position":[[304,27]]}}}],["respect",{"_index":592,"t":{"71":{"position":[[888,13]]},"97":{"position":[[898,13]]},"224":{"position":[[666,13],[1871,13]]}}}],["respond",{"_index":1374,"t":{"188":{"position":[[571,7]]}}}],["respons",{"_index":264,"t":{"57":{"position":[[408,8]]},"63":{"position":[[4090,8],[5185,8]]},"65":{"position":[[352,9]]},"71":{"position":[[866,8]]},"75":{"position":[[505,9]]},"87":{"position":[[190,9],[365,8],[408,8],[672,8]]},"89":{"position":[[2369,8]]},"91":{"position":[[854,8]]},"113":{"position":[[1348,11],[3146,8]]},"115":{"position":[[829,8]]},"137":{"position":[[115,8],[653,8]]},"178":{"position":[[627,8]]},"194":{"position":[[4071,8]]},"204":{"position":[[506,8]]},"210":{"position":[[732,14],[928,9]]},"212":{"position":[[931,9]]},"241":{"position":[[1358,8]]},"243":{"position":[[460,8]]},"256":{"position":[[132,8]]},"262":{"position":[[736,8]]}}}],["response_format",{"_index":1373,"t":{"188":{"position":[[471,15]]}}}],["response_round",{"_index":1738,"t":{"262":{"position":[[376,14]]}}}],["restart",{"_index":699,"t":{"81":{"position":[[1246,7]]},"152":{"position":[[818,7]]},"154":{"position":[[6386,7]]},"186":{"position":[[340,7]]}}}],["restrict",{"_index":709,"t":{"85":{"position":[[47,8],[337,8]]},"228":{"position":[[489,8]]},"241":{"position":[[26,10],[159,13],[1188,11]]}}}],["result",{"_index":133,"t":{"53":{"position":[[116,7],[631,7]]},"63":{"position":[[2108,6],[2230,6],[3325,8],[3401,6],[4496,6],[5385,6],[5483,6],[5632,6],[5689,6]]},"77":{"position":[[371,7]]},"87":{"position":[[757,7]]},"95":{"position":[[1124,7]]},"97":{"position":[[1645,7]]},"107":{"position":[[1807,8],[1883,6],[2286,6],[2670,6]]},"113":{"position":[[4488,6]]},"126":{"position":[[129,6],[190,7],[975,6],[1150,6],[1722,6],[1897,6],[1965,6]]},"128":{"position":[[1887,7],[2530,6]]},"131":{"position":[[297,6],[362,6]]},"141":{"position":[[98,6]]},"154":{"position":[[922,6],[1097,6],[2146,6],[2826,6],[3504,6],[4184,6],[5182,6],[5603,6],[5866,6],[6041,6],[6098,6],[8108,6],[9200,6],[9706,6],[10239,6],[11277,6],[11534,6],[12373,6],[12665,6],[13032,6],[13289,6],[13346,6],[13365,6]]},"218":{"position":[[449,7],[568,7],[715,7],[894,6],[922,6],[1051,7],[1103,6]]},"220":{"position":[[574,6],[759,6]]},"222":{"position":[[1166,8],[1242,6],[1825,6]]},"234":{"position":[[1123,8],[2554,6],[2687,6]]},"236":{"position":[[186,8],[332,7],[438,7]]},"238":{"position":[[1079,6],[2119,7],[2220,8]]}}}],["ret",{"_index":1252,"t":{"154":{"position":[[2952,3],[4310,3]]}}}],["retain",{"_index":178,"t":{"53":{"position":[[1118,7]]},"115":{"position":[[2884,7]]}}}],["retriev",{"_index":152,"t":{"53":{"position":[[421,8]]},"150":{"position":[[858,8],[1049,9]]},"152":{"position":[[1216,8]]},"212":{"position":[[2597,8]]}}}],["return",{"_index":807,"t":{"89":{"position":[[1328,6],[1419,8]]},"101":{"position":[[1456,8]]},"113":{"position":[[2786,6],[3111,6],[4477,6]]},"128":{"position":[[2214,9],[2545,9],[2635,9]]},"139":{"position":[[932,7]]},"154":{"position":[[2303,6],[2438,6],[3661,6],[3796,6]]},"218":{"position":[[708,6],[869,6],[1340,6]]},"220":{"position":[[223,8],[742,8]]},"224":{"position":[[1011,8],[1415,8]]},"234":{"position":[[970,7],[1058,7],[1250,6],[1417,6],[2007,6],[2526,6]]},"238":{"position":[[684,9],[721,6],[763,6],[856,8],[1952,8]]},"262":{"position":[[649,6]]}}}],["revis",{"_index":1267,"t":{"154":{"position":[[6767,7]]}}}],["revise_messag",{"_index":1254,"t":{"154":{"position":[[4320,16]]}}}],["rewrit",{"_index":1255,"t":{"154":{"position":[[4436,9]]}}}],["rich",{"_index":1630,"t":{"228":{"position":[[328,4],[385,4]]}}}],["right",{"_index":1094,"t":{"126":{"position":[[483,5]]},"150":{"position":[[507,5]]},"224":{"position":[[2841,5]]},"226":{"position":[[374,5]]}}}],["risk",{"_index":664,"t":{"77":{"position":[[609,6]]},"133":{"position":[[496,6]]}}}],["robust",{"_index":507,"t":{"67":{"position":[[1300,6]]},"196":{"position":[[873,6]]}}}],["role",{"_index":430,"t":{"65":{"position":[[184,6],[275,4],[475,5],[1626,6]]},"91":{"position":[[663,6],[943,5],[957,5]]},"97":{"position":[[175,6],[311,4],[412,4],[450,4],[720,6],[840,6],[861,5],[953,5],[1013,5],[1240,4],[1290,4]]},"101":{"position":[[1015,4]]},"107":{"position":[[253,5],[784,6],[885,5],[1059,4],[1153,4]]},"111":{"position":[[273,4],[368,5],[422,4],[456,5],[531,5],[645,5]]},"113":{"position":[[4,4],[67,5],[153,5],[180,5],[385,6],[491,4],[525,5],[565,4],[597,4],[689,5],[729,4],[786,4],[878,4],[982,4],[1127,4],[1252,4],[1466,5],[1493,4],[1571,4],[1637,4],[1680,5],[1743,4],[1807,4],[1856,4],[1949,4],[2814,4],[2853,4],[3000,4],[3162,4],[3214,4],[3676,4],[3715,4],[3847,4],[3913,6],[3946,4],[3996,5],[4124,5],[4404,5]]},"115":{"position":[[2685,5]]},"124":{"position":[[408,6],[619,4],[635,5],[1024,5],[1052,4]]},"180":{"position":[[67,4]]},"208":{"position":[[509,5],[615,5]]},"210":{"position":[[46,6],[58,4],[132,5],[201,5],[306,6],[351,5],[496,6],[508,4],[551,6],[599,5],[768,5],[867,4],[904,4],[1172,4]]},"212":{"position":[[50,6],[83,5],[184,6],[310,5],[636,4],[702,6],[838,4],[888,5],[959,4],[1040,5],[1322,4],[2729,4],[2928,5],[3050,4],[3097,6]]},"228":{"position":[[1834,6]]},"241":{"position":[[937,4]]},"260":{"position":[[1848,5]]},"268":{"position":[[171,5],[351,4],[670,4]]}}}],["role'",{"_index":1006,"t":{"113":{"position":[[1185,6]]}}}],["role=self.alia",{"_index":1025,"t":{"113":{"position":[[2457,16]]}}}],["role_entri",{"_index":993,"t":{"113":{"position":[[315,11],[2223,11],[2361,11]]}}}],["role_nam",{"_index":1103,"t":{"128":{"position":[[619,12]]}}}],["role_name.pi",{"_index":998,"t":{"113":{"position":[[823,12],[1774,12]]}}}],["role_name.role.yaml",{"_index":999,"t":{"113":{"position":[[840,20],[1145,19]]}}}],["role_registri",{"_index":880,"t":{"101":{"position":[[724,14],[996,14]]}}}],["roleentri",{"_index":1020,"t":{"113":{"position":[[2235,10]]}}}],["rolenam",{"_index":855,"t":{"97":{"position":[[592,8],[610,8]]}}}],["roleregistri",{"_index":881,"t":{"101":{"position":[[739,13]]}}}],["root",{"_index":671,"t":{"79":{"position":[[702,4]]},"139":{"position":[[225,4]]},"141":{"position":[[633,4]]},"262":{"position":[[218,5]]}}}],["ross",{"_index":1389,"t":{"192":{"position":[[61,5]]}}}],["round",{"_index":127,"t":{"53":{"position":[[25,7],[272,6],[309,6],[443,6],[882,6],[1083,6],[1108,6],[1318,6],[1359,7],[1436,6],[1468,6],[1553,6],[1643,6],[1672,7],[1749,6],[3258,6]]},"61":{"position":[[201,6]]},"89":{"position":[[2081,5],[2410,5]]},"91":{"position":[[272,7],[382,7],[400,7],[556,7],[765,7],[784,5]]},"97":{"position":[[1390,7],[1484,6],[1503,6],[1696,6],[1811,5],[1972,5],[2039,6]]},"99":{"position":[[2,5],[64,5],[136,6],[148,5],[267,6],[308,6],[374,6],[526,6],[594,5],[645,5],[711,5]]},"101":{"position":[[1334,6],[1474,6]]},"107":{"position":[[73,6],[149,6]]},"113":{"position":[[2424,6],[2539,5],[2557,7],[2962,6]]},"115":{"position":[[2538,6],[2619,6],[2804,6],[2874,6]]},"124":{"position":[[513,7],[530,5],[721,7]]},"126":{"position":[[518,7]]},"128":{"position":[[262,7]]},"208":{"position":[[244,5]]},"210":{"position":[[1138,6]]},"212":{"position":[[1889,6],[1953,6],[2219,5],[2285,5],[2437,5],[2671,6]]},"228":{"position":[[1098,7]]},"262":{"position":[[703,5],[764,5],[788,5],[877,5],[989,6]]}}}],["round_compressor.rounds_to_compress",{"_index":242,"t":{"55":{"position":[[92,35]]},"115":{"position":[[2754,35]]}}}],["round_compressor.rounds_to_retain",{"_index":243,"t":{"55":{"position":[[144,33]]},"115":{"position":[[2826,33]]}}}],["rounds_to_compress",{"_index":185,"t":{"53":{"position":[[1287,18],[1417,18],[1624,18],[1730,18]]}}}],["rounds_to_retain",{"_index":188,"t":{"53":{"position":[[1330,16],[1451,16],[1536,16],[1655,16]]}}}],["roundstat",{"_index":867,"t":{"99":{"position":[[416,10]]}}}],["rout",{"_index":749,"t":{"85":{"position":[[1847,6]]}}}],["row",{"_index":412,"t":{"63":{"position":[[4066,4],[5161,4]]},"126":{"position":[[550,4],[620,4],[759,4],[909,4],[1112,4],[1268,4],[1368,4],[1519,4],[1656,4],[1859,4],[2228,4],[2433,4],[2778,4],[2929,4]]},"154":{"position":[[9417,4],[9923,4]]},"262":{"position":[[1352,4]]}}}],["rule",{"_index":74,"t":{"49":{"position":[[298,5]]},"51":{"position":[[149,6],[417,6]]},"85":{"position":[[1546,4],[1623,5],[1937,4],[2151,4],[2249,4]]}}}],["run",{"_index":47,"t":{"47":{"position":[[62,7],[398,7]]},"49":{"position":[[209,7]]},"63":{"position":[[61,3],[655,3]]},"67":{"position":[[1728,3],[2104,7],[2173,7]]},"79":{"position":[[665,7],[888,3],[1034,3],[1078,7],[1154,7],[1165,7],[1261,7]]},"81":{"position":[[556,3],[722,3],[858,7],[1178,7]]},"83":{"position":[[230,7],[806,3]]},"85":{"position":[[181,3],[1232,3]]},"89":{"position":[[127,3]]},"95":{"position":[[292,4],[898,3],[1196,7]]},"133":{"position":[[51,7]]},"143":{"position":[[164,3],[702,3]]},"145":{"position":[[208,10],[269,8],[342,8],[375,7]]},"147":{"position":[[59,7]]},"154":{"position":[[4481,3]]},"180":{"position":[[898,7],[1265,3],[1395,7]]},"186":{"position":[[319,8]]},"194":{"position":[[3967,3]]},"200":{"position":[[669,3]]},"202":{"position":[[329,3],[384,4],[396,3]]},"228":{"position":[[1322,7]]},"248":{"position":[[30,7]]},"250":{"position":[[11,4],[841,3]]},"252":{"position":[[7,7]]},"258":{"position":[[1076,3]]},"260":{"position":[[212,3],[2121,4]]},"264":{"position":[[42,3],[196,7],[382,7]]},"268":{"position":[[498,3],[776,3],[841,3],[1022,3],[1091,3]]},"270":{"position":[[116,3]]},"272":{"position":[[108,3],[763,7]]},"274":{"position":[[113,7],[733,7],[878,3]]}}}],["runtimeerror",{"_index":1192,"t":{"145":{"position":[[166,14]]}}}],["s",{"_index":396,"t":{"63":{"position":[[3651,1],[3806,1],[4746,1],[4901,1],[5853,1],[5891,1],[6195,1],[6233,1],[6529,1],[6567,1]]},"85":{"position":[[1974,1]]}}}],["safe",{"_index":765,"t":{"85":{"position":[[2678,4]]}}}],["safeti",{"_index":1716,"t":{"241":{"position":[[1431,6]]}}}],["sale",{"_index":1607,"t":{"224":{"position":[[900,6]]}}}],["same",{"_index":286,"t":{"59":{"position":[[797,4]]},"67":{"position":[[2134,4]]},"97":{"position":[[967,5]]},"101":{"position":[[355,4]]},"113":{"position":[[1014,4],[3965,4]]},"126":{"position":[[2271,4],[3011,4]]},"150":{"position":[[449,4]]},"154":{"position":[[7260,4]]},"186":{"position":[[42,4]]},"200":{"position":[[70,4]]},"202":{"position":[[1006,4]]},"212":{"position":[[2778,4],[2904,4],[2923,4]]},"218":{"position":[[94,4]]},"224":{"position":[[66,4],[299,5],[393,4],[541,4],[1932,5],[2024,4],[2444,4]]},"226":{"position":[[97,4]]},"238":{"position":[[380,4],[2475,4],[2842,4]]},"264":{"position":[[290,4]]}}}],["sampl",{"_index":1642,"t":{"228":{"position":[[2011,6]]},"250":{"position":[[125,6]]}}}],["sandbox",{"_index":1638,"t":{"228":{"position":[[1344,7]]}}}],["save",{"_index":1196,"t":{"150":{"position":[[127,6],[706,4],[769,4]]},"152":{"position":[[96,4],[566,5],[641,7],[657,4],[683,5]]},"154":{"position":[[6299,5],[6348,4]]},"184":{"position":[[247,5]]},"236":{"position":[[513,4]]},"260":{"position":[[1560,6],[1567,4],[2024,5],[2030,4]]}}}],["say",{"_index":1174,"t":{"141":{"position":[[125,6]]}}}],["scale",{"_index":1513,"t":{"202":{"position":[[463,5]]}}}],["scenario",{"_index":506,"t":{"67":{"position":[[1264,9]]},"182":{"position":[[207,8]]},"241":{"position":[[1227,10]]}}}],["schema",{"_index":1133,"t":{"135":{"position":[[82,7]]},"218":{"position":[[160,7]]},"220":{"position":[[31,6],[104,7]]},"232":{"position":[[97,7],[137,6]]},"234":{"position":[[2872,6]]},"238":{"position":[[11,6],[1128,7],[1147,6],[1215,6],[2280,6],[2559,6],[2751,6],[3178,7],[3243,6]]}}}],["scientist",{"_index":1550,"t":{"212":{"position":[[300,9]]}}}],["scipi",{"_index":85,"t":{"49":{"position":[[505,8]]},"115":{"position":[[1274,8]]}}}],["scope",{"_index":1562,"t":{"212":{"position":[[1613,6],[1659,5],[1753,5],[1813,5],[1840,5],[1880,5],[1978,5]]}}}],["score",{"_index":293,"t":{"59":{"position":[[1012,6]]},"63":{"position":[[2669,7]]}}}],["scrape",{"_index":578,"t":{"69":{"position":[[1946,6]]}}}],["scrape_config",{"_index":572,"t":{"69":{"position":[[1824,15]]}}}],["scrape_interv",{"_index":574,"t":{"69":{"position":[[1867,16]]}}}],["screenshot",{"_index":440,"t":{"65":{"position":[[495,10],[1348,10]]},"274":{"position":[[1036,11]]}}}],["script",{"_index":319,"t":{"63":{"position":[[141,7]]},"79":{"position":[[744,7]]},"81":{"position":[[763,6],[888,6]]},"194":{"position":[[169,6],[4102,9]]}}}],["sdk",{"_index":483,"t":{"67":{"position":[[248,4]]},"73":{"position":[[70,4],[223,4],[290,3],[506,4]]}}}],["seaborn",{"_index":86,"t":{"49":{"position":[[514,10]]},"115":{"position":[[1283,10]]}}}],["seamlessli",{"_index":1623,"t":{"228":{"position":[[47,10]]}}}],["search",{"_index":357,"t":{"63":{"position":[[1833,7],[1907,6],[2032,6],[2076,6],[2198,6],[2304,6],[2373,6],[2429,6],[2749,6],[3153,6],[5424,6],[5573,6]]},"137":{"position":[[307,9],[852,6],[1452,6],[1578,9],[1657,6]]},"192":{"position":[[113,6]]},"262":{"position":[[1407,9]]},"268":{"position":[[366,6]]}}}],["search_result",{"_index":376,"t":{"63":{"position":[[3190,15],[3248,15],[4339,15],[4397,15]]}}}],["second",{"_index":115,"t":{"51":{"position":[[322,7]]},"126":{"position":[[2301,6],[2549,6],[3023,6]]},"128":{"position":[[1352,6],[1562,6]]},"224":{"position":[[1885,7]]}}}],["secret",{"_index":611,"t":{"71":{"position":[[1630,8]]}}}],["section",{"_index":283,"t":{"59":{"position":[[589,7]]},"71":{"position":[[13,8]]},"137":{"position":[[868,7]]},"143":{"position":[[845,7]]},"208":{"position":[[275,8]]},"238":{"position":[[495,7],[699,7]]},"262":{"position":[[972,8],[2288,8]]}}}],["secur",{"_index":640,"t":{"75":{"position":[[147,8],[188,8]]},"77":{"position":[[245,6],[600,8]]},"83":{"position":[[27,6]]},"85":{"position":[[1748,8]]},"133":{"position":[[190,6],[487,8]]},"228":{"position":[[1277,8]]},"274":{"position":[[259,8],[346,7]]}}}],["see",{"_index":345,"t":{"63":{"position":[[1412,3],[2578,3]]},"65":{"position":[[590,3],[1143,3],[1276,3],[1447,3]]},"67":{"position":[[1835,3],[1903,3]]},"69":{"position":[[859,3]]},"71":{"position":[[536,3]]},"79":{"position":[[1195,3]]},"81":{"position":[[452,3]]},"85":{"position":[[1296,3]]},"131":{"position":[[806,3]]},"137":{"position":[[43,3],[497,3],[550,3],[625,3],[1841,3]]},"139":{"position":[[204,3],[415,3],[821,3]]},"141":{"position":[[25,3],[329,3]]},"143":{"position":[[782,3]]},"145":{"position":[[144,3]]},"150":{"position":[[827,4],[1005,6]]},"154":{"position":[[6413,3]]},"194":{"position":[[4063,3]]},"224":{"position":[[1562,3],[1771,3],[1901,3],[2196,3],[2482,3]]},"258":{"position":[[290,3]]},"260":{"position":[[509,3],[1062,3],[1172,3]]},"262":{"position":[[2044,3]]}}}],["select",{"_index":208,"t":{"53":{"position":[[2270,6]]},"57":{"position":[[41,9],[76,6]]},"59":{"position":[[50,9],[93,9],[689,9],[952,6],[1349,9]]},"61":{"position":[[75,10],[176,8]]},"63":{"position":[[29,9],[326,9],[732,9],[774,9],[868,9],[2493,9],[2607,8],[2827,8],[2930,8],[3063,8]]},"109":{"position":[[90,10]]},"115":{"position":[[2312,10],[2513,8]]},"154":{"position":[[8047,8],[10178,8],[11216,8],[12971,8]]},"238":{"position":[[151,9]]}}}],["selector",{"_index":277,"t":{"59":{"position":[[311,8]]},"63":{"position":[[1432,8],[2598,8]]}}}],["self",{"_index":790,"t":{"89":{"position":[[268,5],[1253,5]]},"97":{"position":[[987,4]]},"101":{"position":[[586,5],[1179,5],[2525,5]]},"113":{"position":[[208,5],[2118,5]]},"194":{"position":[[1815,5]]}}}],["self._get_str",{"_index":1419,"t":{"194":{"position":[[916,14],[1017,14],[1190,14],[1382,14]]}}}],["self._get_str(\"decor",{"_index":1017,"t":{"113":{"position":[[2047,26]]}}}],["self._reduc",{"_index":1240,"t":{"154":{"position":[[2445,13],[3803,13]]}}}],["self._set_completion_service(openaiservic",{"_index":1459,"t":{"194":{"position":[[2964,43]]}}}],["self._set_completion_service(yourllmservic",{"_index":1461,"t":{"194":{"position":[[3061,44]]}}}],["self._set_embedding_service(openaiservic",{"_index":1464,"t":{"194":{"position":[[3285,42]]}}}],["self._set_embedding_service(yourllmservic",{"_index":1469,"t":{"194":{"position":[[3730,43]]}}}],["self._set_name(\"your_llm_nam",{"_index":1415,"t":{"194":{"position":[[821,31]]}}}],["self._stat_funct",{"_index":1237,"t":{"154":{"position":[[2310,20],[3668,20]]}}}],["self.api_key",{"_index":1418,"t":{"194":{"position":[[901,12]]}}}],["self.backup_model",{"_index":1427,"t":{"194":{"position":[[1170,17]]}}}],["self.config",{"_index":1437,"t":{"194":{"position":[[1768,11],[2220,11],[2858,11]]}}}],["self.config.api_typ",{"_index":1457,"t":{"194":{"position":[[2907,20],[3020,20],[3173,22]]}}}],["self.config.decor",{"_index":1034,"t":{"113":{"position":[[2718,21],[2762,21]]}}}],["self.config.embedding_api_typ",{"_index":1463,"t":{"194":{"position":[[3218,30],[3340,30],[3679,30],[3819,32]]}}}],["self.config.get(\"key1",{"_index":1707,"t":{"238":{"position":[[3392,23]]}}}],["self.config.get(\"key2",{"_index":1708,"t":{"238":{"position":[[3416,23]]}}}],["self.ctx.add_artifact",{"_index":1581,"t":{"218":{"position":[[607,22]]},"234":{"position":[[1751,22]]},"236":{"position":[[642,22]]}}}],["self.ctx.get_session_var(\"user_nam",{"_index":908,"t":{"101":{"position":[[3206,37]]}}}],["self.decor",{"_index":1016,"t":{"113":{"position":[[2030,14]]}}}],["self.embedding_model",{"_index":1431,"t":{"194":{"position":[[1359,20]]}}}],["self.embedding_servic",{"_index":1466,"t":{"194":{"position":[[3386,22]]}}}],["self.event_emitter.create_post_proxy(self.alia",{"_index":1031,"t":{"113":{"position":[[2595,48]]}}}],["self.injector",{"_index":1456,"t":{"194":{"position":[[2879,13]]}}}],["self.llm_module_config.api_key",{"_index":1417,"t":{"194":{"position":[[870,30]]}}}],["self.llm_module_config.backup_model",{"_index":1426,"t":{"194":{"position":[[1134,35]]}}}],["self.llm_module_config.embedding_model",{"_index":1430,"t":{"194":{"position":[[1320,38]]}}}],["self.llm_module_config.model",{"_index":1422,"t":{"194":{"position":[[975,28]]}}}],["self.model",{"_index":1423,"t":{"194":{"position":[[1004,10],[1281,11],[1482,11]]}}}],["send",{"_index":284,"t":{"59":{"position":[[632,5]]},"65":{"position":[[898,5]]},"67":{"position":[[1363,4]]},"97":{"position":[[421,5],[871,4],[1249,5]]},"101":{"position":[[1345,4],[1509,4],[1592,5]]},"105":{"position":[[440,4]]},"107":{"position":[[946,4]]},"113":{"position":[[3597,4]]},"131":{"position":[[114,5],[196,5],[277,5],[373,5]]},"152":{"position":[[1172,4]]},"154":{"position":[[42,4],[1339,7],[4547,7],[5690,7],[6186,7],[7109,4],[8548,7],[9946,7],[10793,7],[11790,7],[12739,7],[13510,7]]},"196":{"position":[[703,4]]},"200":{"position":[[1386,4]]},"262":{"position":[[571,4]]}}}],["send_from",{"_index":853,"t":{"97":{"position":[[397,10],[581,10],[818,9],[931,9]]},"124":{"position":[[790,10],[859,10]]},"126":{"position":[[643,10],[783,10],[1390,10],[1541,10]]},"128":{"position":[[368,10],[533,10]]},"262":{"position":[[1179,12],[1621,12]]}}}],["send_messag",{"_index":884,"t":{"101":{"position":[[1165,13],[1485,12]]}}}],["send_to",{"_index":365,"t":{"63":{"position":[[2326,9],[5712,9]]},"97":{"position":[[437,8],[601,8],[832,7],[945,7]]},"113":{"position":[[3505,8]]},"124":{"position":[[806,8],[878,8]]},"126":{"position":[[659,8],[802,8],[1417,8],[1560,8]]},"128":{"position":[[387,8],[560,8]]},"135":{"position":[[168,8]]},"222":{"position":[[822,9],[2338,9]]},"262":{"position":[[1200,10],[1645,10]]}}}],["sensit",{"_index":1190,"t":{"143":{"position":[[1322,10]]}}}],["sent",{"_index":436,"t":{"65":{"position":[[328,4],[1478,4]]},"71":{"position":[[482,4]]},"89":{"position":[[2344,4]]},"107":{"position":[[1134,4]]},"124":{"position":[[605,4]]},"126":{"position":[[2167,4],[2316,4],[2651,4],[2821,4]]},"128":{"position":[[1254,4],[1367,4]]},"194":{"position":[[4188,4]]},"210":{"position":[[1204,4]]}}}],["sentenc",{"_index":685,"t":{"81":{"position":[[597,8],[786,8]]},"268":{"position":[[433,8]]}}}],["sentence_transform",{"_index":950,"t":{"109":{"position":[[207,21],[466,21]]},"115":{"position":[[965,21]]}}}],["separ",{"_index":1567,"t":{"212":{"position":[[2133,8]]},"228":{"position":[[1475,9]]}}}],["sequenc",{"_index":580,"t":{"71":{"position":[[206,8]]}}}],["sequenti",{"_index":1096,"t":{"126":{"position":[[933,13],[1680,13]]},"154":{"position":[[878,13],[5822,13],[8064,13],[10195,13],[11233,13],[12988,13]]}}}],["seri",{"_index":386,"t":{"63":{"position":[[3494,6],[3644,6],[3799,6],[3920,6],[4589,6],[4739,6],[4894,6],[5015,6],[5794,6],[5846,6],[5884,6],[5937,6],[6136,6],[6188,6],[6226,6],[6279,6],[6470,6],[6522,6],[6560,6],[6613,6]]},"71":{"position":[[179,7],[194,6],[547,6]]},"137":{"position":[[259,6],[1112,7]]},"180":{"position":[[839,6]]},"234":{"position":[[639,7],[1716,6]]},"238":{"position":[[1438,7]]}}}],["serv",{"_index":1311,"t":{"163":{"position":[[47,5]]},"202":{"position":[[44,5],[233,5],[337,7],[352,5],[541,7],[1026,6]]}}}],["server",{"_index":1492,"t":{"200":{"position":[[176,7],[285,6],[379,6],[687,6],[876,6]]},"202":{"position":[[593,6],[939,6]]},"274":{"position":[[336,6]]}}}],["servic",{"_index":534,"t":{"69":{"position":[[245,9],[1367,8]]},"89":{"position":[[925,7]]},"95":{"position":[[847,7],[1022,7]]},"180":{"position":[[92,7],[1519,8],[1763,7],[1877,7]]},"188":{"position":[[687,8],[757,7]]},"194":{"position":[[2576,7],[2633,7],[2742,7],[3126,7],[3557,7],[3596,8]]},"250":{"position":[[790,7]]},"274":{"position":[[722,7]]}}}],["session",{"_index":37,"t":{"44":{"position":[[166,7]]},"63":{"position":[[297,7],[1764,7]]},"89":{"position":[[1298,8],[1319,8],[1341,7],[1356,7],[1407,7],[1432,8],[1485,8],[1545,7],[1567,7],[1666,7],[2053,7],[2273,7],[2356,8]]},"91":{"position":[[117,7]]},"95":{"position":[[730,7],[929,7],[974,7]]},"101":{"position":[[2,7],[86,7],[196,7],[249,8],[378,9],[394,7],[531,7],[555,8],[783,8],[815,7],[1120,7],[2388,8],[2437,7],[2492,8],[2575,7],[2693,7],[2714,7],[2788,8],[2797,7],[2887,8],[2951,7],[2982,9],[3055,7],[3339,7]]},"107":{"position":[[181,7]]},"228":{"position":[[1426,7]]},"250":{"position":[[673,7],[872,7]]},"260":{"position":[[1440,7],[1466,7],[1604,7],[1822,7],[1869,7],[1902,7],[1926,7],[2067,7]]},"262":{"position":[[309,7],[528,7]]}}}],["session.experience_dir",{"_index":1215,"t":{"152":{"position":[[1525,22]]}}}],["session.max_internal_chat_round_num",{"_index":921,"t":{"107":{"position":[[0,36]]},"115":{"position":[[2547,35]]}}}],["session.rol",{"_index":33,"t":{"44":{"position":[[97,16]]},"107":{"position":[[234,14]]},"113":{"position":[[4019,16]]},"115":{"position":[[2667,13]]},"241":{"position":[[1031,16]]}}}],["session.send_message(\"hello",{"_index":817,"t":{"89":{"position":[[2089,28]]},"101":{"position":[[2095,28]]}}}],["session.send_message(user_queri",{"_index":1739,"t":{"262":{"position":[[393,32],[611,33],[665,32],[2166,32]]}}}],["session_id",{"_index":806,"t":{"89":{"position":[[1259,11],[1391,11],[1501,10]]},"95":{"position":[[788,10]]},"101":{"position":[[592,11],[799,11]]},"250":{"position":[[731,10]]}}}],["sessioneventemitt",{"_index":992,"t":{"113":{"position":[[294,20],[2202,20]]}}}],["sessioneventhandl",{"_index":1754,"t":{"262":{"position":[[2117,19]]}}}],["set",{"_index":244,"t":{"55":{"position":[[245,3]]},"67":{"position":[[558,7],[713,3],[1089,3],[1286,3],[1757,3],[2378,3]]},"69":{"position":[[113,3],[916,3],[1626,7],[1697,7]]},"71":{"position":[[1327,3]]},"73":{"position":[[578,3],[626,3],[677,3]]},"75":{"position":[[10,3],[267,3]]},"79":{"position":[[50,3],[520,3]]},"85":{"position":[[502,3],[724,3],[1612,7]]},"89":{"position":[[857,3],[1042,8],[1068,8],[1124,8],[2244,3]]},"105":{"position":[[493,7]]},"111":{"position":[[382,3],[679,3],[1143,3]]},"115":{"position":[[3231,3],[3391,3],[3564,3],[3605,3]]},"131":{"position":[[18,8]]},"133":{"position":[[271,3]]},"143":{"position":[[888,3],[1055,3],[1183,3]]},"147":{"position":[[180,3]]},"152":{"position":[[188,3],[1513,7]]},"178":{"position":[[548,3],[678,3]]},"180":{"position":[[1614,3]]},"186":{"position":[[155,3]]},"194":{"position":[[653,3],[2157,3],[4046,3]]},"204":{"position":[[428,3],[557,3]]},"206":{"position":[[327,8],[1136,8]]},"228":{"position":[[2004,3]]},"238":{"position":[[3499,3]]},"252":{"position":[[203,3]]},"256":{"position":[[210,3]]},"260":{"position":[[996,3],[2181,3]]}}}],["set_span_attribut",{"_index":626,"t":{"73":{"position":[[606,19]]}}}],["set_span_except",{"_index":627,"t":{"73":{"position":[[657,19]]}}}],["set_span_statu",{"_index":625,"t":{"73":{"position":[[561,16]]}}}],["setup",{"_index":524,"t":{"67":{"position":[[2079,6]]},"79":{"position":[[280,6]]},"200":{"position":[[503,5],[629,5]]}}}],["sever",{"_index":1200,"t":{"150":{"position":[[279,7]]},"154":{"position":[[241,7]]},"220":{"position":[[122,7]]},"238":{"position":[[33,7]]}}}],["sh",{"_index":1511,"t":{"202":{"position":[[323,2]]}}}],["shall",{"_index":516,"t":{"67":{"position":[[1829,5]]},"89":{"position":[[1648,5]]}}}],["share",{"_index":1529,"t":{"208":{"position":[[530,6],[596,6]]},"212":{"position":[[97,5],[153,7],[351,5],[685,6],[1015,6],[1063,6],[1229,6],[1248,6],[1340,5],[1540,6],[1594,6],[1672,6],[1715,6],[1794,6],[1853,6],[1900,6],[2005,6],[2109,6],[2254,6],[2315,6],[2405,6],[2562,6],[2610,6],[2747,6],[2845,6],[2968,6],[3055,6]]},"224":{"position":[[56,5],[531,5],[2014,5],[2434,5]]},"226":{"position":[[87,5]]}}}],["shared_api_key",{"_index":1416,"t":{"194":{"position":[[853,14],[942,15]]}}}],["shared_backup_model",{"_index":1425,"t":{"194":{"position":[[1112,19],[1221,19],[1244,19]]}}}],["shared_embedding_model",{"_index":1429,"t":{"194":{"position":[[1295,22],[1416,22],[1442,22]]}}}],["shared_model",{"_index":1421,"t":{"194":{"position":[[960,12],[1041,12],[1057,12]]}}}],["sharedmemoryentri",{"_index":1560,"t":{"212":{"position":[[1392,17],[1434,17],[1484,18]]}}}],["shop",{"_index":1144,"t":{"137":{"position":[[363,5],[1503,6]]}}}],["short",{"_index":861,"t":{"97":{"position":[[1573,6]]},"202":{"position":[[102,5]]}}}],["show",{"_index":165,"t":{"53":{"position":[[787,5],[2105,4]]},"63":{"position":[[753,4]]},"65":{"position":[[506,5],[1365,5],[1726,5]]},"67":{"position":[[1150,5]]},"71":{"position":[[1184,4]]},"85":{"position":[[1410,5]]},"152":{"position":[[46,4]]},"194":{"position":[[94,4]]},"202":{"position":[[119,4]]},"206":{"position":[[206,4],[545,4]]},"234":{"position":[[2860,7]]},"264":{"position":[[26,4]]}}}],["shown",{"_index":49,"t":{"47":{"position":[[99,5]]},"53":{"position":[[1952,5]]},"89":{"position":[[1947,5]]},"101":{"position":[[1966,5]]},"113":{"position":[[1498,5],[1700,5]]},"182":{"position":[[108,5]]},"210":{"position":[[384,5]]},"212":{"position":[[482,5]]},"262":{"position":[[893,5]]}}}],["sigma",{"_index":1695,"t":{"238":{"position":[[1715,5]]}}}],["sign",{"_index":1477,"t":{"196":{"position":[[242,4]]}}}],["similar",{"_index":289,"t":{"59":{"position":[[854,10],[1001,10]]},"63":{"position":[[2658,10]]},"85":{"position":[[1310,7],[2241,7]]},"150":{"position":[[413,7],[832,7],[1101,7]]},"152":{"position":[[1179,7]]},"154":{"position":[[7116,7]]},"212":{"position":[[2459,7]]}}}],["simpl",{"_index":441,"t":{"65":{"position":[[525,6]]},"101":{"position":[[1928,6],[2204,6]]},"113":{"position":[[702,6]]},"137":{"position":[[5,6]]},"143":{"position":[[80,6]]},"228":{"position":[[1674,6]]}}}],["simpli",{"_index":24,"t":{"41":{"position":[[276,6]]},"113":{"position":[[3008,6]]}}}],["simplifi",{"_index":1647,"t":{"230":{"position":[[394,12]]}}}],["singl",{"_index":848,"t":{"97":{"position":[[58,6]]},"99":{"position":[[57,6]]},"107":{"position":[[1045,6]]}}}],["situat",{"_index":1622,"t":{"226":{"position":[[18,9]]}}}],["sixth",{"_index":1114,"t":{"128":{"position":[[1853,5]]}}}],["size",{"_index":584,"t":{"71":{"position":[[463,4],[652,4],[849,4],[882,5]]},"73":{"position":[[740,4]]}}}],["skip",{"_index":159,"t":{"53":{"position":[[589,4]]},"131":{"position":[[913,5],[1015,5]]},"139":{"position":[[494,9]]}}}],["skipna",{"_index":1234,"t":{"154":{"position":[[2174,7],[3532,7]]}}}],["sklearn",{"_index":84,"t":{"49":{"position":[[494,10]]},"115":{"position":[[1263,10]]}}}],["slide",{"_index":601,"t":{"71":{"position":[[1250,7]]}}}],["slim",{"_index":688,"t":{"81":{"position":[[665,4]]}}}],["smaller",{"_index":1126,"t":{"131":{"position":[[699,7],[817,7]]}}}],["snake_cas",{"_index":1005,"t":{"113":{"position":[[1108,10]]}}}],["snippet",{"_index":205,"t":{"53":{"position":[[2201,7]]},"87":{"position":[[712,8]]},"97":{"position":[[1168,7]]},"128":{"position":[[653,7]]},"154":{"position":[[1444,7],[4652,7],[8653,7],[11895,7]]},"228":{"position":[[168,8]]},"230":{"position":[[280,8],[623,7]]},"264":{"position":[[266,8]]}}}],["solut",{"_index":1204,"t":{"150":{"position":[[513,8]]}}}],["solv",{"_index":140,"t":{"53":{"position":[[206,5],[747,5]]},"57":{"position":[[136,5]]},"150":{"position":[[216,5],[355,5]]},"224":{"position":[[445,5]]}}}],["somehow",{"_index":748,"t":{"85":{"position":[[1797,7]]}}}],["sometim",{"_index":859,"t":{"97":{"position":[[1423,9]]}}}],["sorri",{"_index":1101,"t":{"128":{"position":[[447,6]]}}}],["sort",{"_index":206,"t":{"53":{"position":[[2212,4]]},"141":{"position":[[824,4]]}}}],["sourc",{"_index":427,"t":{"65":{"position":[[90,6]]},"69":{"position":[[44,6]]},"71":{"position":[[1384,7]]},"85":{"position":[[670,6]]}}}],["span",{"_index":463,"t":{"65":{"position":[[1238,4],[1299,5],[1390,4],[1758,6]]},"73":{"position":[[600,5],[651,5],[702,5],[752,5],[1012,5]]}}}],["special",{"_index":1559,"t":{"212":{"position":[[1267,7]]}}}],["specif",{"_index":720,"t":{"85":{"position":[[434,8],[2452,8]]},"101":{"position":[[1792,8],[2779,8],[2871,8]]},"124":{"position":[[174,8],[316,8]]},"126":{"position":[[48,8]]},"128":{"position":[[105,8]]},"137":{"position":[[412,8]]},"180":{"position":[[1504,8]]},"188":{"position":[[462,8],[584,8]]},"210":{"position":[[1026,13]]},"228":{"position":[[725,8],[803,8]]},"266":{"position":[[298,8]]}}}],["specifi",{"_index":73,"t":{"49":{"position":[[268,7]]},"59":{"position":[[464,9]]},"81":{"position":[[221,9]]},"89":{"position":[[731,9]]},"105":{"position":[[795,7]]},"107":{"position":[[761,7]]},"154":{"position":[[10718,7],[10931,7]]},"180":{"position":[[661,10],[1058,7],[1656,7],[1839,7]]},"194":{"position":[[4148,7]]},"206":{"position":[[475,7],[1149,9],[1300,7],[1347,7],[1612,7]]},"224":{"position":[[2095,7]]},"226":{"position":[[148,7],[212,7]]},"238":{"position":[[2242,10],[2511,7],[2715,7],[3125,7],[3219,9]]},"241":{"position":[[590,10]]}}}],["speed",{"_index":1124,"t":{"131":{"position":[[644,5]]}}}],["sql",{"_index":1606,"t":{"224":{"position":[[830,3],[1231,3]]},"262":{"position":[[1494,3]]}}}],["sql_pull_data",{"_index":372,"t":{"63":{"position":[[2863,16],[2970,16]]},"224":{"position":[[779,13],[1180,13]]},"230":{"position":[[656,13],[697,13]]}}}],["sql_pull_data(query=\"pul",{"_index":1649,"t":{"230":{"position":[[450,25]]}}}],["sql_pull_data.pi",{"_index":1616,"t":{"224":{"position":[[1683,17],[1964,17]]}}}],["sql_pull_data_from_a",{"_index":1605,"t":{"224":{"position":[[752,20],[1824,20]]}}}],["sql_pull_data_from_a(\"pul",{"_index":1608,"t":{"224":{"position":[[938,26]]}}}],["sql_pull_data_from_b",{"_index":1612,"t":{"224":{"position":[[1153,20],[1849,21]]}}}],["sql_pull_data_from_b(\"pul",{"_index":1613,"t":{"224":{"position":[[1342,26]]}}}],["sqlite_db_path",{"_index":1610,"t":{"224":{"position":[[1044,15],[1448,15],[2252,14]]}}}],["stage",{"_index":1213,"t":{"152":{"position":[[889,6]]}}}],["star",{"_index":1533,"t":{"210":{"position":[[143,4]]}}}],["start",{"_index":275,"t":{"59":{"position":[[254,5]]},"63":{"position":[[274,5],[618,5],[830,5],[1290,8],[1979,8]]},"83":{"position":[[179,5]]},"91":{"position":[[790,6]]},"95":{"position":[[686,6],[776,6]]},"107":{"position":[[1573,8]]},"152":{"position":[[14,5],[405,5],[841,5]]},"154":{"position":[[0,5],[674,8],[7743,8]]},"178":{"position":[[691,5],[761,5]]},"180":{"position":[[1911,5]]},"182":{"position":[[87,5]]},"186":{"position":[[282,8]]},"188":{"position":[[789,5],[872,5]]},"190":{"position":[[235,5],[305,5]]},"192":{"position":[[620,5],[690,5]]},"196":{"position":[[750,5],[804,5]]},"198":{"position":[[533,5],[603,5]]},"200":{"position":[[905,7],[1433,5],[1487,5]]},"202":{"position":[[585,5],[913,7],[1041,5],[1111,5]]},"204":{"position":[[570,5],[640,5]]},"214":{"position":[[466,5],[536,5]]},"218":{"position":[[439,9],[823,6]]},"222":{"position":[[514,8]]},"228":{"position":[[2057,8]]},"250":{"position":[[629,6],[719,6]]},"258":{"position":[[156,5],[701,8],[782,5]]},"260":{"position":[[140,5],[380,5],[920,8],[1111,5],[1262,8],[1914,5]]},"272":{"position":[[848,8]]},"274":{"position":[[386,5],[712,5]]}}}],["starter",{"_index":403,"t":{"63":{"position":[[3810,7],[4905,7],[5895,7],[6237,7],[6571,7]]}}}],["startup",{"_index":700,"t":{"83":{"position":[[93,7]]}}}],["state",{"_index":866,"t":{"99":{"position":[[350,6],[361,5],[409,6],[537,5],[616,5],[681,5],[732,5]]},"124":{"position":[[748,6]]},"126":{"position":[[573,6]]},"128":{"position":[[307,6]]},"212":{"position":[[671,5]]},"228":{"position":[[943,8],[1001,8]]},"262":{"position":[[1064,8],[2065,6]]}}}],["static",{"_index":117,"t":{"51":{"position":[[343,6],[602,6]]}}}],["static_config",{"_index":576,"t":{"69":{"position":[[1887,15]]}}}],["statu",{"_index":379,"t":{"63":{"position":[[3304,8]]},"65":{"position":[[389,6]]},"73":{"position":[[586,6]]},"128":{"position":[[1664,7],[1805,7],[2157,6],[2489,6],[2580,6]]},"212":{"position":[[2443,7]]},"222":{"position":[[1145,8]]}}}],["status]start",{"_index":936,"t":{"107":{"position":[[1775,19]]}}}],["std",{"_index":1667,"t":{"234":{"position":[[1430,3],[1497,3]]}}}],["step",{"_index":742,"t":{"85":{"position":[[1598,4]]},"126":{"position":[[410,5],[2627,5]]},"131":{"position":[[75,5],[1034,5],[1102,5]]},"200":{"position":[[449,6]]},"234":{"position":[[2067,5],[2956,6]]}}}],["still",{"_index":231,"t":{"53":{"position":[[3343,5]]},"85":{"position":[[396,5],[1871,5]]},"131":{"position":[[835,5]]},"139":{"position":[[808,5]]},"150":{"position":[[476,5]]},"241":{"position":[[1206,5]]}}}],["stop",{"_index":812,"t":{"89":{"position":[[1715,4],[1799,4],[1822,4],[2471,4],[2496,4]]},"101":{"position":[[2379,4],[2460,4],[2483,4]]},"194":{"position":[[1977,5]]}}}],["stop(self",{"_index":811,"t":{"89":{"position":[[1691,10]]},"101":{"position":[[2355,10]]}}}],["store",{"_index":150,"t":{"53":{"position":[[380,5]]},"59":{"position":[[1215,5]]},"89":{"position":[[803,6]]},"91":{"position":[[1053,5]]},"95":{"position":[[37,6],[466,5],[517,5],[585,5],[642,5],[723,6],[963,6],[1159,6]]},"97":{"position":[[1103,5]]},"101":{"position":[[2845,5],[2917,5]]},"105":{"position":[[41,5]]},"115":{"position":[[1640,5],[1696,5],[1773,5],[2067,5]]},"208":{"position":[[47,5],[380,6]]},"210":{"position":[[875,6]]},"212":{"position":[[652,5],[993,5],[2099,5],[2303,7]]},"218":{"position":[[929,6]]},"236":{"position":[[320,5],[562,6]]},"250":{"position":[[72,5],[409,5],[460,5],[528,5],[585,5],[666,6]]}}}],["str",{"_index":779,"t":{"87":{"position":[[434,3],[468,3]]},"91":{"position":[[547,3]]},"97":{"position":[[577,3],[628,3]]},"99":{"position":[[389,3],[405,3]]},"101":{"position":[[604,4],[1194,4],[2552,4],[3147,5]]},"137":{"position":[[1308,4],[1329,3],[1431,3],[1720,3]]},"212":{"position":[[1569,3],[1695,3]]},"218":{"position":[[1254,5]]},"220":{"position":[[648,3],[772,3]]},"234":{"position":[[528,4],[549,5]]},"238":{"position":[[1760,3],[1867,3],[2153,3]]},"241":{"position":[[696,4]]}}}],["strawman",{"_index":1575,"t":{"216":{"position":[[53,8]]}}}],["stream",{"_index":1439,"t":{"194":{"position":[[1854,7],[2161,6]]}}}],["string",{"_index":850,"t":{"97":{"position":[[233,6],[778,6]]},"115":{"position":[[357,7]]},"128":{"position":[[1915,7]]},"194":{"position":[[2101,8]]},"218":{"position":[[1028,6]]},"220":{"position":[[508,6],[540,6]]},"228":{"position":[[506,8]]},"238":{"position":[[2180,6]]}}}],["structur",{"_index":843,"t":{"95":{"position":[[342,10]]},"113":{"position":[[4500,10],[4556,10]]},"184":{"position":[[137,10]]},"188":{"position":[[522,10]]},"212":{"position":[[2147,10]]},"228":{"position":[[338,9],[395,10]]},"262":{"position":[[931,10]]},"270":{"position":[[719,9]]}}}],["studio",{"_index":1173,"t":{"139":{"position":[[706,6]]}}}],["style",{"_index":1004,"t":{"113":{"position":[[1099,5]]}}}],["sub",{"_index":450,"t":{"65":{"position":[[719,3]]}}}],["subject",{"_index":421,"t":{"63":{"position":[[6027,7],[6369,7],[6703,7]]}}}],["submit",{"_index":1600,"t":{"222":{"position":[[3417,10]]}}}],["subnet",{"_index":735,"t":{"85":{"position":[[1350,9],[1420,6],[1523,7],[1681,6],[2056,6],[2121,6],[2195,7],[2334,7]]}}}],["subprocess",{"_index":659,"t":{"77":{"position":[[328,10]]}}}],["subsequ",{"_index":307,"t":{"59":{"position":[[1321,10]]}}}],["succeed",{"_index":381,"t":{"63":{"position":[[3387,9],[4482,9]]},"107":{"position":[[1869,9],[2272,9],[2656,9]]},"154":{"position":[[5164,9],[5585,9],[9182,9],[9688,9],[12355,9],[12647,9]]},"222":{"position":[[1228,9],[1811,9]]}}}],["success",{"_index":380,"t":{"63":{"position":[[3313,7]]},"107":{"position":[[1795,7]]},"128":{"position":[[1822,8],[2463,11],[2504,7]]},"154":{"position":[[5078,7],[9074,8],[12247,8]]},"222":{"position":[[1154,7]]}}}],["successfulli",{"_index":198,"t":{"53":{"position":[[2058,12],[2319,12],[2428,12],[2615,12]]},"63":{"position":[[1456,12],[1582,12],[1717,13]]},"81":{"position":[[1108,12]]},"99":{"position":[[663,13]]},"126":{"position":[[1337,12],[2747,12]]},"128":{"position":[[2422,12]]},"194":{"position":[[4033,12]]}}}],["such",{"_index":15,"t":{"41":{"position":[[171,4]]},"85":{"position":[[935,4]]},"97":{"position":[[1151,4]]},"107":{"position":[[891,4]]},"124":{"position":[[415,4],[1137,4]]},"131":{"position":[[718,4]]},"135":{"position":[[375,4]]},"139":{"position":[[905,4]]},"180":{"position":[[918,5]]},"196":{"position":[[911,4]]},"202":{"position":[[508,5]]},"208":{"position":[[236,4]]},"228":{"position":[[417,4],[823,4]]},"234":{"position":[[2804,4]]},"236":{"position":[[195,4]]},"241":{"position":[[737,4]]},"262":{"position":[[1335,4]]},"274":{"position":[[278,4]]}}}],["summar",{"_index":143,"t":{"53":{"position":[[239,9],[818,13],[915,10],[1096,11],[1172,14],[1867,14],[1913,13],[3247,10],[3441,13],[3548,13]]},"55":{"position":[[77,14],[218,14]]},"105":{"position":[[638,10]]},"115":{"position":[[1960,10],[2385,10]]},"126":{"position":[[166,9]]},"131":{"position":[[337,10]]},"152":{"position":[[963,13]]},"154":{"position":[[6432,10]]},"262":{"position":[[1441,11]]}}}],["summari",{"_index":169,"t":{"53":{"position":[[939,7],[1021,7],[1064,7],[3012,7],[3151,7],[3315,7]]},"131":{"position":[[383,7],[426,7]]}}}],["super().__init__(config",{"_index":1022,"t":{"113":{"position":[[2304,24]]}}}],["super().mean(axi",{"_index":1233,"t":{"154":{"position":[[2155,18],[3513,18]]}}}],["support",{"_index":102,"t":{"49":{"position":[[792,7]]},"65":{"position":[[15,8]]},"67":{"position":[[456,7]]},"75":{"position":[[688,8]]},"77":{"position":[[11,8]]},"79":{"position":[[233,8]]},"109":{"position":[[18,7],[159,7],[658,9]]},"111":{"position":[[42,7],[149,9],[258,7],[353,7],[905,7],[1037,7],[1088,7]]},"115":{"position":[[3120,9],[3380,7]]},"178":{"position":[[614,7]]},"194":{"position":[[3203,11],[3459,7],[3859,11]]},"196":{"position":[[326,9]]},"200":{"position":[[958,9]]},"204":{"position":[[493,7]]},"228":{"position":[[993,7],[1313,8]]},"234":{"position":[[1943,7]]},"236":{"position":[[834,7]]},"241":{"position":[[888,7]]},"245":{"position":[[40,9],[155,7]]},"256":{"position":[[107,8]]},"260":{"position":[[1660,9]]},"274":{"position":[[979,7]]}}}],["suppos",{"_index":1484,"t":{"196":{"position":[[828,7]]}}}],["sure",{"_index":1162,"t":{"139":{"position":[[12,4]]},"143":{"position":[[1022,4],[1350,4]]},"274":{"position":[[327,4],[667,4],[831,4]]}}}],["switch",{"_index":1131,"t":{"133":{"position":[[130,8]]},"135":{"position":[[340,6]]}}}],["syntact",{"_index":1115,"t":{"128":{"position":[[2077,13]]}}}],["syntax",{"_index":122,"t":{"51":{"position":[[465,6]]},"139":{"position":[[249,6],[652,6],[769,6]]},"141":{"position":[[756,6]]}}}],["system",{"_index":23,"t":{"41":{"position":[[266,6]]},"67":{"position":[[1190,7],[1210,6],[1307,7]]},"69":{"position":[[62,8]]},"81":{"position":[[995,7]]},"85":{"position":[[2730,8]]},"95":{"position":[[1262,7]]},"111":{"position":[[266,6],[361,6],[415,6],[707,6],[797,6]]},"113":{"position":[[93,7],[540,6]]},"152":{"position":[[1270,6]]},"212":{"position":[[2494,6]]},"258":{"position":[[902,7]]}}}],["tabl",{"_index":1052,"t":{"115":{"position":[[397,5]]},"224":{"position":[[987,7],[1391,7]]},"230":{"position":[[498,7]]},"260":{"position":[[1642,5]]}}}],["tag",{"_index":415,"t":{"63":{"position":[[4207,5],[5302,5]]}}}],["take",{"_index":518,"t":{"67":{"position":[[1876,4]]},"101":{"position":[[1076,4]]},"131":{"position":[[576,4]]},"137":{"position":[[1553,5]]},"152":{"position":[[1037,4]]},"200":{"position":[[184,6],[582,6]]}}}],["talk",{"_index":369,"t":{"63":{"position":[[2717,4]]},"126":{"position":[[78,4]]}}}],["target",{"_index":252,"t":{"57":{"position":[[125,7]]},"67":{"position":[[648,6]]},"69":{"position":[[1905,8]]}}}],["task",{"_index":438,"t":{"65":{"position":[[403,5],[532,5],[614,4],[723,5],[989,4],[1043,4],[1112,4],[1168,4]]},"67":{"position":[[381,4]]},"89":{"position":[[131,6]]},"113":{"position":[[1760,6]]},"124":{"position":[[325,5]]},"128":{"position":[[114,5],[124,4]]},"137":{"position":[[211,6],[421,4]]},"210":{"position":[[374,6],[786,5]]},"212":{"position":[[766,6]]},"228":{"position":[[96,6],[300,6],[697,6],[862,4],[927,4],[1786,6],[1928,6]]},"230":{"position":[[165,6]]},"262":{"position":[[1328,6],[1550,4]]},"268":{"position":[[244,6]]}}}],["task_weaver.log",{"_index":344,"t":{"63":{"position":[[1374,15],[2553,15]]}}}],["taskweav",{"_index":157,"t":{"53":{"position":[[515,11]]},"57":{"position":[[3,11]]},"59":{"position":[[263,10]]},"63":{"position":[[286,10],[628,10],[836,10],[1237,11],[1254,11],[1819,10],[1926,11],[1943,11],[6405,11]]},"65":{"position":[[0,10],[304,11]]},"67":{"position":[[1342,10],[2150,11],[2292,10]]},"73":{"position":[[23,10],[140,10],[160,11],[303,10]]},"75":{"position":[[360,10]]},"77":{"position":[[0,10],[346,10],[468,10]]},"79":{"position":[[222,10],[1038,10],[1086,10]]},"81":{"position":[[1258,10]]},"87":{"position":[[35,10]]},"89":{"position":[[43,10],[429,10],[888,10],[1629,10],[1724,10],[1831,10],[2442,10],[2505,10]]},"91":{"position":[[36,10],[96,10],[837,10],[1008,11]]},"93":{"position":[[51,10],[165,11]]},"95":{"position":[[427,10]]},"97":{"position":[[30,10]]},"99":{"position":[[29,10],[103,10]]},"101":{"position":[[64,10],[222,10],[1042,11]]},"107":{"position":[[344,10],[1520,11],[1537,11],[2462,11]]},"109":{"position":[[3,11]]},"113":{"position":[[25,10],[162,11],[1583,10],[3684,11]]},"115":{"position":[[152,11]]},"131":{"position":[[27,10]]},"133":{"position":[[37,10],[398,10]]},"137":{"position":[[28,10],[91,11],[535,10],[610,10],[1826,10]]},"139":{"position":[[186,10],[797,10]]},"145":{"position":[[50,11],[328,10],[383,10]]},"147":{"position":[[45,10]]},"150":{"position":[[202,10],[238,10],[692,10]]},"152":{"position":[[435,11],[826,10],[896,10],[1058,10],[1196,11]]},"154":{"position":[[30,11],[126,11],[152,10],[259,10],[620,10],[638,11],[6210,10],[6394,11],[7205,11],[7231,10],[7689,10],[7707,11],[7860,12],[10817,10],[11029,12],[13534,10]]},"173":{"position":[[56,11]]},"178":{"position":[[697,10],[722,11]]},"180":{"position":[[1403,10],[1917,10],[1942,11]]},"188":{"position":[[795,10],[820,10]]},"190":{"position":[[241,10],[266,11]]},"192":{"position":[[626,10],[651,11]]},"194":{"position":[[56,11],[137,11]]},"196":{"position":[[756,10]]},"198":{"position":[[539,10],[564,11]]},"200":{"position":[[244,11],[1439,10]]},"202":{"position":[[1047,10],[1072,11]]},"204":{"position":[[576,10],[601,11]]},"208":{"position":[[518,11],[624,11]]},"210":{"position":[[2,10],[101,11]]},"214":{"position":[[472,10],[497,11]]},"216":{"position":[[72,11]]},"222":{"position":[[461,11],[478,11],[3017,11]]},"224":{"position":[[465,10]]},"228":{"position":[[0,10],[350,10],[539,10],[746,10],[967,10],[1126,10],[1302,10],[1501,10],[1714,10],[1949,10],[2138,11]]},"230":{"position":[[175,11]]},"234":{"position":[[99,11],[191,10],[2106,10]]},"236":{"position":[[261,10]]},"241":{"position":[[45,10],[1271,10]]},"248":{"position":[[16,10],[147,10],[187,10],[278,10]]},"250":{"position":[[0,10],[370,10]]},"252":{"position":[[15,11]]},"258":{"position":[[24,10],[79,10],[166,10],[648,11],[665,11],[788,11],[825,10],[938,10],[1080,11]]},"260":{"position":[[39,11],[73,10],[275,10],[303,10],[390,10],[867,11],[884,11],[1029,11],[1208,10],[1226,11],[1322,10],[1673,10],[2110,10]]},"262":{"position":[[19,10],[589,10],[750,11],[815,11]]},"264":{"position":[[46,10]]},"268":{"position":[[30,10],[538,10],[784,10],[1026,10],[1339,10]]},"270":{"position":[[609,11]]},"272":{"position":[[670,10],[794,10],[812,11]]},"274":{"position":[[788,10]]}}}],["taskweaver'",{"_index":0,"t":{"41":{"position":[[0,12]]},"230":{"position":[[52,12]]}}}],["taskweaver.app.app",{"_index":814,"t":{"89":{"position":[[1965,18]]},"262":{"position":[[94,18]]}}}],["taskweaver.ext_rol",{"_index":996,"t":{"113":{"position":[[609,19]]}}}],["taskweaver.ext_role.echo.echo.echo",{"_index":1008,"t":{"113":{"position":[[1292,34]]}}}],["taskweaver.llm.bas",{"_index":1408,"t":{"194":{"position":[[298,19],[382,19]]}}}],["taskweaver.llm.util",{"_index":1409,"t":{"194":{"position":[[468,19]]}}}],["taskweaver.log",{"_index":1068,"t":{"115":{"position":[[1592,14]]}}}],["taskweaver.module.trac",{"_index":620,"t":{"73":{"position":[[362,25],[403,25]]}}}],["taskweaver.plugin",{"_index":1577,"t":{"218":{"position":[[288,17],[1130,17]]},"234":{"position":[[372,17],[2139,17]]}}}],["taskweaver.plugin.context",{"_index":1180,"t":{"143":{"position":[[305,25]]}}}],["taskweaver/ces_container/dockerfil",{"_index":708,"t":{"83":{"position":[[964,36]]}}}],["taskweaver/code_interpreter/code_verification.pi",{"_index":125,"t":{"51":{"position":[[634,49]]}}}],["taskweaver/docker/ces_container/dockerfil",{"_index":682,"t":{"81":{"position":[[340,42]]}}}],["taskweaver/ext_role/role_nam",{"_index":1000,"t":{"113":{"position":[[904,29]]}}}],["taskweaver/llm",{"_index":1404,"t":{"194":{"position":[[202,14]]}}}],["taskweaver/llm/__init__.pi",{"_index":1451,"t":{"194":{"position":[[2587,26]]}}}],["taskweaver/memory/memory.pi",{"_index":1526,"t":{"208":{"position":[[171,28]]}}}],["taskweaver/planner/planner.pi",{"_index":1573,"t":{"212":{"position":[[3001,30]]}}}],["taskweaver/project",{"_index":1778,"t":{"270":{"position":[[777,18]]}}}],["taskweaver/requirements.txt",{"_index":680,"t":{"81":{"position":[[238,27]]}}}],["taskweaver/script",{"_index":697,"t":{"81":{"position":[[1006,18]]}}}],["taskweaver/scripts/build.ps1",{"_index":696,"t":{"81":{"position":[[938,28]]}}}],["taskweaver/scripts/build_executor.sh",{"_index":695,"t":{"81":{"position":[[898,36]]}}}],["taskweaver/trac",{"_index":513,"t":{"67":{"position":[[1787,19]]}}}],["taskweaver/tracing_configure/dock",{"_index":531,"t":{"69":{"position":[[142,36]]}}}],["taskweaver_config.json",{"_index":31,"t":{"44":{"position":[[71,23]]},"49":{"position":[[136,23]]},"59":{"position":[[508,22]]},"75":{"position":[[322,22]]},"79":{"position":[[105,22],[544,22]]},"95":{"position":[[365,24]]},"113":{"position":[[3741,22],[3805,22]]},"133":{"position":[[335,22]]},"178":{"position":[[148,22]]},"180":{"position":[[204,22]]},"186":{"position":[[201,23]]},"188":{"position":[[106,22]]},"190":{"position":[[87,22]]},"192":{"position":[[347,23]]},"194":{"position":[[3885,22]]},"196":{"position":[[418,22]]},"198":{"position":[[250,23]]},"200":{"position":[[1046,22]]},"202":{"position":[[671,23],[726,23]]},"204":{"position":[[76,22]]},"206":{"position":[[343,22],[444,22],[575,22],[1396,23]]},"214":{"position":[[252,23]]},"241":{"position":[[1126,23]]},"250":{"position":[[308,24]]},"252":{"position":[[131,22],[239,22]]},"256":{"position":[[252,22]]},"262":{"position":[[173,22]]},"270":{"position":[[536,22]]}}}],["taskweaver_gid=$(id",{"_index":1775,"t":{"270":{"position":[[311,19]]},"272":{"position":[[303,19]]}}}],["taskweaver_uid=$(id",{"_index":1774,"t":{"270":{"position":[[237,19]]},"272":{"position":[[229,19]]}}}],["taskweaverapp",{"_index":784,"t":{"89":{"position":[[4,13],[140,13],[1189,13],[1921,13],[1991,13],[2183,13]]},"95":{"position":[[116,13],[275,13]]},"101":{"position":[[454,13]]},"262":{"position":[[120,13],[492,13]]}}}],["taskweaverapp(app_dir=\"path/to/project",{"_index":815,"t":{"89":{"position":[[2011,41]]}}}],["taskweaverapp(app_dir=app_dir",{"_index":1737,"t":{"262":{"position":[[278,30]]}}}],["taskweaverapp(object",{"_index":788,"t":{"89":{"position":[[231,22]]}}}],["taskweaverapp.__init__",{"_index":786,"t":{"89":{"position":[[189,22]]}}}],["taskweavercontainers/taskweav",{"_index":676,"t":{"79":{"position":[[939,31],[1220,31]]},"268":{"position":[[66,31],[251,31],[568,31],[689,31],[957,31],[1265,31]]},"270":{"position":[[464,31]]},"272":{"position":[[446,31]]}}}],["taskweaverev",{"_index":896,"t":{"101":{"position":[[2051,17]]}}}],["teach",{"_index":1093,"t":{"126":{"position":[[342,5],[451,5]]},"128":{"position":[[191,5]]}}}],["telemetrylogg",{"_index":878,"t":{"101":{"position":[[663,16]]},"113":{"position":[[244,16],[2152,16]]}}}],["tell",{"_index":114,"t":{"51":{"position":[[274,4]]},"126":{"position":[[19,5]]},"128":{"position":[[26,5]]},"137":{"position":[[382,7],[1757,4]]},"139":{"position":[[564,4]]},"141":{"position":[[488,4]]}}}],["tell_jok",{"_index":1161,"t":{"137":{"position":[[1726,10]]}}}],["temp_context",{"_index":1181,"t":{"143":{"position":[[338,12],[356,14]]}}}],["temp_ctx",{"_index":1182,"t":{"143":{"position":[[374,9]]}}}],["temperatur",{"_index":1440,"t":{"194":{"position":[[1875,12]]}}}],["templat",{"_index":1576,"t":{"218":{"position":[[244,8]]}}}],["temporari",{"_index":1186,"t":{"143":{"position":[[527,9]]}}}],["term",{"_index":1197,"t":{"150":{"position":[[159,4]]}}}],["termin",{"_index":924,"t":{"107":{"position":[[197,11]]},"196":{"position":[[740,9]]},"200":{"position":[[1423,9]]},"202":{"position":[[371,8]]},"260":{"position":[[241,9]]},"268":{"position":[[485,8]]}}}],["test",{"_index":764,"t":{"85":{"position":[[2644,7]]},"109":{"position":[[385,6]]},"194":{"position":[[3996,4]]},"196":{"position":[[682,4]]},"200":{"position":[[1365,4]]},"264":{"position":[[167,7]]},"274":{"position":[[73,7]]}}}],["text",{"_index":770,"t":{"87":{"position":[[92,4],[216,4],[734,5]]},"97":{"position":[[491,4],[751,4],[1137,4]]},"101":{"position":[[1565,4]]},"109":{"position":[[406,4],[434,4]]},"113":{"position":[[4280,4],[4366,4]]},"115":{"position":[[886,4],[3076,4]]},"124":{"position":[[1110,4]]},"137":{"position":[[284,4],[1379,4],[1425,5]]},"154":{"position":[[7071,4]]},"216":{"position":[[115,4]]},"218":{"position":[[1248,5]]},"220":{"position":[[460,4],[637,4],[701,4],[805,4]]},"222":{"position":[[621,4],[700,4],[792,4],[880,4],[955,4],[1035,4],[1676,4],[2172,4],[2251,4],[2379,4],[2714,4],[3041,4]]},"228":{"position":[[501,4]]},"241":{"position":[[824,5]]},"243":{"position":[[299,7]]}}}],["text_messag",{"_index":849,"t":{"97":{"position":[[206,12]]}}}],["theori",{"_index":1551,"t":{"212":{"position":[[397,7]]}}}],["therefor",{"_index":163,"t":{"53":{"position":[[709,10]]},"95":{"position":[[1091,10]]},"101":{"position":[[296,10]]},"150":{"position":[[577,10]]},"243":{"position":[[486,10]]}}}],["thing",{"_index":233,"t":{"53":{"position":[[3406,5]]}}}],["think",{"_index":1210,"t":{"152":{"position":[[601,5]]},"154":{"position":[[4403,5]]}}}],["third",{"_index":1097,"t":{"126":{"position":[[2590,5],[2637,5]]},"128":{"position":[[1627,5]]},"224":{"position":[[2181,6]]}}}],["though",{"_index":1538,"t":{"210":{"position":[[411,6]]}}}],["thought",{"_index":374,"t":{"63":{"position":[[3085,9]]},"87":{"position":[[283,10],[588,10]]},"128":{"position":[[602,7],[1526,7]]},"154":{"position":[[1402,9],[4610,9],[8611,9],[11853,9]]}}}],["thousand",{"_index":1142,"t":{"137":{"position":[[343,9],[1483,9]]}}}],["three",{"_index":448,"t":{"65":{"position":[[656,5]]}}}],["through",{"_index":458,"t":{"65":{"position":[[1031,7]]},"131":{"position":[[53,7]]},"228":{"position":[[154,7]]},"234":{"position":[[2045,7]]},"258":{"position":[[214,7]]},"260":{"position":[[84,7],[439,7]]},"262":{"position":[[1598,7]]}}}],["tiktoken",{"_index":487,"t":{"67":{"position":[[316,8],[426,8],[828,8]]}}}],["time",{"_index":191,"t":{"53":{"position":[[1590,4]]},"57":{"position":[[417,5]]},"65":{"position":[[253,4]]},"71":{"position":[[174,4],[189,4],[542,4]]},"83":{"position":[[101,4]]},"101":{"position":[[360,4],[3314,5]]},"105":{"position":[[283,6]]},"131":{"position":[[529,5],[588,5]]},"137":{"position":[[254,4],[1107,4]]},"150":{"position":[[388,5]]},"152":{"position":[[1156,5]]},"186":{"position":[[274,4]]},"234":{"position":[[634,4],[1711,4]]},"238":{"position":[[1433,4]]},"262":{"position":[[557,5]]}}}],["time_col_nam",{"_index":1154,"t":{"137":{"position":[[1293,14]]},"234":{"position":[[513,14],[833,14]]},"238":{"position":[[1740,13]]}}}],["time_col_name=\"t",{"_index":1653,"t":{"230":{"position":[[562,19]]}}}],["time_seri",{"_index":1609,"t":{"224":{"position":[[975,11],[1379,11]]},"230":{"position":[[486,11]]}}}],["timebucket",{"_index":1281,"t":{"154":{"position":[[9250,10],[9756,10],[10685,10],[10904,10]]}}}],["timelin",{"_index":445,"t":{"65":{"position":[[598,8]]}}}],["timestamp",{"_index":583,"t":{"71":{"position":[[249,12]]}}}],["tip",{"_index":1043,"t":{"113":{"position":[[4078,3]]},"115":{"position":[[164,3],[2990,3],[3034,3],[3268,3],[3373,3]]},"124":{"position":[[1098,3]]},"126":{"position":[[1984,3]]},"128":{"position":[[1085,3]]},"150":{"position":[[752,4],[955,3]]},"152":{"position":[[1123,4]]},"184":{"position":[[449,3]]},"188":{"position":[[285,3]]},"192":{"position":[[509,3]]},"196":{"position":[[305,3]]},"200":{"position":[[937,3]]},"202":{"position":[[411,3]]},"204":{"position":[[269,3]]},"206":{"position":[[1594,3]]},"212":{"position":[[1094,3]]},"234":{"position":[[2473,3]]},"238":{"position":[[985,3]]},"260":{"position":[[2101,3]]},"262":{"position":[[2025,3]]}}}],["tl",{"_index":566,"t":{"69":{"position":[[1310,4]]}}}],["today",{"_index":969,"t":{"111":{"position":[[0,6]]}}}],["todo",{"_index":689,"t":{"81":{"position":[[676,5]]}}}],["togeth",{"_index":985,"t":{"111":{"position":[[1219,8]]}}}],["token",{"_index":260,"t":{"57":{"position":[[336,5],[375,5]]},"65":{"position":[[451,6],[1503,6]]},"67":{"position":[[358,6],[468,10],[638,9]]},"71":{"position":[[1209,5]]}}}],["tongyi",{"_index":1314,"t":{"167":{"position":[[8,7]]},"214":{"position":[[5,7]]}}}],["tool",{"_index":653,"t":{"75":{"position":[[649,4]]},"143":{"position":[[33,4]]},"230":{"position":[[112,5]]}}}],["top",{"_index":200,"t":{"53":{"position":[[2114,3],[2281,3],[2892,3]]},"59":{"position":[[963,3]]},"63":{"position":[[2620,3]]}}}],["top_5_largest",{"_index":224,"t":{"53":{"position":[[2812,16]]}}}],["top_p",{"_index":1444,"t":{"194":{"position":[[1946,6]]}}}],["topolog",{"_index":1534,"t":{"210":{"position":[[148,9]]}}}],["toy",{"_index":501,"t":{"67":{"position":[[1178,3],[1206,3]]}}}],["tpu",{"_index":1395,"t":{"192":{"position":[[128,3]]}}}],["trace",{"_index":424,"t":{"65":{"position":[[24,7],[142,5],[514,5],[1266,6],[1645,6],[1680,6],[1795,6]]},"67":{"position":[[0,7],[42,8],[547,7],[871,7],[1119,8],[1182,7],[1372,6],[1479,6],[1652,6]]},"69":{"position":[[1387,7],[1606,6]]},"71":{"position":[[56,6],[668,6],[722,6]]},"73":{"position":[[108,8],[451,7],[515,7],[871,5],[935,8],[1047,5]]},"101":{"position":[[680,8],[689,8],[933,8],[946,8]]},"113":{"position":[[261,8],[270,8],[2169,8],[2178,8],[2337,8]]},"228":{"position":[[1581,7]]}}}],["traceback",{"_index":1227,"t":{"154":{"position":[[1963,9],[3321,9]]}}}],["tracing.en",{"_index":493,"t":{"67":{"position":[[930,18]]}}}],["tracing.enabled=tru",{"_index":489,"t":{"67":{"position":[[570,20]]}}}],["tracing.endpoint",{"_index":495,"t":{"67":{"position":[[983,19],[2386,16]]}}}],["tracing.export",{"_index":494,"t":{"67":{"position":[[955,19]]}}}],["tracing.tokenizer_target_model",{"_index":491,"t":{"67":{"position":[[721,30],[1028,33]]}}}],["tracing_decor",{"_index":631,"t":{"73":{"position":[[795,17],[1077,18]]}}}],["tracing_decorator_non_class",{"_index":633,"t":{"73":{"position":[[839,28]]}}}],["traffic",{"_index":744,"t":{"85":{"position":[[1647,7],[1858,7],[2177,7],[2300,7]]}}}],["train",{"_index":1717,"t":{"243":{"position":[[105,7]]}}}],["transact",{"_index":1571,"t":{"212":{"position":[[2529,12]]}}}],["transform",{"_index":686,"t":{"81":{"position":[[606,12],[795,12]]},"115":{"position":[[3449,9]]},"268":{"position":[[442,12]]}}}],["translat",{"_index":725,"t":{"85":{"position":[[583,11]]}}}],["treat",{"_index":327,"t":{"63":{"position":[[461,7]]}}}],["tree",{"_index":123,"t":{"51":{"position":[[472,5]]}}}],["tri",{"_index":1125,"t":{"131":{"position":[[674,3]]},"154":{"position":[[6657,5]]},"180":{"position":[[811,3]]},"234":{"position":[[1136,4],[1302,4]]}}}],["trigger",{"_index":285,"t":{"59":{"position":[[717,10]]},"63":{"position":[[2516,10]]}}}],["troubleshoot",{"_index":761,"t":{"85":{"position":[[2553,15]]}}}],["true",{"_index":72,"t":{"49":{"position":[[97,4]]},"55":{"position":[[317,5]]},"67":{"position":[[949,5]]},"69":{"position":[[1325,4]]},"89":{"position":[[864,5]]},"91":{"position":[[726,4]]},"111":{"position":[[320,5],[697,5],[1161,5]]},"115":{"position":[[237,4],[262,4]]},"124":{"position":[[716,4]]},"126":{"position":[[513,4]]},"128":{"position":[[257,4]]},"137":{"position":[[1198,8]]},"152":{"position":[[292,5]]},"186":{"position":[[162,4]]},"194":{"position":[[1869,5]]},"220":{"position":[[394,4],[409,4],[662,4]]},"234":{"position":[[723,6]]},"238":{"position":[[204,5],[1302,4],[1522,6],[1627,4],[1774,4],[1881,4],[3528,5],[3718,4]]},"241":{"position":[[416,4],[560,4]]}}}],["tsinghua",{"_index":1320,"t":{"169":{"position":[[52,8]]},"198":{"position":[[49,8]]}}}],["turbo",{"_index":1504,"t":{"200":{"position":[[1165,6]]},"206":{"position":[[748,5],[1716,5]]}}}],["turn",{"_index":1118,"t":{"128":{"position":[[2324,6]]}}}],["tutori",{"_index":1163,"t":{"139":{"position":[[64,8]]},"152":{"position":[[20,9]]},"194":{"position":[[76,9]]},"216":{"position":[[8,9]]},"228":{"position":[[2032,8]]},"234":{"position":[[2463,9]]}}}],["two",{"_index":106,"t":{"51":{"position":[[40,3]]},"53":{"position":[[871,3],[1807,3],[2975,3]]},"55":{"position":[[30,3]]},"57":{"position":[[156,3]]},"77":{"position":[[20,3],[141,3]]},"97":{"position":[[171,3],[716,3]]},"111":{"position":[[1329,3]]},"113":{"position":[[137,3],[812,3]]},"124":{"position":[[20,3],[954,3]]},"128":{"position":[[1225,3]]},"139":{"position":[[100,3]]},"208":{"position":[[346,3],[662,3]]},"212":{"position":[[169,3]]},"218":{"position":[[880,3]]},"224":{"position":[[121,3],[421,3],[617,3],[1527,3],[2002,3],[2301,3],[2691,3],[2753,3]]},"230":{"position":[[643,3]]},"232":{"position":[[18,3]]},"234":{"position":[[144,3]]},"268":{"position":[[10,3]]}}}],["type",{"_index":88,"t":{"49":{"position":[[537,10]]},"53":{"position":[[2687,7],[2829,7]]},"87":{"position":[[236,5],[246,4],[438,5],[550,5]]},"101":{"position":[[1801,4],[2247,4]]},"109":{"position":[[129,4],[181,6]]},"115":{"position":[[682,4],[939,4],[1306,10]]},"124":{"position":[[24,5],[336,5],[958,5],[1092,5]]},"126":{"position":[[846,5],[1025,5],[1171,5],[1593,5],[1772,5],[1918,5]]},"128":{"position":[[596,5],[731,5],[869,5],[907,5],[950,5],[992,5]]},"143":{"position":[[1317,4],[1364,4]]},"152":{"position":[[668,6]]},"194":{"position":[[3168,4],[3814,4]]},"208":{"position":[[666,5]]},"212":{"position":[[757,5],[777,6],[911,4],[984,4],[1003,4],[1088,5],[1503,5],[1528,4],[2589,4],[2783,5],[2909,4]]},"220":{"position":[[642,5],[766,5]]},"234":{"position":[[1937,5]]},"236":{"position":[[828,5]]},"238":{"position":[[580,5],[784,5],[1601,5],[1754,5],[1861,5],[1972,5],[2147,5]]},"241":{"position":[[679,4],[731,5]]},"260":{"position":[[1049,4],[1158,4]]},"262":{"position":[[1726,7],[1836,7],[1941,7]]}}}],["type:dv",{"_index":402,"t":{"63":{"position":[[3762,10],[4857,10]]}}}],["type=\"df",{"_index":1584,"t":{"218":{"position":[[679,10]]},"234":{"position":[[1910,10]]},"236":{"position":[[801,10]]}}}],["type=bind,source=,target=/app/taskweaver/loc",{"_index":1779,"t":{"272":{"position":[[380,63]]}}}],["type=bind,source=,target=/app/taskweaver/project",{"_index":1777,"t":{"270":{"position":[[388,73]]}}}],["typedetermin",{"_index":1555,"t":{"212":{"position":[[857,16]]}}}],["typic",{"_index":492,"t":{"67":{"position":[[845,7]]},"95":{"position":[[316,7]]},"113":{"position":[[1081,9]]},"131":{"position":[[38,9]]},"133":{"position":[[14,9]]},"135":{"position":[[11,9]]},"137":{"position":[[107,7]]},"139":{"position":[[239,9],[626,9]]},"141":{"position":[[556,9],[647,9],[733,7]]},"145":{"position":[[222,9],[286,9]]},"147":{"position":[[22,9]]},"210":{"position":[[1045,9]]},"218":{"position":[[739,7]]},"224":{"position":[[2352,9]]},"250":{"position":[[244,9]]}}}],["u",{"_index":1305,"t":{"154":{"position":[[13379,1]]},"270":{"position":[[258,2]]},"272":{"position":[[250,2]]},"274":{"position":[[503,1]]}}}],["ui",{"_index":551,"t":{"69":{"position":[[594,2],[673,2]]},"71":{"position":[[1558,2]]},"258":{"position":[[811,2]]},"268":{"position":[[1040,2],[1354,2]]},"274":{"position":[[34,2],[129,3],[220,2],[1017,3],[1059,3]]}}}],["uncom",{"_index":1580,"t":{"218":{"position":[[576,9]]},"270":{"position":[[265,9],[339,9]]},"272":{"position":[[257,9],[331,9]]}}}],["undefin",{"_index":1175,"t":{"141":{"position":[[160,10]]}}}],["under",{"_index":1639,"t":{"228":{"position":[[1664,5]]},"238":{"position":[[259,5]]},"272":{"position":[[620,5]]}}}],["underscor",{"_index":1081,"t":{"115":{"position":[[3519,11]]},"184":{"position":[[464,11]]}}}],["understand",{"_index":642,"t":{"75":{"position":[[167,13]]},"85":{"position":[[2413,10]]},"124":{"position":[[990,10]]},"126":{"position":[[1998,10]]},"128":{"position":[[1138,10]]},"210":{"position":[[982,10]]},"212":{"position":[[1735,13],[1779,10]]},"220":{"position":[[58,10]]},"228":{"position":[[1636,10]]},"234":{"position":[[2595,10],[2657,10]]},"262":{"position":[[916,10]]}}}],["unifi",{"_index":772,"t":{"87":{"position":[[168,7]]},"196":{"position":[[22,7]]},"200":{"position":[[24,7]]}}}],["uniqu",{"_index":778,"t":{"87":{"position":[[391,6]]},"91":{"position":[[351,6]]},"97":{"position":[[374,6]]},"99":{"position":[[250,6]]}}}],["unit",{"_index":464,"t":{"65":{"position":[[1246,4]]},"99":{"position":[[167,4]]},"230":{"position":[[16,5]]}}}],["untrust",{"_index":639,"t":{"75":{"position":[[114,9]]},"77":{"position":[[719,9]]}}}],["unus",{"_index":306,"t":{"59":{"position":[[1297,6]]}}}],["up",{"_index":497,"t":{"67":{"position":[[1093,2],[1290,2],[1761,2],[1822,2]]},"69":{"position":[[117,2],[920,2]]},"71":{"position":[[1331,2]]},"85":{"position":[[1620,2]]},"115":{"position":[[3038,2]]},"131":{"position":[[650,2]]},"150":{"position":[[495,2]]},"194":{"position":[[4050,3]]},"218":{"position":[[972,2]]}}}],["updat",{"_index":902,"t":{"101":{"position":[[2564,6],[2629,7],[2682,6],[3323,6]]},"113":{"position":[[3460,6],[3565,8]]},"202":{"position":[[205,8]]},"274":{"position":[[592,6]]}}}],["update_session_var",{"_index":900,"t":{"101":{"position":[[2505,19],[2645,18],[3265,18]]}}}],["upload",{"_index":443,"t":{"65":{"position":[[551,8]]},"83":{"position":[[640,6],[673,7],[711,6]]},"101":{"position":[[2311,6]]},"274":{"position":[[987,9]]}}}],["upon",{"_index":296,"t":{"59":{"position":[[1065,4]]}}}],["upper",{"_index":1672,"t":{"234":{"position":[[1512,5],[1620,6]]}}}],["uppercas",{"_index":1080,"t":{"115":{"position":[[3484,9]]}}}],["uri",{"_index":798,"t":{"89":{"position":[[527,3],[762,4],[967,5]]}}}],["url",{"_index":382,"t":{"63":{"position":[[3462,3],[4155,4],[4557,3],[5250,4]]},"115":{"position":[[568,3]]},"202":{"position":[[909,3]]}}}],["us",{"_index":10,"t":{"41":{"position":[[107,5]]},"47":{"position":[[341,3]]},"49":{"position":[[3,3],[999,4]]},"51":{"position":[[549,3]]},"53":{"position":[[355,3],[1797,3],[2775,5],[3100,4]]},"59":{"position":[[454,5],[787,5]]},"63":{"position":[[7,5],[2767,5],[3053,5],[5442,5],[5591,5]]},"65":{"position":[[1067,6]]},"67":{"position":[[686,3]]},"69":{"position":[[871,3]]},"71":{"position":[[1281,3]]},"73":{"position":[[952,3],[1073,3]]},"75":{"position":[[549,3]]},"77":{"position":[[647,5]]},"79":{"position":[[299,3]]},"81":{"position":[[1082,5],[1278,3]]},"83":{"position":[[663,5],[851,3]]},"85":{"position":[[535,4],[971,3],[1577,5],[1905,5],[2063,4]]},"89":{"position":[[108,4],[517,3],[752,3],[878,6],[908,4],[1471,4],[1814,4],[2297,5]]},"91":{"position":[[305,4],[444,4],[516,4],[1045,4],[1246,4]]},"95":{"position":[[820,4]]},"97":{"position":[[143,4],[688,4],[1095,4],[1223,4],[1278,4]]},"101":{"position":[[1057,3],[1501,4],[2303,4],[2475,4],[2674,4],[2822,4],[3045,5]]},"105":{"position":[[623,3],[760,4],[852,4]]},"109":{"position":[[631,3]]},"111":{"position":[[1117,3],[1291,3]]},"113":{"position":[[404,3],[1091,3],[3344,4],[3452,4]]},"115":{"position":[[233,3],[294,3],[512,4],[1945,3],[2370,3],[3179,5]]},"124":{"position":[[120,4],[233,4]]},"131":{"position":[[693,3],[794,3],[872,3],[1074,3]]},"135":{"position":[[336,3]]},"139":{"position":[[317,5],[382,5],[669,5]]},"141":{"position":[[231,5],[296,5]]},"145":{"position":[[6,3],[81,4]]},"152":{"position":[[343,3],[1354,4]]},"154":{"position":[[1539,5],[4747,5],[8700,5],[8727,5]]},"157":{"position":[[0,5]]},"159":{"position":[[0,5]]},"161":{"position":[[0,5]]},"171":{"position":[[0,5]]},"173":{"position":[[25,3]]},"175":{"position":[[31,3]]},"180":{"position":[[831,5],[1432,3],[1568,5]]},"182":{"position":[[275,3]]},"184":{"position":[[460,3]]},"188":{"position":[[329,4],[831,5]]},"194":{"position":[[25,3],[2216,3],[3612,3],[4212,5]]},"196":{"position":[[77,5]]},"200":{"position":[[60,5],[264,3],[830,4],[1216,4],[1278,5]]},"202":{"position":[[647,4]]},"204":{"position":[[313,4]]},"206":{"position":[[31,3],[105,3],[142,3],[222,3],[606,3],[1341,5],[1444,3],[1481,3],[1669,4],[1735,4]]},"212":{"position":[[622,3],[2585,3]]},"224":{"position":[[1714,4],[2131,4],[2630,3]]},"226":{"position":[[126,3],[180,3],[258,4],[320,4]]},"228":{"position":[[1603,5],[1943,3],[1986,4]]},"234":{"position":[[2923,4]]},"238":{"position":[[2292,3],[2980,3],[3008,5]]},"241":{"position":[[80,3],[1212,6],[1267,3]]},"250":{"position":[[763,4]]},"252":{"position":[[171,5]]},"256":{"position":[[160,5]]},"258":{"position":[[934,3]]},"260":{"position":[[2251,3]]},"262":{"position":[[15,3]]},"264":{"position":[[57,5]]},"266":{"position":[[88,3]]},"268":{"position":[[191,3],[635,3],[805,5],[1057,3]]},"270":{"position":[[82,3]]},"272":{"position":[[74,3]]},"274":{"position":[[1003,5]]}}}],["usag",{"_index":261,"t":{"57":{"position":[[342,5]]},"75":{"position":[[84,5]]},"77":{"position":[[689,5]]}}}],["use_local_uri",{"_index":793,"t":{"89":{"position":[[305,14],[491,14],[689,13],[823,13]]}}}],["user",{"_index":4,"t":{"41":{"position":[[35,5],[244,5]]},"53":{"position":[[489,4],[695,4],[1995,4],[2091,4],[2358,4],[2455,4],[3120,4]]},"57":{"position":[[108,4]]},"63":{"position":[[2122,4],[2244,4],[5399,5],[5497,4],[5646,4],[5703,4],[5722,4],[6076,6]]},"65":{"position":[[921,5],[1455,4]]},"75":{"position":[[124,6],[444,4]]},"77":{"position":[[405,4],[436,4],[729,6]]},"81":{"position":[[781,4]]},"83":{"position":[[497,4],[626,4],[837,4],[912,4]]},"89":{"position":[[1611,4]]},"91":{"position":[[83,4],[241,5],[870,5]]},"93":{"position":[[16,4]]},"95":{"position":[[213,4]]},"97":{"position":[[332,5]]},"99":{"position":[[90,4],[344,5],[480,5]]},"101":{"position":[[46,4],[114,4],[152,4],[316,5],[1587,4],[2933,4],[3032,4]]},"107":{"position":[[610,5],[839,5],[931,5],[1112,4]]},"111":{"position":[[451,4],[737,4]]},"113":{"position":[[778,5],[1376,4],[3054,4],[3174,5],[4301,4],[4462,4]]},"124":{"position":[[198,5],[427,5],[542,4],[801,4],[887,4]]},"126":{"position":[[72,5],[256,5],[654,4],[989,4],[1164,4],[1569,4],[1736,4],[1911,4],[1979,4],[2181,4],[2285,4],[2850,5]]},"128":{"position":[[722,6]]},"131":{"position":[[109,4],[398,5],[408,4],[972,4]]},"137":{"position":[[1559,4],[1636,4]]},"150":{"position":[[134,4],[192,4],[303,4],[401,4],[664,4]]},"152":{"position":[[1167,4]]},"154":{"position":[[936,4],[1111,4],[5880,4],[6055,4],[6112,4],[6205,4],[6530,5],[6896,4],[7292,4],[8122,4],[10253,4],[10812,4],[11291,4],[11548,4],[13046,4],[13303,4],[13360,4],[13529,4]]},"180":{"position":[[1574,4]]},"196":{"position":[[989,4]]},"208":{"position":[[492,4]]},"210":{"position":[[233,4],[662,7]]},"212":{"position":[[799,4]]},"222":{"position":[[2329,4],[2348,4],[2695,6]]},"228":{"position":[[140,4],[1463,6]]},"262":{"position":[[806,4],[1192,7],[1656,7]]},"266":{"position":[[73,6],[170,6]]}}}],["user'",{"_index":19,"t":{"41":{"position":[[213,6]]},"91":{"position":[[806,6]]},"107":{"position":[[442,6]]},"113":{"position":[[751,6],[3027,6]]}}}],["user_queri",{"_index":865,"t":{"99":{"position":[[315,11],[393,11],[449,10]]},"124":{"position":[[731,11]]},"126":{"position":[[528,11]]},"128":{"position":[[272,11]]},"262":{"position":[[337,10],[1023,13]]}}}],["usual",{"_index":582,"t":{"71":{"position":[[241,7]]},"97":{"position":[[1321,5]]}}}],["util",{"_index":1645,"t":{"230":{"position":[[135,7]]},"236":{"position":[[481,7]]}}}],["v1",{"_index":956,"t":{"109":{"position":[[449,2],[530,2],[551,2],[595,2]]}}}],["v2",{"_index":959,"t":{"109":{"position":[[503,2],[569,2]]},"115":{"position":[[1054,2]]}}}],["val=df",{"_index":1682,"t":{"234":{"position":[[1973,7]]},"236":{"position":[[864,7]]}}}],["val=result",{"_index":1585,"t":{"218":{"position":[[692,11]]}}}],["valid",{"_index":986,"t":{"111":{"position":[[1333,5]]},"238":{"position":[[1091,10]]}}}],["valu",{"_index":314,"t":{"61":{"position":[[98,5],[220,5]]},"79":{"position":[[138,5],[202,5]]},"101":{"position":[[2740,5]]},"105":{"position":[[77,5],[478,5],[704,5]]},"107":{"position":[[221,5],[302,5]]},"111":{"position":[[311,5],[391,5],[570,5],[688,5],[969,5],[1152,5]]},"115":{"position":[[225,7],[286,7],[340,6],[481,5]]},"137":{"position":[[1214,5]]},"154":{"position":[[77,5],[200,5],[747,5],[853,5],[1056,5],[1213,5],[1309,5],[1514,5],[4722,5],[5797,5],[6000,5],[6131,5],[6232,5],[6556,5],[6685,5],[6836,5],[6931,5],[7156,5],[7350,6],[7820,5],[8033,5],[10164,5],[11202,5],[11491,5],[11631,5],[11715,5],[11929,5],[12957,5],[13246,5],[13405,5],[13560,5]]},"200":{"position":[[1263,6]]},"234":{"position":[[737,5],[962,7]]},"238":{"position":[[195,5],[299,5],[367,5],[728,5],[842,5],[955,5],[1536,5],[1944,7],[3546,5]]},"241":{"position":[[613,5]]},"262":{"position":[[656,5]]}}}],["value'",{"_index":1693,"t":{"238":{"position":[[770,7]]}}}],["value1",{"_index":1704,"t":{"238":{"position":[[3284,6]]}}}],["value2",{"_index":1706,"t":{"238":{"position":[[3297,6]]}}}],["value_col_nam",{"_index":1155,"t":{"137":{"position":[[1313,15]]},"234":{"position":[[533,15],[901,15]]},"238":{"position":[[1846,14]]}}}],["value_col_name=\"v",{"_index":1654,"t":{"230":{"position":[[582,21]]}}}],["valueerror",{"_index":1470,"t":{"194":{"position":[[3786,11]]},"234":{"position":[[1368,11]]}}}],["valueerror(f\"api",{"_index":1462,"t":{"194":{"position":[[3151,16]]}}}],["var",{"_index":1295,"t":{"154":{"position":[[10402,3]]}}}],["vari",{"_index":1497,"t":{"200":{"position":[[569,4]]}}}],["varia",{"_index":1296,"t":{"154":{"position":[[10590,5],[12082,5]]}}}],["variabl",{"_index":218,"t":{"53":{"position":[[2640,12],[3041,10],[3056,9],[3289,9],[3365,9]]},"89":{"position":[[1174,10]]},"101":{"position":[[2531,10],[2583,10],[2601,10],[2616,9],[2701,10],[2722,8],[2805,9],[2959,9],[3063,9],[3347,10]]},"115":{"position":[[3426,10]]},"180":{"position":[[627,9],[939,10],[1088,9],[1644,8],[1863,9]]},"194":{"position":[[2257,9]]},"200":{"position":[[553,9]]},"218":{"position":[[884,9]]},"234":{"position":[[1983,8]]},"236":{"position":[[874,8]]}}}],["varianc",{"_index":1273,"t":{"154":{"position":[[7147,8],[7341,8],[7811,8],[7967,8],[8024,8],[8363,8],[10098,8],[10155,8],[10502,8],[10571,8],[10774,8],[10987,8],[11136,8],[11193,8],[11426,8],[11482,8],[11622,8],[11706,8],[11920,8],[12891,8],[12948,8],[13181,8],[13237,8],[13396,8],[13551,8]]}}}],["variance_count",{"_index":1302,"t":{"154":{"position":[[12047,14],[12096,14],[12133,14],[12530,14],[12567,14]]}}}],["varieti",{"_index":891,"t":{"101":{"position":[[1715,7]]},"228":{"position":[[207,7]]}}}],["variou",{"_index":857,"t":{"97":{"position":[[1109,7]]},"109":{"position":[[26,7]]},"137":{"position":[[203,7]]},"208":{"position":[[219,7],[501,7]]},"262":{"position":[[1320,7]]}}}],["vector",{"_index":148,"t":{"53":{"position":[[361,6]]},"59":{"position":[[355,7],[434,7],[764,6],[895,6],[920,7]]},"63":{"position":[[505,6]]}}}],["verbos",{"_index":564,"t":{"69":{"position":[[1260,10]]}}}],["veri",{"_index":893,"t":{"101":{"position":[[1923,4]]},"113":{"position":[[697,4]]}}}],["verif",{"_index":64,"t":{"47":{"position":[[350,12],[440,13]]},"49":{"position":[[12,13],[241,13],[285,12]]},"51":{"position":[[9,12]]},"63":{"position":[[3280,14]]},"107":{"position":[[1751,14]]},"115":{"position":[[1118,13]]},"128":{"position":[[875,12],[1651,12],[1739,12],[1940,12],[2144,12],[2226,12],[2302,12]]},"154":{"position":[[1715,14],[1760,12],[4983,14],[5028,12],[8979,14],[9024,12],[12152,14],[12197,12]]},"222":{"position":[[1121,14]]},"228":{"position":[[1111,12]]}}}],["verifi",{"_index":44,"t":{"47":{"position":[[29,6]]},"49":{"position":[[193,8]]},"128":{"position":[[2035,6],[2280,9]]},"228":{"position":[[1152,6]]}}}],["version",{"_index":533,"t":{"69":{"position":[[232,8]]},"73":{"position":[[831,7]]},"115":{"position":[[759,7],[3194,7]]},"178":{"position":[[497,8]]},"204":{"position":[[371,8]]},"254":{"position":[[135,9]]},"256":{"position":[[175,7]]},"268":{"position":[[14,8],[122,7],[310,7],[643,7]]},"274":{"position":[[602,7],[693,7]]}}}],["via",{"_index":1079,"t":{"115":{"position":[[3410,3]]},"202":{"position":[[554,3]]}}}],["view",{"_index":444,"t":{"65":{"position":[[576,5],[1434,5],[1667,5],[1714,5]]},"71":{"position":[[47,4],[87,7]]},"230":{"position":[[92,4]]}}}],["violat",{"_index":1116,"t":{"128":{"position":[[2114,8]]}}}],["visit",{"_index":1771,"t":{"268":{"position":[[1360,8]]},"272":{"position":[[553,8]]}}}],["visual",{"_index":603,"t":{"71":{"position":[[1296,9]]},"139":{"position":[[699,6]]}}}],["vllm",{"_index":982,"t":{"111":{"position":[[1018,4],[1096,5]]},"200":{"position":[[138,5]]}}}],["volum",{"_index":541,"t":{"69":{"position":[[363,8],[676,8]]},"71":{"position":[[1701,8],[1767,8]]}}}],["want",{"_index":43,"t":{"47":{"position":[[21,4]]},"51":{"position":[[181,4]]},"67":{"position":[[678,4]]},"71":{"position":[[1273,4]]},"73":{"position":[[86,4]]},"81":{"position":[[8,4]]},"85":{"position":[[39,4]]},"95":{"position":[[1222,4]]},"105":{"position":[[125,4]]},"111":{"position":[[1109,4],[1283,4]]},"113":{"position":[[4225,4]]},"137":{"position":[[1649,4]]},"175":{"position":[[23,4]]},"182":{"position":[[267,4]]},"188":{"position":[[321,4]]},"196":{"position":[[840,4]]},"204":{"position":[[305,4]]},"206":{"position":[[23,4],[97,4],[1436,4]]},"212":{"position":[[9,4]]},"218":{"position":[[528,4]]},"224":{"position":[[21,4],[108,4],[2385,4]]},"226":{"position":[[38,4]]},"241":{"position":[[1259,4],[1342,4]]},"262":{"position":[[7,4],[1559,4]]},"268":{"position":[[627,4],[1014,4]]},"274":{"position":[[199,4]]}}}],["warn",{"_index":693,"t":{"81":{"position":[[758,4]]},"274":{"position":[[0,7]]}}}],["way",{"_index":142,"t":{"53":{"position":[[229,3],[345,3],[740,3]]},"85":{"position":[[330,3]]},"97":{"position":[[1730,3],[1927,4]]},"135":{"position":[[303,3]]},"137":{"position":[[12,3],[594,3],[703,3]]},"143":{"position":[[87,3]]},"150":{"position":[[120,3]]},"152":{"position":[[1327,4]]},"218":{"position":[[747,3]]},"258":{"position":[[774,4]]}}}],["web",{"_index":707,"t":{"83":{"position":[[732,3]]},"139":{"position":[[392,3]]},"141":{"position":[[306,3]]},"258":{"position":[[861,3]]},"268":{"position":[[377,3],[1350,3],[1399,3]]},"274":{"position":[[30,3],[125,3],[216,3],[1013,3],[1055,3]]}}}],["websearch",{"_index":1761,"t":{"268":{"position":[[341,9],[660,9]]}}}],["websit",{"_index":479,"t":{"67":{"position":[[138,7]]},"266":{"position":[[151,8],[245,8]]}}}],["welcom",{"_index":1323,"t":{"173":{"position":[[3,7]]},"194":{"position":[[3,7]]}}}],["well",{"_index":652,"t":{"75":{"position":[[632,4]]},"212":{"position":[[2294,5]]},"258":{"position":[[275,5]]},"260":{"position":[[494,5]]}}}],["whatev",{"_index":1586,"t":{"218":{"position":[[936,8]]}}}],["whether",{"_index":313,"t":{"61":{"position":[[45,7]]},"89":{"position":[[506,7],[741,7]]},"91":{"position":[[479,7]]},"105":{"position":[[612,7]]},"111":{"position":[[247,7],[500,7],[894,7]]},"115":{"position":[[1095,7],[1855,7],[1934,7],[2173,7],[2282,7],[2359,7]]},"128":{"position":[[1962,7],[2379,7]]},"196":{"position":[[687,7]]},"200":{"position":[[1370,7]]},"238":{"position":[[117,7],[586,7]]}}}],["whole",{"_index":1565,"t":{"212":{"position":[[2045,5]]}}}],["whose",{"_index":1507,"t":{"200":{"position":[[1250,5]]}}}],["width",{"_index":217,"t":{"53":{"position":[[2593,6]]}}}],["window",{"_index":138,"t":{"53":{"position":[[183,6]]},"71":{"position":[[1258,7]]},"79":{"position":[[798,7]]},"81":{"position":[[1088,7]]},"85":{"position":[[2208,7],[2265,7]]},"147":{"position":[[94,7]]},"266":{"position":[[55,7]]},"270":{"position":[[298,7],[372,7]]},"272":{"position":[[290,7],[364,7]]}}}],["wish",{"_index":1688,"t":{"236":{"position":[[157,4]]}}}],["within",{"_index":755,"t":{"85":{"position":[[2254,6]]},"188":{"position":[[613,6]]},"212":{"position":[[2273,6]]},"230":{"position":[[254,6]]},"238":{"position":[[1110,6]]}}}],["without",{"_index":179,"t":{"53":{"position":[[1164,7]]},"79":{"position":[[257,7]]},"224":{"position":[[1654,8],[2158,7]]},"238":{"position":[[2234,7],[2864,7]]},"241":{"position":[[1393,7]]}}}],["word",{"_index":715,"t":{"85":{"position":[[140,6]]},"212":{"position":[[2832,6]]}}}],["work",{"_index":465,"t":{"65":{"position":[[1254,4]]},"95":{"position":[[877,7],[1059,7]]},"143":{"position":[[10,7]]},"196":{"position":[[627,5]]},"200":{"position":[[1314,5]]},"228":{"position":[[375,4]]},"250":{"position":[[820,7]]},"260":{"position":[[2159,7]]}}}],["worker",{"_index":931,"t":{"107":{"position":[[878,6],[1052,6],[1146,6]]}}}],["workflow",{"_index":266,"t":{"59":{"position":[[22,8]]},"228":{"position":[[280,8]]}}}],["workspac",{"_index":841,"t":{"95":{"position":[[98,9],[695,11],[946,9]]},"101":{"position":[[609,10],[620,10],[834,10],[849,10]]},"236":{"position":[[347,10]]},"250":{"position":[[213,10],[638,11]]}}}],["world",{"_index":505,"t":{"67":{"position":[[1258,5]]},"143":{"position":[[482,9]]},"184":{"position":[[687,7]]},"220":{"position":[[608,8]]}}}],["worth",{"_index":1211,"t":{"152":{"position":[[635,5]]}}}],["wrapper",{"_index":623,"t":{"73":{"position":[[477,7]]}}}],["write",{"_index":1361,"t":{"184":{"position":[[582,5]]}}}],["written",{"_index":1694,"t":{"238":{"position":[[1172,7]]}}}],["wrong",{"_index":1199,"t":{"150":{"position":[[262,6]]}}}],["ws",{"_index":1760,"t":{"268":{"position":[[301,3],[739,2]]}}}],["wsl",{"_index":1194,"t":{"147":{"position":[[115,4]]}}}],["wsl2",{"_index":1508,"t":{"202":{"position":[[282,4]]}}}],["x",{"_index":387,"t":{"63":{"position":[[3501,1],[3927,1],[4071,1],[4596,1],[5022,1],[5166,1],[5801,1],[5944,1],[6143,1],[6286,1],[6477,1],[6620,1]]},"154":{"position":[[9422,1],[9928,1]]},"234":{"position":[[1600,2],[1603,1],[1616,1]]}}}],["xbox",{"_index":358,"t":{"63":{"position":[[1841,4],[1914,4],[2039,4],[2083,4],[2205,4],[2311,4],[2380,4],[2436,4],[2756,4],[3164,4],[3489,4],[3639,4],[3794,4],[3915,4],[4584,4],[4734,4],[4889,4],[5010,4],[5431,4],[5580,4],[5755,4],[5789,4],[5841,4],[5879,4],[5932,4],[6097,4],[6131,4],[6183,4],[6221,4],[6274,4],[6431,4],[6465,4],[6517,4],[6555,4],[6608,4]]}}}],["xx.xx",{"_index":417,"t":{"63":{"position":[[4243,9],[5338,9]]}}}],["yaml",{"_index":1167,"t":{"139":{"position":[[270,4],[504,4],[592,4],[677,4],[732,4],[783,4],[858,4]]},"143":{"position":[[860,4],[991,4],[1164,4],[1309,4]]},"184":{"position":[[57,4],[101,4]]},"220":{"position":[[292,4]]},"232":{"position":[[115,4]]},"238":{"position":[[1183,4],[2909,4]]},"241":{"position":[[428,4]]}}}],["year:2020",{"_index":393,"t":{"63":{"position":[[3586,10],[4681,10]]}}}],["year:2023",{"_index":411,"t":{"63":{"position":[[4022,10],[5117,10]]}}}],["you'll",{"_index":1377,"t":{"188":{"position":[[720,6]]}}}],["your_api_key",{"_index":1368,"t":{"188":{"position":[[238,15],[916,12]]},"190":{"position":[[178,15]]},"192":{"position":[[433,15]]},"198":{"position":[[415,14]]},"204":{"position":[[192,15]]},"206":{"position":[[710,15],[921,15],[1071,15]]},"214":{"position":[[342,14]]},"254":{"position":[[66,15]]}}}],["your_function(self",{"_index":636,"t":{"73":{"position":[[1100,19]]}}}],["your_keywords_ai_api_key",{"_index":1482,"t":{"196":{"position":[[539,27]]}}}],["your_llm_model_nam",{"_index":1424,"t":{"194":{"position":[[1087,22]]}}}],["your_llm_nam",{"_index":1453,"t":{"194":{"position":[[2687,14],[3044,16],[3713,16]]}}}],["your_llm_name>.pi",{"_index":1403,"t":{"194":{"position":[[176,18]]}}}],["your_project_path",{"_index":1473,"t":{"194":{"position":[[4274,19]]}}}],["yourimplement",{"_index":1579,"t":{"218":{"position":[[471,20]]}}}],["yourllmservic",{"_index":1432,"t":{"194":{"position":[[1515,14],[2313,14],[2473,14],[2709,14]]}}}],["yourllmservice(completionservic",{"_index":1435,"t":{"194":{"position":[[1657,33]]}}}],["yourllmserviceconfig",{"_index":1411,"t":{"194":{"position":[[534,20],[1745,22]]}}}],["yourllmserviceconfig(llmserviceconfig",{"_index":1414,"t":{"194":{"position":[[751,39]]}}}],["zhipu",{"_index":1319,"t":{"169":{"position":[[39,5]]},"198":{"position":[[36,5]]}}}],["zhipuai",{"_index":968,"t":{"109":{"position":[[598,7]]},"169":{"position":[[72,7]]},"198":{"position":[[69,7],[207,7],[292,10],[389,10],[469,7]]},"245":{"position":[[67,7]]}}}]],"pipeline":["stemmer"]}}] \ No newline at end of file diff --git a/search/index.html b/search/index.html index 803cf36c..f611b2a7 100644 --- a/search/index.html +++ b/search/index.html @@ -5,7 +5,7 @@ Search the documentation - +