5rI=Az&92CkHl+w4R)K9o`Kt
zE;kza%=+B&(#S;=uxTT0SCrIg^vz6ms%G
z7xNv=A0C6q4z1m}o0F6%LW(GDAyQUMB=3YzPR_eRNg`UD4^j$E&M6u}5#@dBdAD5R
zA(hDKa7)N?Gv8O~Hp=J9Vy}UxfdYKISo#(xQK59!YJ9tN9q-RvNW|1~`9m<97YbYWj}55mjOl-`VZ%Y`_)4G-rD>aw!ZE`xgy;k^nWe9C|9!~0RISE&?9WkmwBMAHKPPx+=X3Bxeb+T1T|AZ%4^{fjQL3!^+
zFN24@oQ&IByMf4&9=7xhus?ML2IkUr4Xr)%wWEou$uufD{N)>Z>?X
zOokoK*C0mKD9^{rNEC;eLwECzx6I063+1|64xUU}Z#yM$Ccv4WseDhp_KZ?gW=eC2
zBrkN&sZeM>?9AT{o&$4hwT301^h&8`4+<$m09n^d05L4mp5rCYwN}!QlvN}KY;lC=
zWiI4ay&`gQLPTx)WLK3TwiHP_)ilbll~F7Y12(bwh8EE5j0#9;aLRjP^&5*okg~)1
z4b~lHo|3{SK#|_+0AW>qL-Fdl9f8_XXq{K6ZgU1xP__+YO~9e^^7NO>5bWKW2-#3U@=U?1ys
z!&7b+w*~hfF~OiDs!yWWJbhMgTUs<~otwxw!vR%s`9zc@9zHblv!%FwzegzL*Ujcl
zI$UIb?>fdPl|`!gGbeJg^shTfjh2xIEleXLqE;vu4{0Bsfx&M)RL?9)Nr6c=CL>Cj
zDXYvr4DZCH!;_G-D~o-!73y9c4wQ)iV@)f+F-W7dZnp>bz1hvLSU$PRlrLechaE=B
zePGA1=`_epiJE!XxS6UlkXG%4MWH$gH!LO+O{nmqbq
zbMxJ&Jz@1RcxmKU7Vs(EoM3x-umL&}#jN(Mp||GA79P^mM0
z7mD1hs_hz)-r}?v6lR)`;pc8t;ln$0gnRp1Fpo-?*u#KY3Ryt8#&*jD9{;^H?40x)
z9wjX{cYe~6#N#U`r2!@MJ0YoQIfYh?WVb0#@(A}nd%<^%H4|gjkSnA=!gA-=qTrkG
z4O@d}q`$DKTrygu#$73a+Y$?}&!Y@fZAK}uy_33!Q^vWR+@(!OOEFeHI0F_ow_<3?#cZa9)bP65AktVOFHfl~
zCRKCgoBEvvk;)QUP5$+XKYwW?8?XgMdUWTz^Dxtr#UE-<3dJLmJ)F*E*uZ^7Xd$NK
zBmsptQ-atJ(yz`_W;DmqN~n`Pt(p;&dU17>JH4nhUwc=aVN<
zVlM*dZ~%iV98uRN<|7@}+4Aq=yp5CYRz!z96Gx3uwO7Qz^Oiopn~rC_>bYk2?5@UF~rj3Z%`9j=DIRV18)D
zSxld|8J})y55f&A@0^E`5lKJ^W5sjx6-GH&zJeK9iO^`&{YvNa5~rd_h1yXfQpxdO
zU?xuGq{rdau@IoWE2JbpFB`ZO`_=HnjVG?K{ngi*i{g9GA<$$zeYT`+%P7w(+;(}Y
zc{I{kxavCwZ)c1|p-U?5^^@s1i;>pjK5r2gjj74$2n@(wV`rD`q|fXUsbEuL}YOsG1I+{b*;j46H@+MI394ReJfbM?}(Mek@o$P)&JCsLOQJyr9s79FfpFarPL7MY*u_SI
z006sn7u*dAUDWqt*sxW9>WmvBE+ay>taUdwdAI7u@6G$oo?J)8ZroD2M@b
zZ_7A*6ITFjrd4Mm3Yx&Db25!|^z@N$3RsUl7yM;i*xVd+EWd_0OI6mk-71qyWj+v_
zCjv_|9f1Uk!=PhN&H=g9vi`+SB$5Zw`_|_5TJcMs-ol8XI1m(vL+uu8l^#F)GtE~Y
zD;=v-z3Ep!^7XqT855vG9C1`BPKa6i_|C#w;T@}%j-r3!FW3I!1e#3d4_-~KEVclN
z$(UfGMvpnxFSUmeU&zN_l~wW!?wQ+uYl!3pBjxOoTyTgOenuR5B1sK4jc6U(A;5ol
zMQUcr?e<1H)AHXP6%|KP6t9}up#&T_d>VUinZ`x!HkD%XrNt6}YWkp7{qa;legvt?
z6-23S;k_!*@@o-$n;#47(_EnKp-d#`xVH5UPTHW7i*=0z`s7rV4Ail}3hVS{R4OkjR&j6YAyHh&
zjfW(dv%Z|D38&J_voK+ni!zZ47qfS}1C?6Bo{CR{sA5)BLCgI@HbTQ{Mex~RmdkiX
z!B*pHO!-)!m2H)ZI4^_|?&T-U
z^KnJrG(iz8-?WIg+tvm}l`|D1BNda{>c97G?1Gu6;{?*M$^8O*QRy&F4s6GUP)#XS
zKf@48G7vSaeU7Ps%KQ0C%Xj{3&nawTS(2nIzH*UIO?d*k+25GxZfM(~jJ$tJ5N`2p
z3Zf1)?o(N_=DHrzt1n{$>y=?`QKi0RtA=enI~_-sJqTwOl~t$=lS(jmf@|a@wl1zX
z4BkHgesptJ-o5_9sj-0$n0jKBEhT_Tu<^r}@XM@$cMcN2d6%ABG&dPgK
zqvnyYnyK*Wzww5lc08~i})IVUM{T_{~ia)JX
z!;gfq?0EP=FkuL{f12eHhUTDsY>&AfWyGX>+~G?+&)*Gh^b~k4jDT2fhfPLCVAhhyVgYQk
zrP3+3I&q)%i1&G}G^);wf%kZ+6DK*hK-JzEM3lYuwt8Dwb9J
zTWn+4`dXu`o_>#?=vpYswqfbnHQ+pJ0haxhPkd4tBOWahy*)q(vj(T8@x1n1QFOcz
ze~}JwMxhH<^$fF!<`68pd*DwCO`d~NV%}faBWVMyYIm}5=j-42z;z71opTWPF6pUI
zqY*1Kgu?dfrKu2ICx>QQM2m&!bRxy`+WPpx1E5|2o@mi4R2NRoC*SznK5Mxs&G!Eo
z!keoG!pKwO(LK2&KOHjxi?&;;LTZ!0#fmWCel8bHLq{IXV4?$pYW2;pTjt}a%pp)|
z*M3nhj~VqAVAIDV(Dx>t@Iq?d|1_*12C_B9e^YIpj>o+{Bi07^uWi~CucYt
z`s6yk8@Sv`Z5Tw6a7DM+uFKww?W;E4*@1U}6N4&9ayA6gYOczY)7NCN_
z9&c#ndwH`9QE=;R!;r?Ux3jw6r&8C1R-PO18ZF~5oMF`AM6ESWaIJwF%Df8(95;Zq
zEb|DczsuH4wAgC{9
zd#%8sNA?JLmq)hfPHMLb_E;FksYOdPw?LQZSb}x2u;Roj7WOzz2Vu;K?QAoVYT7D5
zg^W8$R8U0Y2~maTWt@ZJrKb@SxhSF+Y~(4OOnm`p-gHtFnuDlnC*vcG4{vMZG_S
z+OL4n$0}KLx=?omd?@rqw0Dzp>7wm5Vc;r3K=yG
za01RnV^Kd>SE%l{$4nHV#vw1NSEz~SA8xQ&K#~}|{nN@fI$pDt+V||D;na#(82hui
zwNY$m+&17QrW`GY52jz|^54IXSw$-zytcFqP@=Ae$ogy5IZe)Q
zpY_DZ$kSq9IrZ})j(Y*TT3r;1C$5x?UdQ_h2IZBP=i$p9H$YW!Bv2VW)>&3p=n2*(
z`Y-dw8ee(8(XaTT
zJ#_c^O6vKd1`(l5gsN1i;f(rp>cXJLZk*aD;9lkGTy(3Q8nl_328x07Y9|Yta}{YK
zYEW532t^Ywoa3+a-Y|WcmoNhUqDj^v`3QLK>NZXW%uL2isnA}bp245NtzD*CNDQK_
zojoJ*$r-kH&I#GpAV7PAf^$E29}L|a7-i8urE9bo59IoTuw0IZd!t~)p-;M)EB)0~
z^acQRFbY_V)GwLziPSkU!PfKDDE1n}6idZt*13#V+a;P0Y;8Ey0ZCm`mMKWBHmu^r
z)j+0{FB-O(QL6;3OivVDPeLDvWi;m`xN?dZbMzk9l#iU4*SgYDc^kjb
z@V@!o{@aXfvvOnNENZD-Ld_y(;F<4iEs~^)dC0ywoEnF)X8GByg?@moZ?CZXNIYg*
zMPAP=bHt-^jQ9tsK@sMZ{>DfHG9j{MTfG&%f_V2?iNb`T4dGU?2iSV@1DjZrrRA2t
zpHRNF^HLx)39i3O0kzk_hp9Py!<$&te{BgKlN^<^>vO2z%YaFn*8wpTwa*+4rqx02
zq|YE)@2XNE9T_jt{m6qyZ4(Si?@fl_HYIUJv(gG#J!STyiWpv?mNnO>1M!4;;$l0Q
z6q3a%T%m}->xw;_ExOt`b-_S~6HPF^x(W8CHo5*#c@bG$_M&%vPuYnNz0{BZGw0VrwP6jzmHn>M$II8BHJ1
z8)lC2QQnMiZgb7a#PWBqhcKc55_7|@8=cLqyB-CSdrr;{C*EPDAMO)Ag9UycKEhV@
zJS@nA4$YmB8iIg47+mGIf&WZ!RYZ3ZA;!sD5&JHSW<>G>*>Wc|6UBh~JC*qGD!jFM
zjR-)9;qrLT&)=!BY#EXT{4pRH6PaTr|v59+RyVp`5c1
zG1G5GKzQ3jpTS{Iyzowd6q6u5kflxo&1lxGJz_X{$NZ}QM54$w7(B2JcC)N_kHjEIEp{SeQK(;=
z-I(ZVa~#rJhBE%GG;V8YMG{e~V6F!^f6vUyHB6Aa^dVd8cNI
z+zoi1E4!=6BKCXPGd|Ro)f_ej(
zNRiuIGS^lS54NnRhzENmzP5{?Z?P?<&+&yRndLn^vWHitd8UgC=Bz5%?R4j1Y;zjNkx#?9Ff>)QeaiOfH$NAuZ_-~*#3!7T$F@9xdik@4WJ$hjZbxu
zxW73fZ&hKaiVpc9(QqIVP8C1WlUnhHG^y%U+mvLsD-yq6D`YKC&RVww^jr3LM@xCU
zuM@{#-&`PXwWVgvk4}vC!-S#ms4*NJHsCiY^K7E1RLBzHj@2f!6ac_`n)w;1h7Z>6OpJ9hVAH%4H@B79c!0>xAUN1N%eiHO7sMW2LeM6
z3-L@kt-2MZ(rS-|t;Slj1VPna=Q15*oa2K2nr_otNr~P@c4+zd@7guT7#_oj9Mi9m
z-{A(wE&2x?ve6;diO?T+J4-UG{o#tg)={3ZxCgR)BKRDzcp;t48WFsFx3gSJdO4#(
z1iu0%e@VYO@h`Ziz?HS)Y7snnw{yj^bWh^VVq5&;&*yC?>8nJr7AS(X8pWqXFcsY7
zq)M6WXsD%{lq_M!K}x)#bJat9x+QF|#Vi*9u8bdP!ID%hf)PMnTVwaa5NYnv_9
zi?E@KvslJZkGs+*8nDnJ|79S)}Yd=xnlD<3B(lsaMt)8+W&sJDM
zR(Jn!WGGmla$-Ww<4daZUbdm^QW_2ihm7vU+qiBYFar?Ev@$=Ah%3F>h^ivL!mI7WA5N!aCoS&JGp9wDghwi
z^9B-E*9uzRH@iTFKCA?bOyaiz-e2%aY(FgGNFxAj7J&Jm0{$ji{pd@{RoGaTX~*ue
z0h^Nj81QL$QAc18cNvZWGk$XDIM21i<(9hT6QETISe}AY6r4{Aq(~78MBf6#mRYci{HQ07s$T=WU`eCEYB}TT0
zJji+=OfdjE2VQ0XYv1o<0M_o~?9xtW+sUvQ-D|#nyzF4Z)?VJjc&vp(?2>gz2mUni
zLI-kfU>s{t?q)#Nia~bC+B?9o*8b~EjCZ09(=2A~r!humZ4@KZ3uR$gYkTxCENg^r
z2C!SUau*x5x_v*R*`{e-USii0y^JuhwRgH0fVprl14x!RqU0Lqn%}#Jzl_A3Kfy>=
zlMln_a~|ZfX!U|Z$_R{SweF-#R6NMS8l3Gy9}?7*xE?`Ipr+XO16J@)h|T`I+gugJuXSgB~qS+@3?(sz7dW!V_tQD`Z
zi%KT)#zti@t_ykL(IZNtq9I-f*@l0TCh;9)?2H&**Q2Z%y
zoo{?7nbHOOgWE|ZA 0]
-print("\nRows where column A is greater than 0:")
-pint(filtered_df)
-
-
-''',"Use pandas to operate on random arrays", '''
-Traceback (most recent call last):
- File "/home/heroding/桌面/Jarvis/working_dir/test.py", line 18, in
+ # 筛选出A列值大于0的行
+ filtered_df = df[df['A'] > 0]
+ print("\nRows where column A is greater than 0:")
pint(filtered_df)
- ^^^^
-NameError: name 'pint' is not defined. Did you mean: 'print'?
-''', "/home/heroding/桌面/Jarvis/tasks/travel/run_task", "cache general.py __pycache__ run.py serve.py simulator.py")
+
+
+ ''',"Use pandas to operate on random arrays", '''
+ Traceback (most recent call last):
+ File "/home/heroding/桌面/Jarvis/working_dir/test.py", line 18, in
+ pint(filtered_df)
+ ^^^^
+ NameError: name 'pint' is not defined. Did you mean: 'print'?
+ ''', "/home/heroding/桌面/Jarvis/tasks/travel/run_task", "cache general.py __pycache__ run.py serve.py simulator.py")
diff --git a/jarvis/agent/prompt.py b/jarvis/agent/prompt.py
index b536e22..dc52ffb 100644
--- a/jarvis/agent/prompt.py
+++ b/jarvis/agent/prompt.py
@@ -157,8 +157,9 @@ prompt = {
''',
'_LINUX_USER_TASK_DECOMPOSE_PROMPT' : '''
User's information are as follows:
- Task: {task}
System Version: {system_version}
+ Task: {task}
+ Action List: {action_list}
''',
},
diff --git a/jarvis/core/action_manager.py b/jarvis/core/action_manager.py
index 31bee2b..8f72823 100644
--- a/jarvis/core/action_manager.py
+++ b/jarvis/core/action_manager.py
@@ -47,7 +47,7 @@ class ActionManager:
@property
def programs(self):
programs = ""
- for action_name, entry in self.actions.items():
+ for _, entry in self.actions.items():
programs += f"{entry['code']}\n\n"
return programs
@@ -155,29 +155,32 @@ class ActionManager:
f"\033[33m delete {action} args description txt successfully! \033[0m"
)
-# demo
-# actionManager = ActionManager(config_path="../../examples/config.json", action_lib_dir="../action_lib", retrieval_top_k=1)
-# sys.path.append('../action_lib/code')
-# # 添加所有任务代码
-# files = glob.glob("../action_lib/code" + "/*.py")
-# for file in files:
-# if file.endswith('.py') and "__init__" not in file:
-# class_name = file[:-3].split('/')[-1] # 去除.py后缀,获取类名
-# print(f"当前类:{class_name}")
-# module = importlib.import_module(class_name)
-# # get origin code
-# source_code = inspect.getsource(module)
-# # get class object
-# tmp_obj = getattr(module, class_name)()
-# # 报错到向量数据库和字典
-# actionManager.add_new_action({
-# "task_name": class_name,
-# "code": source_code,
-# "description": tmp_obj.description
-# })
-# # 检索
-# res = actionManager.retrieve_actions("give me a picture from web")
-# print(res[0])
-# 删除
-# actionManager.delete_action("retrieve_document")
\ No newline at end of file
+if __name__ == '__main__':
+ actionManager = ActionManager(config_path="../../examples/config.json", action_lib_dir="../action_lib", retrieval_top_k=1)
+ # action_list = json.dumps(actionManager.descriptions)
+ # print(action_list)
+ # sys.path.append('../action_lib/code')
+ # # 添加所有任务代码
+ # files = glob.glob("../action_lib/code" + "/*.py")
+ # for file in files:
+ # if file.endswith('.py') and "__init__" not in file:
+ # class_name = file[:-3].split('/')[-1] # 去除.py后缀,获取类名
+ # print(f"当前类:{class_name}")
+ # module = importlib.import_module(class_name)
+ # # get origin code
+ # source_code = inspect.getsource(module)
+ # # get class object
+ # tmp_obj = getattr(module, class_name)()
+ # # 报错到向量数据库和字典
+ # actionManager.add_new_action({
+ # "task_name": class_name,
+ # "code": source_code,
+ # "description": tmp_obj.description
+ # })
+ # # 检索
+ # res = actionManager.retrieve_actions("give me a picture from web")
+ # print(res[0])
+
+ # 删除
+ actionManager.delete_action("retrieve_document")
\ No newline at end of file
diff --git a/working_dir/agent.txt b/working_dir/agent.txt
new file mode 100644
index 0000000..90e2e45
--- /dev/null
+++ b/working_dir/agent.txt
@@ -0,0 +1,4 @@
+/home/heroding/桌面/Jarvis/working_dir/document/4.txt
+/home/heroding/桌面/Jarvis/working_dir/document/3.txt
+/home/heroding/桌面/Jarvis/working_dir/document/1.txt
+/home/heroding/桌面/Jarvis/working_dir/document/2.txt
diff --git a/jarvis/action_lib/code/check_weather.py b/working_dir/code/check_weather.py
similarity index 100%
rename from jarvis/action_lib/code/check_weather.py
rename to working_dir/code/check_weather.py
diff --git a/jarvis/action_lib/code/python_interpreter.py b/working_dir/code/python_interpreter.py
similarity index 100%
rename from jarvis/action_lib/code/python_interpreter.py
rename to working_dir/code/python_interpreter.py