--- tags: - sentence-transformers - sentence-similarity - feature-extraction - generated_from_trainer - loss:MatryoshkaLoss - loss:MultipleNegativesRankingLoss - dataset_size:164 base_model: Snowflake/snowflake-arctic-embed-l widget: - source_sentence: What steps must be taken before an app can receive communication from Flow actions? sentences: - Before your app can receive communication from Flow actions, you need to create one or more standardized API endpoints on your web server. Review the information for each endpoint to understand its requirements, the format of the payload, and the expected response. You'll also learn how to avoid processing duplicate requests, identify an action by its ID, and verify requests for security purposes. - 'Apps must be properly configured to respond to trigger lifecycle callbacks. When a merchant attempts to enable a workflow that uses the trigger, Shopify Flow sends a lifecycle callback to the app''s web server. If it doesn''t promptly receive a response or receives a response with an HTTP status code that isn''t 2xx, then the merchant can''t enable the workflow and make use of the trigger. Note: Legacy trigger discovery webhook extensions created using the Partner Dashboard are deprecated and must migrate to the CLI before they can be edited. How trigger lifecycle callbacks work Trigger lifecycle callbacks contain identifying information about the trigger and the store using it and indicate whether the trigger is being used. You can use this information to track the stores that are currently using your triggers and then send trigger requests to only those stores. Properties' - 'Enter a title and description for the action. In the Action Preview area, you can see how the title and action display to merchants when they''re choosing actions in Shopify Flow. Enter the URL for the action execution endpoint that you created. Shopify Flow sends the action''s JSON payload to this endpoint when it''s about to execute your action. Step 2: Customize a Flow action configuration file In this section you''ll use the default action template and update it to be a functional extension example. Once you have generated a Flow extension using Shopify CLI, follow the instructions below: Change the description to Place a bid on an auction. Update the extensions.runtime_url to an endpoint where you can receive the runtime request. On the second settings.fields field, update the following values: type to number_decimal key to amount name to Bid Amount Add a description property and set it to The amount of the bid' - source_sentence: What type and key are assigned to the second settings.fields field in the configuration? sentences: - '[[settings.fields]] type = "customer_reference" [[settings.fields]] type = "single_line_text_field" key = "your field key" ``` Trigger extension properties Extension properties are listed in the [[extensions]] section and enable you to define the interface between Flow and your event. Property name Description Rules name Required Name of your extension. Will be the merchant-facing name of your task in the editor. This should be something that is human readable. type Required The type of your extension. This should always be set to “flow_trigger” for Flow triggers. - Value must be flow_trigger . handle Required A unique identifier for your extension. This property cannot be changed once you’ve run the dev or deploy command. - Cannot exceed 30 characters. - Must be unique across your app''s extensions. - Must only contain alphanumeric characters and hyphens. description Optional A description of your extension. This description will be shown in the Flow editor navigation panel.' - 'Change the description to Place a bid on an auction. Update the extensions.runtime_url to an endpoint where you can receive the runtime request. On the second settings.fields field, update the following values: type to number_decimal key to amount name to Bid Amount Add a description property and set it to The amount of the bid ```bash [[extensions]] name = "Place Auction Bid" type = "flow_action" handle = "place-bid" description = "Place a bid on an auction" runtime_url = "https://your-server-domain/path/to/action/handler" [settings] [[settings.fields]] type = "customer_reference" required = true [[settings.fields]] type = "number_decimal" key = "amount" name = "Bid Amount" description = "The amount of the bid" required = true ``` Step 3: Configure your web server To build a Shopify Flow action, you need to add a service to your web server to listen for the JSON payload that Shopify Flow sends when the action runs. Optionally, you can also add the following:' - 'To give merchants a more seamless action configuration experience, and to allow them to manage resources that are external to Shopify Flow, you can embed a page from your app in the Shopify Flow editor. In your Shopify Flow action configuration, merchants see a preview with an image and text that''s fetched from your custom configuration page preview URL. Merchants can click the button to access the custom configuration page. Your custom configuration page is then displayed in a frame in the Shopify admin. In this tutorial, you''ll learn how to render a custom configuration page in Shopify Flow, customize the page frame, and access data relevant to your action in the custom configuration page context. Requirements You''ve created a Partner account. You''ve created an app. Resources To implement this feature, you''ll use the following: Shopify App Bridge App Bridge components App Bridge actions specific to the custom configuration page Implementing a custom configuration page' - source_sentence: What is the purpose of updating the description in the flow extension to "Trigger for auction bids"? sentences: - 'The following procedure requires you to have generated a flow extension using Shopify CLI. In this section you''ll use the default trigger template and update it to be a functional extension example. Change description to Trigger for auction bids. On the second [[settings.fields]] field, update: type to number_decimal key to Amount ```bash [[extensions]] name = "Auction Bid Placed" type = "flow_trigger" handle = "auction-bid-placed" description = "Trigger for auction bids." [settings] [[settings.fields]] type = "customer_reference" [[settings.fields]] type = "number_decimal" key = "Amount" ``` Step 3: Enable the draft version of your trigger Running app dev allows changes made to local files to update the draft version of your Flow task extensions. The draft version is only available in your development store.' - 'Custom step descriptions added within the workflow. Adding additional locales Add new .json files prefixed with the locale, for example es.json. Add default to one of the locales to make it the fallback if a merchant''s locale isn''t in the locales you have provided. Example: en.default.json. Step descriptions You can provide translated custom step descriptions by adding a translation key wrapped by curly braces in the step description field. For example, {expressShippingCondition}. Ensure there''s no other characters before or after {yourKey}. After adding this to your workflow, you can update the translation files to include the step description. The following is an example:' - 'Supported field types When you create a trigger, you add the fields that your trigger sends to Shopify Flow in the [settings] section of the TOML file. These fields define what your event plans to send to Shopify Flow. Merchants can then use that data in their conditions and actions. You can add two types of fields: custom fields or predefined reference fields. Reference field types A reference field lets you send the identifier of a Shopify resource to Shopify Flow. This allows merchants to build workflows that use any data related to that resource. For example, your trigger sends a customer ID to Shopify Flow. The merchant can create a condition that checks customer / amountSpent and customer / tags. In their action, the merchant can include the template variables for customers, such as {{customer.email}}. To specify that a trigger will include a reference field, you only need to specify the type and an optional description property. For example: ```bash ... [settings]' - source_sentence: How can you add custom configuration page URLs to your Shopify Flow action configuration? sentences: - 'Custom step descriptions added within the workflow. Adding additional locales Add new .json files prefixed with the locale, for example es.json. Add default to one of the locales to make it the fallback if a merchant''s locale isn''t in the locales you have provided. Example: en.default.json. Step descriptions You can provide translated custom step descriptions by adding a translation key wrapped by curly braces in the step description field. For example, {expressShippingCondition}. Ensure there''s no other characters before or after {yourKey}. After adding this to your workflow, you can update the translation files to include the step description. The following is an example:' - 'Navigate to your app directory. Run the following command to start using draft versions of your extension(s): ```bash !/bin/bash shopify app dev ``` Follow the prompts. Step 4: Test your trigger After the app dev command has started, you can test the draft version of your trigger in Shopify Flow. In your development store, create a workflow that uses the trigger that you created for your app. Using the Admin GraphQL API, send a flowTriggerReceive mutation with the following arguments: The handle of the trigger The payload of the trigger containing the fields defined in the extension TOML The size of the payload (keys included) must be under 50 KB. If the size of the properties body exceeds the limit, then Shopify responds to the GraphQL request with a validation error reading Properties size exceeds the limit of 50000 bytes. As a result, workflows with the specified trigger won''t start from this request. The following is an example of a flowTriggerReceive mutation:' - 'const titleBar = TitleBar.create(app, { title: '''', buttons: { primary: primaryBtn, secondary: [secondaryBtn], }, }) // update buttons after initialization const newPrimary = Button.create(app, { label: ''New button'', }) newPrimary.subscribe(Button.Action.CLICK, () => { console.log(''new primary button clicked'') }) titleBar.set({ buttons: { primary: newPrimary, secondary: [secondaryBtn], }, }) jsx import { TitleBar } from ''@shopify/app-bridge-react'' function Page() { const buttons = { primaryAction: { content: ''Button 1'', onAction: () => { console.log(''button 1 clicked'') }, }, secondaryActions: [ { content: ''Button 2'', onAction: () => { console.log(''button 2 clicked'') }, }, ], } return } ``` Next steps Add custom configuration page preview URL and custom validation endpoints to your app. Add your custom configuration page preview URL, custom configuration page URL, and custom validation URL to your Shopify Flow action configuration.' - source_sentence: How can you access step and property information on the custom configuration page? sentences: - 'Property Data type Description Example flow_trigger_definition_id String The unique identifier for your Shopify Flow trigger. Add row to spreadsheet has_enabled_flow Boolean Whether the store has an enabled workflow that uses your trigger. Valid values: true : There is at least one workflow that is enabled and that uses your trigger. false : There are no enabled workflows that use your trigger. true shop_id Number The unique identifier for the Shopify store. 690933842 shopify_domain String The myshopify domain of the Shopify store. johnsapparel.myshopify.com timestamp ISO 8601 date and timestamp The time when the notification was created. Notifications with newer timestamps should take precedence. If you already have a timestamp in your datastore and you receive a newer timestamp, then overwrite this payload''s information in your datastore. Conversely, if you receive a timestamp that is older than the information in your datastore, then ignore this payload. 2019-01-25T16:44:10.999Z' - 'Implementing a custom configuration page To build a custom configuration page, you''ll use Shopify App Bridge to render a page from your app page in Shopify Flow. From the context of the custom configuration page, you can then access step and property information that you can use to display the appropriate information. You can also add additional buttons to the App Bridge title bar, or trigger a redirect to the previous page. Use Shopify App Bridge to render your app page Note: The specifics of the Custom Configuration Page integration varies between Shopify App Bridge versions. Make sure you implement the integration specific to your Shopify App Bridge version. To render your custom configuration page, you need to integrate Shopify App Bridge on the route that you want to render. To learn about setting up Shopify App Bridge, refer to one of the following pages: Getting started with Shopify App Bridge Getting started with App Bridge React Access action information' - 'To give merchants a more seamless action configuration experience, and to allow them to manage resources that are external to Shopify Flow, you can embed a page from your app in the Shopify Flow editor. In your Shopify Flow action configuration, merchants see a preview with an image and text that''s fetched from your custom configuration page preview URL. Merchants can click the button to access the custom configuration page. Your custom configuration page is then displayed in a frame in the Shopify admin. In this tutorial, you''ll learn how to render a custom configuration page in Shopify Flow, customize the page frame, and access data relevant to your action in the custom configuration page context. Requirements You''ve created a Partner account. You''ve created an app. Resources To implement this feature, you''ll use the following: Shopify App Bridge App Bridge components App Bridge actions specific to the custom configuration page Implementing a custom configuration page' pipeline_tag: sentence-similarity library_name: sentence-transformers metrics: - cosine_accuracy@1 - cosine_accuracy@3 - cosine_accuracy@5 - cosine_accuracy@10 - cosine_precision@1 - cosine_precision@3 - cosine_precision@5 - cosine_precision@10 - cosine_recall@1 - cosine_recall@3 - cosine_recall@5 - cosine_recall@10 - cosine_ndcg@10 - cosine_mrr@10 - cosine_map@100 model-index: - name: SentenceTransformer based on Snowflake/snowflake-arctic-embed-l results: - task: type: information-retrieval name: Information Retrieval dataset: name: Unknown type: unknown metrics: - type: cosine_accuracy@1 value: 0.5416666666666666 name: Cosine Accuracy@1 - type: cosine_accuracy@3 value: 1.0 name: Cosine Accuracy@3 - type: cosine_accuracy@5 value: 1.0 name: Cosine Accuracy@5 - type: cosine_accuracy@10 value: 1.0 name: Cosine Accuracy@10 - type: cosine_precision@1 value: 0.5416666666666666 name: Cosine Precision@1 - type: cosine_precision@3 value: 0.3333333333333333 name: Cosine Precision@3 - type: cosine_precision@5 value: 0.20000000000000004 name: Cosine Precision@5 - type: cosine_precision@10 value: 0.10000000000000002 name: Cosine Precision@10 - type: cosine_recall@1 value: 0.5416666666666666 name: Cosine Recall@1 - type: cosine_recall@3 value: 1.0 name: Cosine Recall@3 - type: cosine_recall@5 value: 1.0 name: Cosine Recall@5 - type: cosine_recall@10 value: 1.0 name: Cosine Recall@10 - type: cosine_ndcg@10 value: 0.8144765845238192 name: Cosine Ndcg@10 - type: cosine_mrr@10 value: 0.75 name: Cosine Mrr@10 - type: cosine_map@100 value: 0.75 name: Cosine Map@100 --- # SentenceTransformer based on Snowflake/snowflake-arctic-embed-l 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. ## Model Details ### Model Description - **Model Type:** Sentence Transformer - **Base model:** [Snowflake/snowflake-arctic-embed-l](https://huggingface.co/Snowflake/snowflake-arctic-embed-l) - **Maximum Sequence Length:** 512 tokens - **Output Dimensionality:** 1024 dimensions - **Similarity Function:** Cosine Similarity ### Model Sources - **Documentation:** [Sentence Transformers Documentation](https://sbert.net) - **Repository:** [Sentence Transformers on GitHub](https://github.com/UKPLab/sentence-transformers) - **Hugging Face:** [Sentence Transformers on Hugging Face](https://huggingface.co/models?library=sentence-transformers) ### Full Model Architecture ``` SentenceTransformer( (0): Transformer({'max_seq_length': 512, 'do_lower_case': False}) with Transformer model: BertModel (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}) (2): Normalize() ) ``` ## Usage ### Direct Usage (Sentence Transformers) First install the Sentence Transformers library: ```bash pip install -U sentence-transformers ``` Then you can load this model and run inference. ```python from sentence_transformers import SentenceTransformer # Download from the 🤗 Hub model = SentenceTransformer("thomfoolery/AIE5-MidTerm-finetuned-embeddings") # Run inference sentences = [ 'How can you access step and property information on the custom configuration page?', "Implementing a custom configuration page\n\nTo build a custom configuration page, you'll use Shopify App Bridge to render a page from your app page in Shopify Flow.\n\nFrom the context of the custom configuration page, you can then access step and property information that you can use to display the appropriate information.\n\nYou can also add additional buttons to the App Bridge title bar, or trigger a redirect to the previous page.\n\nUse Shopify App Bridge to render your app page\n\nNote: The specifics of the Custom Configuration Page integration varies between Shopify App Bridge versions. Make sure you implement the integration specific to your Shopify App Bridge version.\n\nTo render your custom configuration page, you need to integrate Shopify App Bridge on the route that you want to render. To learn about setting up Shopify App Bridge, refer to one of the following pages:\n\nGetting started with Shopify App Bridge\n\nGetting started with App Bridge React\n\nAccess action information", "To give merchants a more seamless action configuration experience, and to allow them to manage resources that are external to Shopify Flow, you can embed a page from your app in the Shopify Flow editor.\n\nIn your Shopify Flow action configuration, merchants see a preview with an image and text that's fetched from your custom configuration page preview URL. Merchants can click the button to access the custom configuration page.\n\nYour custom configuration page is then displayed in a frame in the Shopify admin.\n\nIn this tutorial, you'll learn how to render a custom configuration page in Shopify Flow, customize the page frame, and access data relevant to your action in the custom configuration page context.\n\nRequirements\n\nYou've created a Partner account.\n\nYou've created an app.\n\nResources\n\nTo implement this feature, you'll use the following:\n\nShopify App Bridge\n\nApp Bridge components\n\nApp Bridge actions specific to the custom configuration page\n\nImplementing a custom configuration page", ] embeddings = model.encode(sentences) print(embeddings.shape) # [3, 1024] # Get the similarity scores for the embeddings similarities = model.similarity(embeddings, embeddings) print(similarities.shape) # [3, 3] ``` ## Evaluation ### Metrics #### Information Retrieval * Evaluated with [InformationRetrievalEvaluator](https://sbert.net/docs/package_reference/sentence_transformer/evaluation.html#sentence_transformers.evaluation.InformationRetrievalEvaluator) | Metric | Value | |:--------------------|:-----------| | cosine_accuracy@1 | 0.5417 | | cosine_accuracy@3 | 1.0 | | cosine_accuracy@5 | 1.0 | | cosine_accuracy@10 | 1.0 | | cosine_precision@1 | 0.5417 | | cosine_precision@3 | 0.3333 | | cosine_precision@5 | 0.2 | | cosine_precision@10 | 0.1 | | cosine_recall@1 | 0.5417 | | cosine_recall@3 | 1.0 | | cosine_recall@5 | 1.0 | | cosine_recall@10 | 1.0 | | **cosine_ndcg@10** | **0.8145** | | cosine_mrr@10 | 0.75 | | cosine_map@100 | 0.75 | ## Training Details ### Training Dataset #### Unnamed Dataset * Size: 164 training samples * Columns: sentence_0 and sentence_1 * Approximate statistics based on the first 164 samples: | | sentence_0 | sentence_1 | |:--------|:-----------------------------------------------------------------------------------|:-------------------------------------------------------------------------------------| | type | string | string | | details | | | * Samples: | sentence_0 | sentence_1 | |:--------------------------------------------------------------------------------------------------------|:-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | What is the purpose of templates in Shopify Flow? | How templates work

A template in Shopify Flow is an example workflow that can be copied into a merchant's shop. Templates help merchants automate a specific use case with minimal or no additional configuration. Flow's template library offers hundreds of templates with features to filter, browse, and search. You can create a template for Shopify Flow that showcases your custom triggers and actions and help merchants do more.

Next steps

Follow our step by step guide on creating a Flow template.

Learn more about how localize your template, the approval process, and more in the reference resource
| | How can merchants utilize the template library in Shopify Flow? | How templates work

A template in Shopify Flow is an example workflow that can be copied into a merchant's shop. Templates help merchants automate a specific use case with minimal or no additional configuration. Flow's template library offers hundreds of templates with features to filter, browse, and search. You can create a template for Shopify Flow that showcases your custom triggers and actions and help merchants do more.

Next steps

Follow our step by step guide on creating a Flow template.

Learn more about how localize your template, the approval process, and more in the reference resource
| | What is required for the test web server to successfully send information to Shopify Flow? | Requirements

Make sure that you have the following:

A test web server that you can use to send information to Shopify Flow. You can use an existing web server. This web server needs to be able to send POST requests to Shopify's GraphQL Admin API.

A test app that works with the test web server and can send HTTP requests.

A development store that has Shopify Flow and the test app installed.

Your application has access to the read_customers scope. The trigger you will build using this tutorial will be using a customer reference which requires that scope.

Step 1: Create a Flow trigger extension

To give your Flow action a meaningful name, use the following guidelines:

Use an object acted on + past tense verb format. For example, Auction bid placed.

Use sentence case.

Don't use punctuation.

Separate words using spaces.

Using Shopify CLI

The following steps show how to create a trigger that sends bid information to Shopify Flow when a bid is placed on an auction.
| * Loss: [MatryoshkaLoss](https://sbert.net/docs/package_reference/sentence_transformer/losses.html#matryoshkaloss) with these parameters: ```json { "loss": "MultipleNegativesRankingLoss", "matryoshka_dims": [ 768, 512, 256, 128, 64 ], "matryoshka_weights": [ 1, 1, 1, 1, 1 ], "n_dims_per_step": -1 } ``` ### Training Hyperparameters #### Non-Default Hyperparameters - `eval_strategy`: steps - `per_device_train_batch_size`: 10 - `per_device_eval_batch_size`: 10 - `num_train_epochs`: 10 - `multi_dataset_batch_sampler`: round_robin #### All Hyperparameters
Click to expand - `overwrite_output_dir`: False - `do_predict`: False - `eval_strategy`: steps - `prediction_loss_only`: True - `per_device_train_batch_size`: 10 - `per_device_eval_batch_size`: 10 - `per_gpu_train_batch_size`: None - `per_gpu_eval_batch_size`: None - `gradient_accumulation_steps`: 1 - `eval_accumulation_steps`: None - `torch_empty_cache_steps`: None - `learning_rate`: 5e-05 - `weight_decay`: 0.0 - `adam_beta1`: 0.9 - `adam_beta2`: 0.999 - `adam_epsilon`: 1e-08 - `max_grad_norm`: 1 - `num_train_epochs`: 10 - `max_steps`: -1 - `lr_scheduler_type`: linear - `lr_scheduler_kwargs`: {} - `warmup_ratio`: 0.0 - `warmup_steps`: 0 - `log_level`: passive - `log_level_replica`: warning - `log_on_each_node`: True - `logging_nan_inf_filter`: True - `save_safetensors`: True - `save_on_each_node`: False - `save_only_model`: False - `restore_callback_states_from_checkpoint`: False - `no_cuda`: False - `use_cpu`: False - `use_mps_device`: False - `seed`: 42 - `data_seed`: None - `jit_mode_eval`: False - `use_ipex`: False - `bf16`: False - `fp16`: False - `fp16_opt_level`: O1 - `half_precision_backend`: auto - `bf16_full_eval`: False - `fp16_full_eval`: False - `tf32`: None - `local_rank`: 0 - `ddp_backend`: None - `tpu_num_cores`: None - `tpu_metrics_debug`: False - `debug`: [] - `dataloader_drop_last`: False - `dataloader_num_workers`: 0 - `dataloader_prefetch_factor`: None - `past_index`: -1 - `disable_tqdm`: False - `remove_unused_columns`: True - `label_names`: None - `load_best_model_at_end`: False - `ignore_data_skip`: False - `fsdp`: [] - `fsdp_min_num_params`: 0 - `fsdp_config`: {'min_num_params': 0, 'xla': False, 'xla_fsdp_v2': False, 'xla_fsdp_grad_ckpt': False} - `fsdp_transformer_layer_cls_to_wrap`: None - `accelerator_config`: {'split_batches': False, 'dispatch_batches': None, 'even_batches': True, 'use_seedable_sampler': True, 'non_blocking': False, 'gradient_accumulation_kwargs': None} - `deepspeed`: None - `label_smoothing_factor`: 0.0 - `optim`: adamw_torch - `optim_args`: None - `adafactor`: False - `group_by_length`: False - `length_column_name`: length - `ddp_find_unused_parameters`: None - `ddp_bucket_cap_mb`: None - `ddp_broadcast_buffers`: False - `dataloader_pin_memory`: True - `dataloader_persistent_workers`: False - `skip_memory_metrics`: True - `use_legacy_prediction_loop`: False - `push_to_hub`: False - `resume_from_checkpoint`: None - `hub_model_id`: None - `hub_strategy`: every_save - `hub_private_repo`: None - `hub_always_push`: False - `gradient_checkpointing`: False - `gradient_checkpointing_kwargs`: None - `include_inputs_for_metrics`: False - `include_for_metrics`: [] - `eval_do_concat_batches`: True - `fp16_backend`: auto - `push_to_hub_model_id`: None - `push_to_hub_organization`: None - `mp_parameters`: - `auto_find_batch_size`: False - `full_determinism`: False - `torchdynamo`: None - `ray_scope`: last - `ddp_timeout`: 1800 - `torch_compile`: False - `torch_compile_backend`: None - `torch_compile_mode`: None - `dispatch_batches`: None - `split_batches`: None - `include_tokens_per_second`: False - `include_num_input_tokens_seen`: False - `neftune_noise_alpha`: None - `optim_target_modules`: None - `batch_eval_metrics`: False - `eval_on_start`: False - `use_liger_kernel`: False - `eval_use_gather_object`: False - `average_tokens_across_devices`: False - `prompts`: None - `batch_sampler`: batch_sampler - `multi_dataset_batch_sampler`: round_robin
### Training Logs | Epoch | Step | cosine_ndcg@10 | |:------:|:----:|:--------------:| | 1.0 | 17 | 0.8353 | | 2.0 | 34 | 0.8299 | | 2.9412 | 50 | 0.8507 | | 3.0 | 51 | 0.8507 | | 4.0 | 68 | 0.8353 | | 5.0 | 85 | 0.8452 | | 5.8824 | 100 | 0.8606 | | 6.0 | 102 | 0.8606 | | 7.0 | 119 | 0.8299 | | 8.0 | 136 | 0.8145 | | 8.8235 | 150 | 0.8145 | | 9.0 | 153 | 0.8145 | | 10.0 | 170 | 0.8145 | ### Framework Versions - Python: 3.11.11 - Sentence Transformers: 3.4.1 - Transformers: 4.48.3 - PyTorch: 2.5.1+cu124 - Accelerate: 1.3.0 - Datasets: 3.3.2 - Tokenizers: 0.21.0 ## Citation ### BibTeX #### Sentence Transformers ```bibtex @inproceedings{reimers-2019-sentence-bert, title = "Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks", author = "Reimers, Nils and Gurevych, Iryna", booktitle = "Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing", month = "11", year = "2019", publisher = "Association for Computational Linguistics", url = "https://arxiv.org/abs/1908.10084", } ``` #### MatryoshkaLoss ```bibtex @misc{kusupati2024matryoshka, title={Matryoshka Representation Learning}, 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}, year={2024}, eprint={2205.13147}, archivePrefix={arXiv}, primaryClass={cs.LG} } ``` #### MultipleNegativesRankingLoss ```bibtex @misc{henderson2017efficient, title={Efficient Natural Language Response Suggestion for Smart Reply}, 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}, year={2017}, eprint={1705.00652}, archivePrefix={arXiv}, primaryClass={cs.CL} } ```