AkshaySandbox commited on
Commit
d5ac5b6
·
verified ·
1 Parent(s): e68ab84

Add new SentenceTransformer model

Browse files
1_Pooling/config.json ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "word_embedding_dimension": 1024,
3
+ "pooling_mode_cls_token": true,
4
+ "pooling_mode_mean_tokens": false,
5
+ "pooling_mode_max_tokens": false,
6
+ "pooling_mode_mean_sqrt_len_tokens": false,
7
+ "pooling_mode_weightedmean_tokens": false,
8
+ "pooling_mode_lasttoken": false,
9
+ "include_prompt": true
10
+ }
README.md ADDED
@@ -0,0 +1,656 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ tags:
3
+ - sentence-transformers
4
+ - sentence-similarity
5
+ - feature-extraction
6
+ - generated_from_trainer
7
+ - dataset_size:156
8
+ - loss:MatryoshkaLoss
9
+ - loss:MultipleNegativesRankingLoss
10
+ base_model: Snowflake/snowflake-arctic-embed-l
11
+ widget:
12
+ - source_sentence: What significant multi-modal models were released by major vendors
13
+ in 2024?
14
+ sentences:
15
+ - 'The boring yet crucial secret behind good system prompts is test-driven development.
16
+ You don’t write down a system prompt and find ways to test it. You write down
17
+ tests and find a system prompt that passes them.
18
+
19
+
20
+ It’s become abundantly clear over the course of 2024 that writing good automated
21
+ evals for LLM-powered systems is the skill that’s most needed to build useful
22
+ applications on top of these models. If you have a strong eval suite you can adopt
23
+ new models faster, iterate better and build more reliable and useful product features
24
+ than your competition.
25
+
26
+ Vercel’s Malte Ubl:'
27
+ - 'In 2024, almost every significant model vendor released multi-modal models. We
28
+ saw the Claude 3 series from Anthropic in March, Gemini 1.5 Pro in April (images,
29
+ audio and video), then September brought Qwen2-VL and Mistral’s Pixtral 12B and
30
+ Meta’s Llama 3.2 11B and 90B vision models. We got audio input and output from
31
+ OpenAI in October, then November saw SmolVLM from Hugging Face and December saw
32
+ image and video models from Amazon Nova.
33
+
34
+ In October I upgraded my LLM CLI tool to support multi-modal models via attachments.
35
+ It now has plugins for a whole collection of different vision models.'
36
+ - 'Intuitively, one would expect that systems this powerful would take millions
37
+ of lines of complex code. Instead, it turns out a few hundred lines of Python
38
+ is genuinely enough to train a basic version!
39
+
40
+ What matters most is the training data. You need a lot of data to make these
41
+ things work, and the quantity and quality of the training data appears to be the
42
+ most important factor in how good the resulting model is.
43
+
44
+ If you can gather the right data, and afford to pay for the GPUs to train it,
45
+ you can build an LLM.'
46
+ - source_sentence: How did the construction of railways in the 1800s impact the environment?
47
+ sentences:
48
+ - 'DeepSeek v3 is a huge 685B parameter model—one of the largest openly licensed
49
+ models currently available, significantly bigger than the largest of Meta’s Llama
50
+ series, Llama 3.1 405B.
51
+
52
+ Benchmarks put it up there with Claude 3.5 Sonnet. Vibe benchmarks (aka the Chatbot
53
+ Arena) currently rank it 7th, just behind the Gemini 2.0 and OpenAI 4o/o1 models.
54
+ This is by far the highest ranking openly licensed model.
55
+
56
+ The really impressive thing about DeepSeek v3 is the training cost. The model
57
+ was trained on 2,788,000 H800 GPU hours at an estimated cost of $5,576,000. Llama
58
+ 3.1 405B trained 30,840,000 GPU hours—11x that used by DeepSeek v3, for a model
59
+ that benchmarks slightly worse.'
60
+ - 'An interesting point of comparison here could be the way railways rolled out
61
+ around the world in the 1800s. Constructing these required enormous investments
62
+ and had a massive environmental impact, and many of the lines that were built
63
+ turned out to be unnecessary—sometimes multiple lines from different companies
64
+ serving the exact same routes!
65
+
66
+ The resulting bubbles contributed to several financial crashes, see Wikipedia
67
+ for Panic of 1873, Panic of 1893, Panic of 1901 and the UK’s Railway Mania. They
68
+ left us with a lot of useful infrastructure and a great deal of bankruptcies and
69
+ environmental damage.
70
+
71
+ The year of slop'
72
+ - 'An interesting point of comparison here could be the way railways rolled out
73
+ around the world in the 1800s. Constructing these required enormous investments
74
+ and had a massive environmental impact, and many of the lines that were built
75
+ turned out to be unnecessary—sometimes multiple lines from different companies
76
+ serving the exact same routes!
77
+
78
+ The resulting bubbles contributed to several financial crashes, see Wikipedia
79
+ for Panic of 1873, Panic of 1893, Panic of 1901 and the UK’s Railway Mania. They
80
+ left us with a lot of useful infrastructure and a great deal of bankruptcies and
81
+ environmental damage.
82
+
83
+ The year of slop'
84
+ - source_sentence: Why does the author believe that gullibility may hinder the development
85
+ of AI agents?
86
+ sentences:
87
+ - 'The environmental impact got much, much worse
88
+
89
+ The much bigger problem here is the enormous competitive buildout of the infrastructure
90
+ that is imagined to be necessary for these models in the future.
91
+
92
+ Companies like Google, Meta, Microsoft and Amazon are all spending billions of
93
+ dollars rolling out new datacenters, with a very material impact on the electricity
94
+ grid and the environment. There’s even talk of spinning up new nuclear power stations,
95
+ but those can take decades.
96
+
97
+ Is this infrastructure necessary? DeepSeek v3’s $6m training cost and the continued
98
+ crash in LLM prices might hint that it’s not. But would you want to be the big
99
+ tech executive that argued NOT to build out this infrastructure only to be proven
100
+ wrong in a few years’ time?'
101
+ - 'A lot of people are excited about AI agents—an infuriatingly vague term that
102
+ seems to be converging on “AI systems that can go away and act on your behalf”.
103
+ We’ve been talking about them all year, but I’ve seen few if any examples of them
104
+ running in production, despite lots of exciting prototypes.
105
+
106
+ I think this is because of gullibility.
107
+
108
+ Can we solve this? Honestly, I’m beginning to suspect that you can’t fully solve
109
+ gullibility without achieving AGI. So it may be quite a while before those agent
110
+ dreams can really start to come true!
111
+
112
+ Code may be the best application
113
+
114
+ Over the course of the year, it’s become increasingly clear that writing code
115
+ is one of the things LLMs are most capable of.'
116
+ - 'So far, I think they’re a net positive. I’ve used them on a personal level to
117
+ improve my productivity (and entertain myself) in all sorts of different ways.
118
+ I think people who learn how to use them effectively can gain a significant boost
119
+ to their quality of life.
120
+
121
+ A lot of people are yet to be sold on their value! Some think their negatives
122
+ outweigh their positives, some think they are all hot air, and some even think
123
+ they represent an existential threat to humanity.
124
+
125
+ They’re actually quite easy to build
126
+
127
+ The most surprising thing we’ve learned about LLMs this year is that they’re actually
128
+ quite easy to build.'
129
+ - source_sentence: How does the author compare a prompt without evals, models, and
130
+ UX to an ASML machine?
131
+ sentences:
132
+ - 'Terminology aside, I remain skeptical as to their utility based, once again,
133
+ on the challenge of gullibility. LLMs believe anything you tell them. Any systems
134
+ that attempts to make meaningful decisions on your behalf will run into the same
135
+ roadblock: how good is a travel agent, or a digital assistant, or even a research
136
+ tool if it can’t distinguish truth from fiction?
137
+
138
+ Just the other day Google Search was caught serving up an entirely fake description
139
+ of the non-existant movie “Encanto 2”. It turned out to be summarizing an imagined
140
+ movie listing from a fan fiction wiki.'
141
+ - 'The two main categories I see are people who think AI agents are obviously things
142
+ that go and act on your behalf—the travel agent model—and people who think in
143
+ terms of LLMs that have been given access to tools which they can run in a loop
144
+ as part of solving a problem. The term “autonomy” is often thrown into the mix
145
+ too, again without including a clear definition.
146
+
147
+ (I also collected 211 definitions on Twitter a few months ago—here they are in
148
+ Datasette Lite—and had gemini-exp-1206 attempt to summarize them.)
149
+
150
+ Whatever the term may mean, agents still have that feeling of perpetually “coming
151
+ soon”.'
152
+ - 'When @v0 first came out we were paranoid about protecting the prompt with all
153
+ kinds of pre and post processing complexity.
154
+
155
+ We completely pivoted to let it rip. A prompt without the evals, models, and especially
156
+ UX is like getting a broken ASML machine without a manual'
157
+ - source_sentence: What significant change occurred in May regarding the availability
158
+ of GPT-4o for users?
159
+ sentences:
160
+ - 'OpenAI made GPT-4o free for all users in May, and Claude 3.5 Sonnet was freely
161
+ available from its launch in June. This was a momentus change, because for the
162
+ previous year free users had mostly been restricted to GPT-3.5 level models, meaning
163
+ new users got a very inaccurate mental model of what a capable LLM could actually
164
+ do.
165
+
166
+ That era appears to have ended, likely permanently, with OpenAI’s launch of ChatGPT
167
+ Pro. This $200/month subscription service is the only way to access their most
168
+ capable model, o1 Pro.
169
+
170
+ Since the trick behind the o1 series (and the future models it will undoubtedly
171
+ inspire) is to expend more compute time to get better results, I don’t think those
172
+ days of free access to the best available models are likely to return.'
173
+ - 'I’m still trying to figure out the best patterns for doing this for my own work.
174
+ Everyone knows that evals are important, but there remains a lack of great guidance
175
+ for how to best implement them—I’m tracking this under my evals tag. My SVG pelican
176
+ riding a bicycle benchmark is a pale imitation of what a real eval suite should
177
+ look like.
178
+
179
+ Apple Intelligence is bad, Apple’s MLX library is excellent
180
+
181
+ As a Mac user I’ve been feeling a lot better about my choice of platform this
182
+ year.
183
+
184
+ Last year it felt like my lack of a Linux/Windows machine with an NVIDIA GPU
185
+ was a huge disadvantage in terms of trying out new models.'
186
+ - 'We already knew LLMs were spookily good at writing code. If you prompt them right,
187
+ it turns out they can build you a full interactive application using HTML, CSS
188
+ and JavaScript (and tools like React if you wire up some extra supporting build
189
+ mechanisms)—often in a single prompt.
190
+
191
+ Anthropic kicked this idea into high gear when they released Claude Artifacts,
192
+ a groundbreaking new feature that was initially slightly lost in the noise due
193
+ to being described half way through their announcement of the incredible Claude
194
+ 3.5 Sonnet.
195
+
196
+ With Artifacts, Claude can write you an on-demand interactive application and
197
+ then let you use it directly inside the Claude interface.
198
+
199
+ Here’s my Extract URLs app, entirely generated by Claude:'
200
+ pipeline_tag: sentence-similarity
201
+ library_name: sentence-transformers
202
+ metrics:
203
+ - cosine_accuracy@1
204
+ - cosine_accuracy@3
205
+ - cosine_accuracy@5
206
+ - cosine_accuracy@10
207
+ - cosine_precision@1
208
+ - cosine_precision@3
209
+ - cosine_precision@5
210
+ - cosine_precision@10
211
+ - cosine_recall@1
212
+ - cosine_recall@3
213
+ - cosine_recall@5
214
+ - cosine_recall@10
215
+ - cosine_ndcg@10
216
+ - cosine_mrr@10
217
+ - cosine_map@100
218
+ model-index:
219
+ - name: SentenceTransformer based on Snowflake/snowflake-arctic-embed-l
220
+ results:
221
+ - task:
222
+ type: information-retrieval
223
+ name: Information Retrieval
224
+ dataset:
225
+ name: Unknown
226
+ type: unknown
227
+ metrics:
228
+ - type: cosine_accuracy@1
229
+ value: 0.875
230
+ name: Cosine Accuracy@1
231
+ - type: cosine_accuracy@3
232
+ value: 1.0
233
+ name: Cosine Accuracy@3
234
+ - type: cosine_accuracy@5
235
+ value: 1.0
236
+ name: Cosine Accuracy@5
237
+ - type: cosine_accuracy@10
238
+ value: 1.0
239
+ name: Cosine Accuracy@10
240
+ - type: cosine_precision@1
241
+ value: 0.875
242
+ name: Cosine Precision@1
243
+ - type: cosine_precision@3
244
+ value: 0.3333333333333333
245
+ name: Cosine Precision@3
246
+ - type: cosine_precision@5
247
+ value: 0.20000000000000004
248
+ name: Cosine Precision@5
249
+ - type: cosine_precision@10
250
+ value: 0.10000000000000002
251
+ name: Cosine Precision@10
252
+ - type: cosine_recall@1
253
+ value: 0.875
254
+ name: Cosine Recall@1
255
+ - type: cosine_recall@3
256
+ value: 1.0
257
+ name: Cosine Recall@3
258
+ - type: cosine_recall@5
259
+ value: 1.0
260
+ name: Cosine Recall@5
261
+ - type: cosine_recall@10
262
+ value: 1.0
263
+ name: Cosine Recall@10
264
+ - type: cosine_ndcg@10
265
+ value: 0.9538662191964322
266
+ name: Cosine Ndcg@10
267
+ - type: cosine_mrr@10
268
+ value: 0.9375
269
+ name: Cosine Mrr@10
270
+ - type: cosine_map@100
271
+ value: 0.9375
272
+ name: Cosine Map@100
273
+ ---
274
+
275
+ # SentenceTransformer based on Snowflake/snowflake-arctic-embed-l
276
+
277
+ This is a [sentence-transformers](https://www.SBERT.net) model finetuned from [Snowflake/snowflake-arctic-embed-l](https://huggingface.co/Snowflake/snowflake-arctic-embed-l). It maps sentences & paragraphs to a 1024-dimensional dense vector space and can be used for semantic textual similarity, semantic search, paraphrase mining, text classification, clustering, and more.
278
+
279
+ ## Model Details
280
+
281
+ ### Model Description
282
+ - **Model Type:** Sentence Transformer
283
+ - **Base model:** [Snowflake/snowflake-arctic-embed-l](https://huggingface.co/Snowflake/snowflake-arctic-embed-l) <!-- at revision d8fb21ca8d905d2832ee8b96c894d3298964346b -->
284
+ - **Maximum Sequence Length:** 512 tokens
285
+ - **Output Dimensionality:** 1024 dimensions
286
+ - **Similarity Function:** Cosine Similarity
287
+ <!-- - **Training Dataset:** Unknown -->
288
+ <!-- - **Language:** Unknown -->
289
+ <!-- - **License:** Unknown -->
290
+
291
+ ### Model Sources
292
+
293
+ - **Documentation:** [Sentence Transformers Documentation](https://sbert.net)
294
+ - **Repository:** [Sentence Transformers on GitHub](https://github.com/UKPLab/sentence-transformers)
295
+ - **Hugging Face:** [Sentence Transformers on Hugging Face](https://huggingface.co/models?library=sentence-transformers)
296
+
297
+ ### Full Model Architecture
298
+
299
+ ```
300
+ SentenceTransformer(
301
+ (0): Transformer({'max_seq_length': 512, 'do_lower_case': False}) with Transformer model: BertModel
302
+ (1): Pooling({'word_embedding_dimension': 1024, 'pooling_mode_cls_token': True, 'pooling_mode_mean_tokens': False, 'pooling_mode_max_tokens': False, 'pooling_mode_mean_sqrt_len_tokens': False, 'pooling_mode_weightedmean_tokens': False, 'pooling_mode_lasttoken': False, 'include_prompt': True})
303
+ (2): Normalize()
304
+ )
305
+ ```
306
+
307
+ ## Usage
308
+
309
+ ### Direct Usage (Sentence Transformers)
310
+
311
+ First install the Sentence Transformers library:
312
+
313
+ ```bash
314
+ pip install -U sentence-transformers
315
+ ```
316
+
317
+ Then you can load this model and run inference.
318
+ ```python
319
+ from sentence_transformers import SentenceTransformer
320
+
321
+ # Download from the 🤗 Hub
322
+ model = SentenceTransformer("AkshaySandbox/legal-ft-v0")
323
+ # Run inference
324
+ sentences = [
325
+ 'What significant change occurred in May regarding the availability of GPT-4o for users?',
326
+ 'OpenAI made GPT-4o free for all users in May, and Claude 3.5 Sonnet was freely available from its launch in June. This was a momentus change, because for the previous year free users had mostly been restricted to GPT-3.5 level models, meaning new users got a very inaccurate mental model of what a capable LLM could actually do.\nThat era appears to have ended, likely permanently, with OpenAI’s launch of ChatGPT Pro. This $200/month subscription service is the only way to access their most capable model, o1 Pro.\nSince the trick behind the o1 series (and the future models it will undoubtedly inspire) is to expend more compute time to get better results, I don’t think those days of free access to the best available models are likely to return.',
327
+ 'We already knew LLMs were spookily good at writing code. If you prompt them right, it turns out they can build you a full interactive application using HTML, CSS and JavaScript (and tools like React if you wire up some extra supporting build mechanisms)—often in a single prompt.\nAnthropic kicked this idea into high gear when they released Claude Artifacts, a groundbreaking new feature that was initially slightly lost in the noise due to being described half way through their announcement of the incredible Claude 3.5 Sonnet.\nWith Artifacts, Claude can write you an on-demand interactive application and then let you use it directly inside the Claude interface.\nHere’s my Extract URLs app, entirely generated by Claude:',
328
+ ]
329
+ embeddings = model.encode(sentences)
330
+ print(embeddings.shape)
331
+ # [3, 1024]
332
+
333
+ # Get the similarity scores for the embeddings
334
+ similarities = model.similarity(embeddings, embeddings)
335
+ print(similarities.shape)
336
+ # [3, 3]
337
+ ```
338
+
339
+ <!--
340
+ ### Direct Usage (Transformers)
341
+
342
+ <details><summary>Click to see the direct usage in Transformers</summary>
343
+
344
+ </details>
345
+ -->
346
+
347
+ <!--
348
+ ### Downstream Usage (Sentence Transformers)
349
+
350
+ You can finetune this model on your own dataset.
351
+
352
+ <details><summary>Click to expand</summary>
353
+
354
+ </details>
355
+ -->
356
+
357
+ <!--
358
+ ### Out-of-Scope Use
359
+
360
+ *List how the model may foreseeably be misused and address what users ought not to do with the model.*
361
+ -->
362
+
363
+ ## Evaluation
364
+
365
+ ### Metrics
366
+
367
+ #### Information Retrieval
368
+
369
+ * Evaluated with [<code>InformationRetrievalEvaluator</code>](https://sbert.net/docs/package_reference/sentence_transformer/evaluation.html#sentence_transformers.evaluation.InformationRetrievalEvaluator)
370
+
371
+ | Metric | Value |
372
+ |:--------------------|:-----------|
373
+ | cosine_accuracy@1 | 0.875 |
374
+ | cosine_accuracy@3 | 1.0 |
375
+ | cosine_accuracy@5 | 1.0 |
376
+ | cosine_accuracy@10 | 1.0 |
377
+ | cosine_precision@1 | 0.875 |
378
+ | cosine_precision@3 | 0.3333 |
379
+ | cosine_precision@5 | 0.2 |
380
+ | cosine_precision@10 | 0.1 |
381
+ | cosine_recall@1 | 0.875 |
382
+ | cosine_recall@3 | 1.0 |
383
+ | cosine_recall@5 | 1.0 |
384
+ | cosine_recall@10 | 1.0 |
385
+ | **cosine_ndcg@10** | **0.9539** |
386
+ | cosine_mrr@10 | 0.9375 |
387
+ | cosine_map@100 | 0.9375 |
388
+
389
+ <!--
390
+ ## Bias, Risks and Limitations
391
+
392
+ *What are the known or foreseeable issues stemming from this model? You could also flag here known failure cases or weaknesses of the model.*
393
+ -->
394
+
395
+ <!--
396
+ ### Recommendations
397
+
398
+ *What are recommendations with respect to the foreseeable issues? For example, filtering explicit content.*
399
+ -->
400
+
401
+ ## Training Details
402
+
403
+ ### Training Dataset
404
+
405
+ #### Unnamed Dataset
406
+
407
+ * Size: 156 training samples
408
+ * Columns: <code>sentence_0</code> and <code>sentence_1</code>
409
+ * Approximate statistics based on the first 156 samples:
410
+ | | sentence_0 | sentence_1 |
411
+ |:--------|:-----------------------------------------------------------------------------------|:-------------------------------------------------------------------------------------|
412
+ | type | string | string |
413
+ | details | <ul><li>min: 12 tokens</li><li>mean: 20.38 tokens</li><li>max: 38 tokens</li></ul> | <ul><li>min: 43 tokens</li><li>mean: 135.18 tokens</li><li>max: 214 tokens</li></ul> |
414
+ * Samples:
415
+ | sentence_0 | sentence_1 |
416
+ |:-----------------------------------------------------------------------------------------------------------------------------------|:----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
417
+ | <code>What significant advancements in AI were made in 2023, particularly regarding Large Language Models (LLMs)?</code> | <code>Stuff we figured out about AI in 2023<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>Simon Willison’s Weblog<br>Subscribe<br><br><br><br><br><br><br>Stuff we figured out about AI in 2023<br>31st December 2023<br>2023 was the breakthrough year for Large Language Models (LLMs). I think it’s OK to call these AI—they’re the latest and (currently) most interesting development in the academic field of Artificial Intelligence that dates back to the 1950s.<br>Here’s my attempt to round up the highlights in one place!</code> |
418
+ | <code>How does the development of LLMs in 2023 relate to the historical context of Artificial Intelligence since the 1950s?</code> | <code>Stuff we figured out about AI in 2023<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>Simon Willison’s Weblog<br>Subscribe<br><br><br><br><br><br><br>Stuff we figured out about AI in 2023<br>31st December 2023<br>2023 was the breakthrough year for Large Language Models (LLMs). I think it’s OK to call these AI—they’re the latest and (currently) most interesting development in the academic field of Artificial Intelligence that dates back to the 1950s.<br>Here’s my attempt to round up the highlights in one place!</code> |
419
+ | <code>What are some potential applications of Large Language Models (LLMs) mentioned in the context?</code> | <code>Large Language Models<br>They’re actually quite easy to build<br>You can run LLMs on your own devices<br>Hobbyists can build their own fine-tuned models<br>We don’t yet know how to build GPT-4<br>Vibes Based Development<br>LLMs are really smart, and also really, really dumb<br>Gullibility is the biggest unsolved problem<br>Code may be the best application<br>The ethics of this space remain diabolically complex<br>My blog in 2023</code> |
420
+ * Loss: [<code>MatryoshkaLoss</code>](https://sbert.net/docs/package_reference/sentence_transformer/losses.html#matryoshkaloss) with these parameters:
421
+ ```json
422
+ {
423
+ "loss": "MultipleNegativesRankingLoss",
424
+ "matryoshka_dims": [
425
+ 768,
426
+ 512,
427
+ 256,
428
+ 128,
429
+ 64
430
+ ],
431
+ "matryoshka_weights": [
432
+ 1,
433
+ 1,
434
+ 1,
435
+ 1,
436
+ 1
437
+ ],
438
+ "n_dims_per_step": -1
439
+ }
440
+ ```
441
+
442
+ ### Training Hyperparameters
443
+ #### Non-Default Hyperparameters
444
+
445
+ - `eval_strategy`: steps
446
+ - `per_device_train_batch_size`: 10
447
+ - `per_device_eval_batch_size`: 10
448
+ - `num_train_epochs`: 10
449
+ - `multi_dataset_batch_sampler`: round_robin
450
+
451
+ #### All Hyperparameters
452
+ <details><summary>Click to expand</summary>
453
+
454
+ - `overwrite_output_dir`: False
455
+ - `do_predict`: False
456
+ - `eval_strategy`: steps
457
+ - `prediction_loss_only`: True
458
+ - `per_device_train_batch_size`: 10
459
+ - `per_device_eval_batch_size`: 10
460
+ - `per_gpu_train_batch_size`: None
461
+ - `per_gpu_eval_batch_size`: None
462
+ - `gradient_accumulation_steps`: 1
463
+ - `eval_accumulation_steps`: None
464
+ - `torch_empty_cache_steps`: None
465
+ - `learning_rate`: 5e-05
466
+ - `weight_decay`: 0.0
467
+ - `adam_beta1`: 0.9
468
+ - `adam_beta2`: 0.999
469
+ - `adam_epsilon`: 1e-08
470
+ - `max_grad_norm`: 1
471
+ - `num_train_epochs`: 10
472
+ - `max_steps`: -1
473
+ - `lr_scheduler_type`: linear
474
+ - `lr_scheduler_kwargs`: {}
475
+ - `warmup_ratio`: 0.0
476
+ - `warmup_steps`: 0
477
+ - `log_level`: passive
478
+ - `log_level_replica`: warning
479
+ - `log_on_each_node`: True
480
+ - `logging_nan_inf_filter`: True
481
+ - `save_safetensors`: True
482
+ - `save_on_each_node`: False
483
+ - `save_only_model`: False
484
+ - `restore_callback_states_from_checkpoint`: False
485
+ - `no_cuda`: False
486
+ - `use_cpu`: False
487
+ - `use_mps_device`: False
488
+ - `seed`: 42
489
+ - `data_seed`: None
490
+ - `jit_mode_eval`: False
491
+ - `use_ipex`: False
492
+ - `bf16`: False
493
+ - `fp16`: False
494
+ - `fp16_opt_level`: O1
495
+ - `half_precision_backend`: auto
496
+ - `bf16_full_eval`: False
497
+ - `fp16_full_eval`: False
498
+ - `tf32`: None
499
+ - `local_rank`: 0
500
+ - `ddp_backend`: None
501
+ - `tpu_num_cores`: None
502
+ - `tpu_metrics_debug`: False
503
+ - `debug`: []
504
+ - `dataloader_drop_last`: False
505
+ - `dataloader_num_workers`: 0
506
+ - `dataloader_prefetch_factor`: None
507
+ - `past_index`: -1
508
+ - `disable_tqdm`: False
509
+ - `remove_unused_columns`: True
510
+ - `label_names`: None
511
+ - `load_best_model_at_end`: False
512
+ - `ignore_data_skip`: False
513
+ - `fsdp`: []
514
+ - `fsdp_min_num_params`: 0
515
+ - `fsdp_config`: {'min_num_params': 0, 'xla': False, 'xla_fsdp_v2': False, 'xla_fsdp_grad_ckpt': False}
516
+ - `fsdp_transformer_layer_cls_to_wrap`: None
517
+ - `accelerator_config`: {'split_batches': False, 'dispatch_batches': None, 'even_batches': True, 'use_seedable_sampler': True, 'non_blocking': False, 'gradient_accumulation_kwargs': None}
518
+ - `deepspeed`: None
519
+ - `label_smoothing_factor`: 0.0
520
+ - `optim`: adamw_torch
521
+ - `optim_args`: None
522
+ - `adafactor`: False
523
+ - `group_by_length`: False
524
+ - `length_column_name`: length
525
+ - `ddp_find_unused_parameters`: None
526
+ - `ddp_bucket_cap_mb`: None
527
+ - `ddp_broadcast_buffers`: False
528
+ - `dataloader_pin_memory`: True
529
+ - `dataloader_persistent_workers`: False
530
+ - `skip_memory_metrics`: True
531
+ - `use_legacy_prediction_loop`: False
532
+ - `push_to_hub`: False
533
+ - `resume_from_checkpoint`: None
534
+ - `hub_model_id`: None
535
+ - `hub_strategy`: every_save
536
+ - `hub_private_repo`: None
537
+ - `hub_always_push`: False
538
+ - `gradient_checkpointing`: False
539
+ - `gradient_checkpointing_kwargs`: None
540
+ - `include_inputs_for_metrics`: False
541
+ - `include_for_metrics`: []
542
+ - `eval_do_concat_batches`: True
543
+ - `fp16_backend`: auto
544
+ - `push_to_hub_model_id`: None
545
+ - `push_to_hub_organization`: None
546
+ - `mp_parameters`:
547
+ - `auto_find_batch_size`: False
548
+ - `full_determinism`: False
549
+ - `torchdynamo`: None
550
+ - `ray_scope`: last
551
+ - `ddp_timeout`: 1800
552
+ - `torch_compile`: False
553
+ - `torch_compile_backend`: None
554
+ - `torch_compile_mode`: None
555
+ - `dispatch_batches`: None
556
+ - `split_batches`: None
557
+ - `include_tokens_per_second`: False
558
+ - `include_num_input_tokens_seen`: False
559
+ - `neftune_noise_alpha`: None
560
+ - `optim_target_modules`: None
561
+ - `batch_eval_metrics`: False
562
+ - `eval_on_start`: False
563
+ - `use_liger_kernel`: False
564
+ - `eval_use_gather_object`: False
565
+ - `average_tokens_across_devices`: False
566
+ - `prompts`: None
567
+ - `batch_sampler`: batch_sampler
568
+ - `multi_dataset_batch_sampler`: round_robin
569
+
570
+ </details>
571
+
572
+ ### Training Logs
573
+ | Epoch | Step | cosine_ndcg@10 |
574
+ |:-----:|:----:|:--------------:|
575
+ | 1.0 | 16 | 0.9692 |
576
+ | 2.0 | 32 | 0.9692 |
577
+ | 3.0 | 48 | 0.9692 |
578
+ | 3.125 | 50 | 0.9846 |
579
+ | 4.0 | 64 | 0.9846 |
580
+ | 5.0 | 80 | 0.9692 |
581
+ | 6.0 | 96 | 0.9846 |
582
+ | 6.25 | 100 | 0.9846 |
583
+ | 7.0 | 112 | 0.9692 |
584
+ | 8.0 | 128 | 0.9539 |
585
+ | 9.0 | 144 | 0.9539 |
586
+ | 9.375 | 150 | 0.9539 |
587
+ | 10.0 | 160 | 0.9539 |
588
+
589
+
590
+ ### Framework Versions
591
+ - Python: 3.11.11
592
+ - Sentence Transformers: 3.4.1
593
+ - Transformers: 4.48.3
594
+ - PyTorch: 2.5.1+cu124
595
+ - Accelerate: 1.3.0
596
+ - Datasets: 3.3.1
597
+ - Tokenizers: 0.21.0
598
+
599
+ ## Citation
600
+
601
+ ### BibTeX
602
+
603
+ #### Sentence Transformers
604
+ ```bibtex
605
+ @inproceedings{reimers-2019-sentence-bert,
606
+ title = "Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks",
607
+ author = "Reimers, Nils and Gurevych, Iryna",
608
+ booktitle = "Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing",
609
+ month = "11",
610
+ year = "2019",
611
+ publisher = "Association for Computational Linguistics",
612
+ url = "https://arxiv.org/abs/1908.10084",
613
+ }
614
+ ```
615
+
616
+ #### MatryoshkaLoss
617
+ ```bibtex
618
+ @misc{kusupati2024matryoshka,
619
+ title={Matryoshka Representation Learning},
620
+ author={Aditya Kusupati and Gantavya Bhatt and Aniket Rege and Matthew Wallingford and Aditya Sinha and Vivek Ramanujan and William Howard-Snyder and Kaifeng Chen and Sham Kakade and Prateek Jain and Ali Farhadi},
621
+ year={2024},
622
+ eprint={2205.13147},
623
+ archivePrefix={arXiv},
624
+ primaryClass={cs.LG}
625
+ }
626
+ ```
627
+
628
+ #### MultipleNegativesRankingLoss
629
+ ```bibtex
630
+ @misc{henderson2017efficient,
631
+ title={Efficient Natural Language Response Suggestion for Smart Reply},
632
+ author={Matthew Henderson and Rami Al-Rfou and Brian Strope and Yun-hsuan Sung and Laszlo Lukacs and Ruiqi Guo and Sanjiv Kumar and Balint Miklos and Ray Kurzweil},
633
+ year={2017},
634
+ eprint={1705.00652},
635
+ archivePrefix={arXiv},
636
+ primaryClass={cs.CL}
637
+ }
638
+ ```
639
+
640
+ <!--
641
+ ## Glossary
642
+
643
+ *Clearly define terms in order to be accessible across audiences.*
644
+ -->
645
+
646
+ <!--
647
+ ## Model Card Authors
648
+
649
+ *Lists the people who create the model card, providing recognition and accountability for the detailed work that goes into its construction.*
650
+ -->
651
+
652
+ <!--
653
+ ## Model Card Contact
654
+
655
+ *Provides a way for people who have updates to the Model Card, suggestions, or questions, to contact the Model Card authors.*
656
+ -->
config.json ADDED
@@ -0,0 +1,25 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "_name_or_path": "Snowflake/snowflake-arctic-embed-l",
3
+ "architectures": [
4
+ "BertModel"
5
+ ],
6
+ "attention_probs_dropout_prob": 0.1,
7
+ "classifier_dropout": null,
8
+ "hidden_act": "gelu",
9
+ "hidden_dropout_prob": 0.1,
10
+ "hidden_size": 1024,
11
+ "initializer_range": 0.02,
12
+ "intermediate_size": 4096,
13
+ "layer_norm_eps": 1e-12,
14
+ "max_position_embeddings": 512,
15
+ "model_type": "bert",
16
+ "num_attention_heads": 16,
17
+ "num_hidden_layers": 24,
18
+ "pad_token_id": 0,
19
+ "position_embedding_type": "absolute",
20
+ "torch_dtype": "float32",
21
+ "transformers_version": "4.48.3",
22
+ "type_vocab_size": 2,
23
+ "use_cache": true,
24
+ "vocab_size": 30522
25
+ }
config_sentence_transformers.json ADDED
@@ -0,0 +1,12 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "__version__": {
3
+ "sentence_transformers": "3.4.1",
4
+ "transformers": "4.48.3",
5
+ "pytorch": "2.5.1+cu124"
6
+ },
7
+ "prompts": {
8
+ "query": "Represent this sentence for searching relevant passages: "
9
+ },
10
+ "default_prompt_name": null,
11
+ "similarity_fn_name": "cosine"
12
+ }
model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:c7143a47d64e289f4df501b113c9ea8ce1d3cb3378707e3a51493f92bde73d22
3
+ size 1336413848
modules.json ADDED
@@ -0,0 +1,20 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ [
2
+ {
3
+ "idx": 0,
4
+ "name": "0",
5
+ "path": "",
6
+ "type": "sentence_transformers.models.Transformer"
7
+ },
8
+ {
9
+ "idx": 1,
10
+ "name": "1",
11
+ "path": "1_Pooling",
12
+ "type": "sentence_transformers.models.Pooling"
13
+ },
14
+ {
15
+ "idx": 2,
16
+ "name": "2",
17
+ "path": "2_Normalize",
18
+ "type": "sentence_transformers.models.Normalize"
19
+ }
20
+ ]
sentence_bert_config.json ADDED
@@ -0,0 +1,4 @@
 
 
 
 
 
1
+ {
2
+ "max_seq_length": 512,
3
+ "do_lower_case": false
4
+ }
special_tokens_map.json ADDED
@@ -0,0 +1,37 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "cls_token": {
3
+ "content": "[CLS]",
4
+ "lstrip": false,
5
+ "normalized": false,
6
+ "rstrip": false,
7
+ "single_word": false
8
+ },
9
+ "mask_token": {
10
+ "content": "[MASK]",
11
+ "lstrip": false,
12
+ "normalized": false,
13
+ "rstrip": false,
14
+ "single_word": false
15
+ },
16
+ "pad_token": {
17
+ "content": "[PAD]",
18
+ "lstrip": false,
19
+ "normalized": false,
20
+ "rstrip": false,
21
+ "single_word": false
22
+ },
23
+ "sep_token": {
24
+ "content": "[SEP]",
25
+ "lstrip": false,
26
+ "normalized": false,
27
+ "rstrip": false,
28
+ "single_word": false
29
+ },
30
+ "unk_token": {
31
+ "content": "[UNK]",
32
+ "lstrip": false,
33
+ "normalized": false,
34
+ "rstrip": false,
35
+ "single_word": false
36
+ }
37
+ }
tokenizer.json ADDED
The diff for this file is too large to render. See raw diff
 
tokenizer_config.json ADDED
@@ -0,0 +1,63 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "added_tokens_decoder": {
3
+ "0": {
4
+ "content": "[PAD]",
5
+ "lstrip": false,
6
+ "normalized": false,
7
+ "rstrip": false,
8
+ "single_word": false,
9
+ "special": true
10
+ },
11
+ "100": {
12
+ "content": "[UNK]",
13
+ "lstrip": false,
14
+ "normalized": false,
15
+ "rstrip": false,
16
+ "single_word": false,
17
+ "special": true
18
+ },
19
+ "101": {
20
+ "content": "[CLS]",
21
+ "lstrip": false,
22
+ "normalized": false,
23
+ "rstrip": false,
24
+ "single_word": false,
25
+ "special": true
26
+ },
27
+ "102": {
28
+ "content": "[SEP]",
29
+ "lstrip": false,
30
+ "normalized": false,
31
+ "rstrip": false,
32
+ "single_word": false,
33
+ "special": true
34
+ },
35
+ "103": {
36
+ "content": "[MASK]",
37
+ "lstrip": false,
38
+ "normalized": false,
39
+ "rstrip": false,
40
+ "single_word": false,
41
+ "special": true
42
+ }
43
+ },
44
+ "clean_up_tokenization_spaces": true,
45
+ "cls_token": "[CLS]",
46
+ "do_lower_case": true,
47
+ "extra_special_tokens": {},
48
+ "mask_token": "[MASK]",
49
+ "max_length": 512,
50
+ "model_max_length": 512,
51
+ "pad_to_multiple_of": null,
52
+ "pad_token": "[PAD]",
53
+ "pad_token_type_id": 0,
54
+ "padding_side": "right",
55
+ "sep_token": "[SEP]",
56
+ "stride": 0,
57
+ "strip_accents": null,
58
+ "tokenize_chinese_chars": true,
59
+ "tokenizer_class": "BertTokenizer",
60
+ "truncation_side": "right",
61
+ "truncation_strategy": "longest_first",
62
+ "unk_token": "[UNK]"
63
+ }
vocab.txt ADDED
The diff for this file is too large to render. See raw diff