Skip to content

Commit 684905c

Browse files
committed
create toolbox packaging infrastructure
1 parent 6f5636a commit 684905c

File tree

4 files changed

+321
-1
lines changed

4 files changed

+321
-1
lines changed

.gitignore

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,14 @@
11
*.env
22
*.asv
3+
*.mltbx
34
*.mat
45
!tests/recordings/*.mat
56
startup.m
67
papers_to_read.csv
78
data/*
89
examples/data/*
9-
examples/mlx-scripts/data/*
10+
toolbox/examples/data/*
11+
toolbox/examples/html/*
1012
._*
1113
.nfs*
1214
.DS_Store

images/toolboxPackaging.png

10 KB
Loading

toolbox/demos.xml

Lines changed: 95 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,95 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<demos><!--This is an autogenerated file, please do not modify-->
3+
<name>LLMs with MATLAB®</name>
4+
<type>toolbox</type>
5+
<icon>HelpIcon.DEMOS</icon>
6+
<website/>
7+
<description>Connect MATLAB® to the OpenAI® Chat Completions API (which powers ChatGPT™), OpenAI Images API (which powers DALL·E™), Azure® OpenAI Service, and both local and nonlocal Ollama™ models.</description>
8+
<demosection>
9+
<label>examples</label>
10+
<demoitem>
11+
<label>AnalyzeScientificPapersUsingFunctionCalls</label>
12+
<type>other</type>
13+
<source>AnalyzeScientificPapersUsingFunctionCalls</source>
14+
<file>examples/html/AnalyzeScientificPapersUsingFunctionCalls.html</file>
15+
</demoitem>
16+
<demoitem>
17+
<label>AnalyzeSentimentinTextUsingChatGPTinJSONMode</label>
18+
<type>other</type>
19+
<source>AnalyzeSentimentinTextUsingChatGPTinJSONMode</source>
20+
<file>examples/html/AnalyzeSentimentinTextUsingChatGPTinJSONMode.html</file>
21+
</demoitem>
22+
<demoitem>
23+
<label>AnalyzeTextDataUsingParallelFunctionCallwithChatGPT</label>
24+
<type>other</type>
25+
<source>AnalyzeTextDataUsingParallelFunctionCallwithChatGPT</source>
26+
<file>examples/html/AnalyzeTextDataUsingParallelFunctionCallwithChatGPT.html</file>
27+
</demoitem>
28+
<demoitem>
29+
<label>CreateSimpleChatBot</label>
30+
<type>other</type>
31+
<source>CreateSimpleChatBot</source>
32+
<file>examples/html/CreateSimpleChatBot.html</file>
33+
</demoitem>
34+
<demoitem>
35+
<label>CreateSimpleOllamaChatBot</label>
36+
<type>other</type>
37+
<source>CreateSimpleOllamaChatBot</source>
38+
<file>examples/html/CreateSimpleOllamaChatBot.html</file>
39+
</demoitem>
40+
<demoitem>
41+
<label>DescribeImagesUsingChatGPT</label>
42+
<type>other</type>
43+
<source>DescribeImagesUsingChatGPT</source>
44+
<file>examples/html/DescribeImagesUsingChatGPT.html</file>
45+
</demoitem>
46+
<demoitem>
47+
<label>InformationRetrievalUsingOpenAIDocumentEmbedding</label>
48+
<type>other</type>
49+
<source>InformationRetrievalUsingOpenAIDocumentEmbedding</source>
50+
<file>examples/html/InformationRetrievalUsingOpenAIDocumentEmbedding.html</file>
51+
</demoitem>
52+
<demoitem>
53+
<label>ProcessGeneratedTextInRealTimeByUsingOllamaInStreamingMode</label>
54+
<type>other</type>
55+
<source>ProcessGeneratedTextInRealTimeByUsingOllamaInStreamingMode</source>
56+
<file>examples/html/ProcessGeneratedTextInRealTimeByUsingOllamaInStreamingMode.html</file>
57+
</demoitem>
58+
<demoitem>
59+
<label>ProcessGeneratedTextinRealTimebyUsingChatGPTinStreamingMode</label>
60+
<type>other</type>
61+
<source>ProcessGeneratedTextinRealTimebyUsingChatGPTinStreamingMode</source>
62+
<file>examples/html/ProcessGeneratedTextinRealTimebyUsingChatGPTinStreamingMode.html</file>
63+
</demoitem>
64+
<demoitem>
65+
<label>RetrievalAugmentedGenerationUsingChatGPTandMATLAB</label>
66+
<type>other</type>
67+
<source>RetrievalAugmentedGenerationUsingChatGPTandMATLAB</source>
68+
<file>examples/html/RetrievalAugmentedGenerationUsingChatGPTandMATLAB.html</file>
69+
</demoitem>
70+
<demoitem>
71+
<label>RetrievalAugmentedGenerationUsingOllamaAndMATLAB</label>
72+
<type>other</type>
73+
<source>RetrievalAugmentedGenerationUsingOllamaAndMATLAB</source>
74+
<file>examples/html/RetrievalAugmentedGenerationUsingOllamaAndMATLAB.html</file>
75+
</demoitem>
76+
<demoitem>
77+
<label>SummarizeLargeDocumentsUsingChatGPTandMATLAB</label>
78+
<type>other</type>
79+
<source>SummarizeLargeDocumentsUsingChatGPTandMATLAB</source>
80+
<file>examples/html/SummarizeLargeDocumentsUsingChatGPTandMATLAB.html</file>
81+
</demoitem>
82+
<demoitem>
83+
<label>UsingDALLEToEditImages</label>
84+
<type>other</type>
85+
<source>UsingDALLEToEditImages</source>
86+
<file>examples/html/UsingDALLEToEditImages.html</file>
87+
</demoitem>
88+
<demoitem>
89+
<label>UsingDALLEToGenerateImages</label>
90+
<type>other</type>
91+
<source>UsingDALLEToGenerateImages</source>
92+
<file>examples/html/UsingDALLEToGenerateImages.html</file>
93+
</demoitem>
94+
</demosection>
95+
</demos>

toolboxPackaging.prj

Lines changed: 223 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,223 @@
1+
<deployment-project plugin="plugin.toolbox" plugin-version="1.0">
2+
<configuration file="/System/Volumes/Data/mathworks/devel/sandbox/ccreutzi/llms-with-matlab/toolboxPackaging.prj" location="/System/Volumes/Data/mathworks/devel/sandbox/ccreutzi/llms-with-matlab" name="toolboxPackaging" target="target.toolbox" target-name="Package Toolbox">
3+
<param.appname>LLMs with MATLAB®</param.appname>
4+
<param.authnamewatermark>MathWorks Text Analytics Toolbox Team</param.authnamewatermark>
5+
<param.email />
6+
<param.company>The MathWorks, Inc.</param.company>
7+
<param.summary>Large Language Models (LLMs) with MATLAB</param.summary>
8+
<param.description>Connect MATLAB® to the OpenAI® Chat Completions API (which powers ChatGPT™), OpenAI Images API (which powers DALL·E™), Azure® OpenAI Service, and both local and nonlocal Ollama™ models.</param.description>
9+
<param.screenshot>${PROJECT_ROOT}/images/toolboxPackaging.png</param.screenshot>
10+
<param.version>3.3.0</param.version>
11+
<param.output>${PROJECT_ROOT}/LLMs with MATLAB®.mltbx</param.output>
12+
<param.products.name />
13+
<param.products.id />
14+
<param.products.version />
15+
<param.platforms />
16+
<param.guid>e1d578f3-4375-4f36-9e04-62c18dbd533f</param.guid>
17+
<param.exclude.filters />
18+
<param.exclude.pcodedmfiles>true</param.exclude.pcodedmfiles>
19+
<param.examples>&lt;?xml version="1.0" encoding="utf-8"?&gt;
20+
&lt;examples&gt;
21+
&lt;exampleCategory name="examples"&gt;
22+
&lt;example name="AnalyzeScientificPapersUsingFunctionCalls" type="html"&gt;
23+
&lt;file type="source"&gt;/examples/html/AnalyzeScientificPapersUsingFunctionCalls.html&lt;/file&gt;
24+
&lt;file type="main"&gt;/examples/AnalyzeScientificPapersUsingFunctionCalls.mlx&lt;/file&gt;
25+
&lt;file type="thumbnail"/&gt;
26+
&lt;/example&gt;
27+
&lt;example name="AnalyzeSentimentinTextUsingChatGPTinJSONMode" type="html"&gt;
28+
&lt;file type="source"&gt;/examples/html/AnalyzeSentimentinTextUsingChatGPTinJSONMode.html&lt;/file&gt;
29+
&lt;file type="main"&gt;/examples/AnalyzeSentimentinTextUsingChatGPTinJSONMode.mlx&lt;/file&gt;
30+
&lt;file type="thumbnail"/&gt;
31+
&lt;/example&gt;
32+
&lt;example name="AnalyzeTextDataUsingParallelFunctionCallwithChatGPT" type="html"&gt;
33+
&lt;file type="source"&gt;/examples/html/AnalyzeTextDataUsingParallelFunctionCallwithChatGPT.html&lt;/file&gt;
34+
&lt;file type="main"&gt;/examples/AnalyzeTextDataUsingParallelFunctionCallwithChatGPT.mlx&lt;/file&gt;
35+
&lt;file type="thumbnail"/&gt;
36+
&lt;/example&gt;
37+
&lt;example name="CreateSimpleChatBot" type="html"&gt;
38+
&lt;file type="source"&gt;/examples/html/CreateSimpleChatBot.html&lt;/file&gt;
39+
&lt;file type="main"&gt;/examples/CreateSimpleChatBot.mlx&lt;/file&gt;
40+
&lt;file type="thumbnail"/&gt;
41+
&lt;/example&gt;
42+
&lt;example name="CreateSimpleOllamaChatBot" type="html"&gt;
43+
&lt;file type="source"&gt;/examples/html/CreateSimpleOllamaChatBot.html&lt;/file&gt;
44+
&lt;file type="main"&gt;/examples/CreateSimpleOllamaChatBot.mlx&lt;/file&gt;
45+
&lt;file type="thumbnail"/&gt;
46+
&lt;/example&gt;
47+
&lt;example name="DescribeImagesUsingChatGPT" type="html"&gt;
48+
&lt;file type="source"&gt;/examples/html/DescribeImagesUsingChatGPT.html&lt;/file&gt;
49+
&lt;file type="main"&gt;/examples/DescribeImagesUsingChatGPT.mlx&lt;/file&gt;
50+
&lt;file type="thumbnail"/&gt;
51+
&lt;/example&gt;
52+
&lt;example name="InformationRetrievalUsingOpenAIDocumentEmbedding" type="html"&gt;
53+
&lt;file type="source"&gt;/examples/html/InformationRetrievalUsingOpenAIDocumentEmbedding.html&lt;/file&gt;
54+
&lt;file type="main"&gt;/examples/InformationRetrievalUsingOpenAIDocumentEmbedding.mlx&lt;/file&gt;
55+
&lt;file type="thumbnail"/&gt;
56+
&lt;/example&gt;
57+
&lt;example name="ProcessGeneratedTextInRealTimeByUsingOllamaInStreamingMode" type="html"&gt;
58+
&lt;file type="source"&gt;/examples/html/ProcessGeneratedTextInRealTimeByUsingOllamaInStreamingMode.html&lt;/file&gt;
59+
&lt;file type="main"&gt;/examples/ProcessGeneratedTextInRealTimeByUsingOllamaInStreamingMode.mlx&lt;/file&gt;
60+
&lt;file type="thumbnail"/&gt;
61+
&lt;/example&gt;
62+
&lt;example name="ProcessGeneratedTextinRealTimebyUsingChatGPTinStreamingMode" type="html"&gt;
63+
&lt;file type="source"&gt;/examples/html/ProcessGeneratedTextinRealTimebyUsingChatGPTinStreamingMode.html&lt;/file&gt;
64+
&lt;file type="main"&gt;/examples/ProcessGeneratedTextinRealTimebyUsingChatGPTinStreamingMode.mlx&lt;/file&gt;
65+
&lt;file type="thumbnail"/&gt;
66+
&lt;/example&gt;
67+
&lt;example name="RetrievalAugmentedGenerationUsingChatGPTandMATLAB" type="html"&gt;
68+
&lt;file type="source"&gt;/examples/html/RetrievalAugmentedGenerationUsingChatGPTandMATLAB.html&lt;/file&gt;
69+
&lt;file type="main"&gt;/examples/RetrievalAugmentedGenerationUsingChatGPTandMATLAB.mlx&lt;/file&gt;
70+
&lt;file type="thumbnail"/&gt;
71+
&lt;/example&gt;
72+
&lt;example name="RetrievalAugmentedGenerationUsingOllamaAndMATLAB" type="html"&gt;
73+
&lt;file type="source"&gt;/examples/html/RetrievalAugmentedGenerationUsingOllamaAndMATLAB.html&lt;/file&gt;
74+
&lt;file type="main"&gt;/examples/RetrievalAugmentedGenerationUsingOllamaAndMATLAB.mlx&lt;/file&gt;
75+
&lt;file type="thumbnail"/&gt;
76+
&lt;/example&gt;
77+
&lt;example name="SummarizeLargeDocumentsUsingChatGPTandMATLAB" type="html"&gt;
78+
&lt;file type="source"&gt;/examples/html/SummarizeLargeDocumentsUsingChatGPTandMATLAB.html&lt;/file&gt;
79+
&lt;file type="main"&gt;/examples/SummarizeLargeDocumentsUsingChatGPTandMATLAB.mlx&lt;/file&gt;
80+
&lt;file type="thumbnail"/&gt;
81+
&lt;/example&gt;
82+
&lt;example name="UsingDALLEToEditImages" type="html"&gt;
83+
&lt;file type="source"&gt;/examples/html/UsingDALLEToEditImages.html&lt;/file&gt;
84+
&lt;file type="main"&gt;/examples/UsingDALLEToEditImages.mlx&lt;/file&gt;
85+
&lt;file type="thumbnail"/&gt;
86+
&lt;/example&gt;
87+
&lt;example name="UsingDALLEToGenerateImages" type="html"&gt;
88+
&lt;file type="source"&gt;/examples/html/UsingDALLEToGenerateImages.html&lt;/file&gt;
89+
&lt;file type="main"&gt;/examples/UsingDALLEToGenerateImages.mlx&lt;/file&gt;
90+
&lt;file type="thumbnail"/&gt;
91+
&lt;/example&gt;
92+
&lt;/exampleCategory&gt;
93+
&lt;/examples&gt;</param.examples>
94+
<param.demosxml />
95+
<param.apps />
96+
<param.registered.apps />
97+
<param.docs />
98+
<param.getting.started.guide />
99+
<param.matlabpath.excludes />
100+
<param.javaclasspath.excludes />
101+
<param.exported.on.package>true</param.exported.on.package>
102+
<param.required.addons />
103+
<param.matlab.project.id />
104+
<param.matlab.project.name />
105+
<param.release.start>R2024a</param.release.start>
106+
<param.release.end>latest</param.release.end>
107+
<param.release.current.only>false</param.release.current.only>
108+
<param.compatiblity.windows>true</param.compatiblity.windows>
109+
<param.compatiblity.macos>true</param.compatiblity.macos>
110+
<param.compatiblity.linux>true</param.compatiblity.linux>
111+
<param.compatiblity.matlabonline>true</param.compatiblity.matlabonline>
112+
<param.installation.map />
113+
<param.additional.sw.names />
114+
<param.additional.sw.licenses />
115+
<param.additional.sw.win.url />
116+
<param.additional.sw.mac.url />
117+
<param.additional.sw.linux.url />
118+
<unset>
119+
<param.email />
120+
<param.output />
121+
<param.products.name />
122+
<param.products.id />
123+
<param.products.version />
124+
<param.platforms />
125+
<param.exclude.filters />
126+
<param.exclude.pcodedmfiles />
127+
<param.demosxml />
128+
<param.apps />
129+
<param.registered.apps />
130+
<param.docs />
131+
<param.getting.started.guide />
132+
<param.matlabpath.excludes />
133+
<param.javaclasspath.excludes />
134+
<param.required.addons />
135+
<param.matlab.project.id />
136+
<param.matlab.project.name />
137+
<param.release.current.only />
138+
<param.compatiblity.windows />
139+
<param.compatiblity.macos />
140+
<param.compatiblity.linux />
141+
<param.compatiblity.matlabonline />
142+
<param.installation.map />
143+
<param.additional.sw.names />
144+
<param.additional.sw.licenses />
145+
<param.additional.sw.win.url />
146+
<param.additional.sw.mac.url />
147+
<param.additional.sw.linux.url />
148+
</unset>
149+
<fileset.rootdir>
150+
<file>${PROJECT_ROOT}/toolbox</file>
151+
</fileset.rootdir>
152+
<fileset.rootfiles>
153+
<file>${PROJECT_ROOT}/toolbox/+llms</file>
154+
<file>${PROJECT_ROOT}/toolbox/._azureChat.m</file>
155+
<file>${PROJECT_ROOT}/toolbox/._messageHistory.m</file>
156+
<file>${PROJECT_ROOT}/toolbox/._ollamaChat.m</file>
157+
<file>${PROJECT_ROOT}/toolbox/._openAIChat.m</file>
158+
<file>${PROJECT_ROOT}/toolbox/azureChat.m</file>
159+
<file>${PROJECT_ROOT}/toolbox/demos.xml</file>
160+
<file>${PROJECT_ROOT}/toolbox/examples</file>
161+
<file>${PROJECT_ROOT}/toolbox/extractOpenAIEmbeddings.m</file>
162+
<file>${PROJECT_ROOT}/toolbox/messageHistory.m</file>
163+
<file>${PROJECT_ROOT}/toolbox/ollamaChat.m</file>
164+
<file>${PROJECT_ROOT}/toolbox/openAIChat.m</file>
165+
<file>${PROJECT_ROOT}/toolbox/openAIFunction.m</file>
166+
<file>${PROJECT_ROOT}/toolbox/openAIImages.m</file>
167+
<file>${PROJECT_ROOT}/toolbox/openAIMessages.m</file>
168+
</fileset.rootfiles>
169+
<fileset.depfun.included />
170+
<fileset.depfun.excluded>
171+
<file>${PROJECT_ROOT}/papers_to_read.csv</file>
172+
</fileset.depfun.excluded>
173+
<fileset.package />
174+
<build-deliverables>
175+
<file location="${PROJECT_ROOT}" name="LLMs with MATLAB®.mltbx" optional="false">/System/Volumes/Data/mathworks/devel/sandbox/ccreutzi/llms-with-matlab/LLMs with MATLAB®.mltbx</file>
176+
</build-deliverables>
177+
<workflow />
178+
<matlab>
179+
<root>/System/Volumes/Data/mathworks/devel/jobarchive/Btext/.zfs/snapshot/Btext.2703056.pass.ja1/current/build/matlab</root>
180+
<toolboxes>
181+
<toolbox name="matlabcoder" />
182+
<toolbox name="embeddedcoder" />
183+
<toolbox name="fixedpoint" />
184+
<toolbox name="neuralnetwork" />
185+
</toolboxes>
186+
<toolbox>
187+
<matlabcoder>
188+
<enabled>true</enabled>
189+
</matlabcoder>
190+
</toolbox>
191+
<toolbox>
192+
<embeddedcoder>
193+
<enabled>true</enabled>
194+
</embeddedcoder>
195+
</toolbox>
196+
<toolbox>
197+
<fixedpoint>
198+
<enabled>true</enabled>
199+
</fixedpoint>
200+
</toolbox>
201+
<toolbox>
202+
<neuralnetwork>
203+
<enabled>true</enabled>
204+
</neuralnetwork>
205+
</toolbox>
206+
</matlab>
207+
<platform>
208+
<unix>true</unix>
209+
<mac>true</mac>
210+
<windows>false</windows>
211+
<win2k>false</win2k>
212+
<winxp>false</winxp>
213+
<vista>false</vista>
214+
<linux>false</linux>
215+
<solaris>false</solaris>
216+
<osver>14.5</osver>
217+
<os32>true</os32>
218+
<os64>false</os64>
219+
<arch>maci64</arch>
220+
<matlab>true</matlab>
221+
</platform>
222+
</configuration>
223+
</deployment-project>

0 commit comments

Comments
 (0)