comparison chat_analysis.xml @ 0:be4bfd3e9342 draft

planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
author goeckslab
date Tue, 05 Nov 2024 02:40:12 +0000
parents
children 7b33a7a006c7
comparison
equal deleted inserted replaced
-1:000000000000 0:be4bfd3e9342
1 <tool id="interactive_tool_chat_analysis" tool_type="interactive" name="Chat with your data" version="0.1">
2 <requirements>
3 <container type="docker">
4 quay.io/goeckslab/chatanalysis:main
5 </container>
6 </requirements>
7 <entry_points>
8 <entry_point name="Chat with $input_dataset.element_identifier" requires_domain="True">
9 <port>
10 8501
11 </port>
12 <url>
13 /
14 </url>
15 </entry_point>
16 </entry_points>
17 <command>
18 <![CDATA[
19 echo "Starting Streamlit" &&
20 echo "Script executed from: `pwd`" &&
21 mkdir -p plots &&
22 ln -sf $__tool_directory__/.env /ChatAnalysis/.env &&
23 streamlit run /ChatAnalysis/chat_analysis.py
24 $openai_api_key_file
25 $groq_api_key_file
26 $chat_history
27 $export_csv
28 "`pwd`/plots"
29 $input_dataset
30 ]]>
31 </command>
32 <configfiles>
33 <configfile name="openai_api_key_file"><![CDATA[
34 $__user__.extra_preferences.get('chatgpt|api_key')
35 ]]></configfile>
36 <configfile name="groq_api_key_file"><![CDATA[
37 $__user__.extra_preferences.get('groq|api_key')
38 ]]>
39 </configfile>
40 </configfiles>
41 <stdio>
42 <exit_code range="0:0" level="log"/>
43 </stdio>
44 <inputs>
45 <param name="input_dataset" type="data" format="csv,tabular" label="Data(csv or tsv) you want to chat with" optional="false"/>
46 </inputs>
47 <outputs>
48 <data name="chat_history" format="html" label="${tool.name} -- chat history html on ${on_string}"/>
49 <data name="export_csv" format="csv" label="${tool.name} -- the exported csv you selected on ${on_string}"/>
50 <collection name="chat_plots" type="list" label="${tool.name} -- the generated plots on ${on_string}" >
51 <discover_datasets pattern="(?P&lt;designation&gt;.+)\.png" format="png" directory="plots" />
52 </collection>
53 </outputs>
54 <tests>
55 <test expect_num_outputs="2">
56 <param name="input_dataset" value="test.csv"/>
57 <output name="chat_history" file="chat_history.html" compare="sim_size" />
58 <output name="export_csv" file="exported.csv" compare="sim_size" />
59 </test>
60 </tests>
61 <help>
62 Analyze and visualize a dataset with a Chat Agent.
63
64 Start a ChatAnalysis instance after selecting a dataset — we provide free access to some LLMs.
65
66 You are encouraged to use your own API keys, as the provided free access has limits. You can obtain a **free API key** for BambooLLM by signing up at https://pandas-ai.com and a **free API key** for Groq by signing up at https://groq.com.
67
68 If you wish to set the OpenAI API key beforehand, go to **User → Preferences → Manage Information → ChatGPT → OpenAI API Key**. This way, you won’t need to set the OpenAI API key each time you use the app.
69
70 Similarly, to set the Groq API key beforehand, navigate to **User → Preferences → Manage Information → Groq → API Key**.
71
72 Alternatively, you can set the API key directly in the ChatAnalysis instance after it has started.
73 </help>
74 </tool>
75
76