{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# MiniMax\n", "\n", "[MiniMax](https://api.minimax.chat/document/guides/embeddings?id=6464722084cdc277dfaa966a) offers an embeddings service.\n", "\n", "This example goes over how to use LangChain to interact with MiniMax Inference for text embedding." ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "ExecuteTime": { "end_time": "2023-05-24T15:13:15.397075Z", "start_time": "2023-05-24T15:13:15.387540Z" } }, "outputs": [], "source": [ "import os\n", "\n", "os.environ[\"MINIMAX_GROUP_ID\"] = \"MINIMAX_GROUP_ID\"\n", "os.environ[\"MINIMAX_API_KEY\"] = \"MINIMAX_API_KEY\"" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "ExecuteTime": { "end_time": "2023-05-24T15:13:17.176956Z", "start_time": "2023-05-24T15:13:15.399076Z" } }, "outputs": [], "source": [ "from langchain.embeddings import MiniMaxEmbeddings" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "ExecuteTime": { "end_time": "2023-05-24T15:13:17.193751Z", "start_time": "2023-05-24T15:13:17.182053Z" } }, "outputs": [], "source": [ "embeddings = MiniMaxEmbeddings()" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "ExecuteTime": { "end_time": "2023-05-24T15:13:17.844903Z", "start_time": "2023-05-24T15:13:17.198751Z" } }, "outputs": [], "source": [ "query_text = \"This is a test query.\"\n", "query_result = embeddings.embed_query(query_text)" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "ExecuteTime": { "end_time": "2023-05-24T15:13:18.605339Z", "start_time": "2023-05-24T15:13:17.845906Z" } }, "outputs": [], "source": [ "document_text = \"This is a test document.\"\n", "document_result = embeddings.embed_documents([document_text])" ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "ExecuteTime": { "end_time": "2023-05-24T15:13:18.620432Z", "start_time": "2023-05-24T15:13:18.608335Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Cosine similarity between document and query: 0.1573236279277012\n" ] } ], "source": [ "import numpy as np\n", "\n", "query_numpy = np.array(query_result)\n", "document_numpy = np.array(document_result[0])\n", "similarity = np.dot(query_numpy, document_numpy) / (\n", " np.linalg.norm(query_numpy) * np.linalg.norm(document_numpy)\n", ")\n", "print(f\"Cosine similarity between document and query: {similarity}\")" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "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.11.3" } }, "nbformat": 4, "nbformat_minor": 2 }