annotate 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
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
1 <tool id="interactive_tool_chat_analysis" tool_type="interactive" name="Chat with your data" version="0.1">
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
2 <requirements>
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
3 <container type="docker">
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
4 quay.io/goeckslab/chatanalysis:main
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
5 </container>
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
6 </requirements>
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
7 <entry_points>
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
8 <entry_point name="Chat with $input_dataset.element_identifier" requires_domain="True">
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
9 <port>
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
10 8501
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
11 </port>
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
12 <url>
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
13 /
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
14 </url>
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
15 </entry_point>
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
16 </entry_points>
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
17 <command>
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
18 <![CDATA[
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
19 echo "Starting Streamlit" &&
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
20 echo "Script executed from: `pwd`" &&
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
21 mkdir -p plots &&
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
22 ln -sf $__tool_directory__/.env /ChatAnalysis/.env &&
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
23 streamlit run /ChatAnalysis/chat_analysis.py
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
24 $openai_api_key_file
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
25 $groq_api_key_file
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
26 $chat_history
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
27 $export_csv
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
28 "`pwd`/plots"
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
29 $input_dataset
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
30 ]]>
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
31 </command>
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
32 <configfiles>
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
33 <configfile name="openai_api_key_file"><![CDATA[
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
34 $__user__.extra_preferences.get('chatgpt|api_key')
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
35 ]]></configfile>
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
36 <configfile name="groq_api_key_file"><![CDATA[
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
37 $__user__.extra_preferences.get('groq|api_key')
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
38 ]]>
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
39 </configfile>
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
40 </configfiles>
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
41 <stdio>
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
42 <exit_code range="0:0" level="log"/>
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
43 </stdio>
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
44 <inputs>
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
45 <param name="input_dataset" type="data" format="csv,tabular" label="Data(csv or tsv) you want to chat with" optional="false"/>
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
46 </inputs>
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
47 <outputs>
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
48 <data name="chat_history" format="html" label="${tool.name} -- chat history html on ${on_string}"/>
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
49 <data name="export_csv" format="csv" label="${tool.name} -- the exported csv you selected on ${on_string}"/>
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
50 <collection name="chat_plots" type="list" label="${tool.name} -- the generated plots on ${on_string}" >
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
51 <discover_datasets pattern="(?P&lt;designation&gt;.+)\.png" format="png" directory="plots" />
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
52 </collection>
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
53 </outputs>
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
54 <tests>
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
55 <test expect_num_outputs="2">
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
56 <param name="input_dataset" value="test.csv"/>
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
57 <output name="chat_history" file="chat_history.html" compare="sim_size" />
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
58 <output name="export_csv" file="exported.csv" compare="sim_size" />
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
59 </test>
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
60 </tests>
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
61 <help>
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
62 Analyze and visualize a dataset with a Chat Agent.
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
63
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
64 Start a ChatAnalysis instance after selecting a dataset — we provide free access to some LLMs.
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
65
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
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.
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
67
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
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.
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
69
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
70 Similarly, to set the Groq API key beforehand, navigate to **User → Preferences → Manage Information → Groq → API Key**.
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
71
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
72 Alternatively, you can set the API key directly in the ChatAnalysis instance after it has started.
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
73 </help>
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
74 </tool>
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
75
be4bfd3e9342 planemo upload for repository https://github.com/goeckslab/ChatAnalysis commit 2d72b2974a22a70ca07ed81baaa01e9ade8c1acc
goeckslab
parents:
diff changeset
76