{ "cells": [ { "cell_type": "markdown", "id": "900fbd04-f6aa-4813-868f-1c54e3265385", "metadata": {}, "source": [ "# LASER Language-Agnostic SEntence Representations Embeddings by Meta AI\n", "\n", ">[LASER](https://github.com/facebookresearch/LASER/) is a Python library developed by the Meta AI Research team and used for creating multilingual sentence embeddings for over 147 languages as of 2/25/2024 \n", ">- List of supported languages at https://github.com/facebookresearch/flores/blob/main/flores200/README.md#languages-in-flores-200" ] }, { "attachments": {}, "cell_type": "markdown", "id": "2a773d8d", "metadata": {}, "source": [ "## Dependencies\n", "\n", "To use LaserEmbed with LangChain, install the `laser_encoders` Python package." ] }, { "cell_type": "code", "execution_count": null, "id": "91ea14ce-831d-409a-a88f-30353acdabd1", "metadata": { "tags": [] }, "outputs": [], "source": [ "%pip install laser_encoders" ] }, { "attachments": {}, "cell_type": "markdown", "id": "426f1156", "metadata": {}, "source": [ "## Imports" ] }, { "cell_type": "code", "execution_count": 2, "id": "3f5dc9d7-65e3-4b5b-9086-3327d016cfe0", "metadata": { "tags": [] }, "outputs": [], "source": [ "from langchain_community.embeddings.laser import LaserEmbeddings" ] }, { "cell_type": "markdown", "id": "8c77b0bb-2613-4167-a204-14d424b59105", "metadata": {}, "source": [ "## Instantiating Laser\n", " \n", "### Parameters\n", "- `lang: Optional[str]`\n", " >If empty will default\n", " to using a multilingual LASER encoder model (called \"laser2\").\n", " You can find the list of supported languages and lang_codes [here](https://github.com/facebookresearch/flores/blob/main/flores200/README.md#languages-in-flores-200)\n", " and [here](https://github.com/facebookresearch/LASER/blob/main/laser_encoders/language_list.py)\n", "." ] }, { "cell_type": "code", "execution_count": null, "id": "6fb585dd", "metadata": { "tags": [] }, "outputs": [], "source": [ "# Ex Instantiationz\n", "embeddings = LaserEmbeddings(lang=\"eng_Latn\")" ] }, { "cell_type": "markdown", "id": "119fbaad-9442-4fff-8214-c5f597bc8e77", "metadata": {}, "source": [ "## Usage\n", "\n", "### Generating document embeddings" ] }, { "cell_type": "code", "execution_count": null, "id": "62920051-cbd2-460d-ba24-0424c1ed395d", "metadata": {}, "outputs": [], "source": [ "document_embeddings = embeddings.embed_documents(\n", " [\"This is a sentence\", \"This is some other sentence\"]\n", ")" ] }, { "cell_type": "markdown", "id": "7fd10d96-baee-468f-a532-b70b16b78d1f", "metadata": {}, "source": [ "### Generating query embeddings" ] }, { "cell_type": "code", "execution_count": null, "id": "9f793bb6-609a-4a4a-a5c7-8e8597228915", "metadata": {}, "outputs": [], "source": [ "query_embeddings = embeddings.embed_query(\"This is a query\")" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.10.12" } }, "nbformat": 4, "nbformat_minor": 5 }