如何使用OpenAI进行embedding句子后,输入新句子比较

2023-11-15

import openai
import numpy as np
from sklearn.metrics.pairwise import cosine_similarity


# Set up OpenAI API credentials
openai.api_key = 'YOUR_API_KEY'
response=openai.Embedding.create(
  model="text-embedding-ada-002",
  input="The food was delicious and the waiter..."
)
print(response)


# Define the sentences to be embedded and sorted
sentences = [
    "How to use ChatGPT for sentence embedding?",
    "What are the applications of sentence embedding?",
    "Can you provide examples of sentence embedding?",
    "What is the best approach for sentence embedding?"
]

# Define a new sentence for similarity comparison
new_sentence = "How does sentence embedding work?"

# Preprocess and generate the embeddings
embeddings = []
for sentence in sentences:


    response = openai.Embedding.create(
        model="text-embedding-ada-002",
        input=sentence
    )
    embedding = response.data[0].embedding
    embeddings.append(embedding)

# Convert embeddings to numpy array
embeddings = np.array(embeddings)

# Calculate pairwise cosine similarity
similarity_matrix = cosine_similarity(embeddings)

# Sort sentences based on similarity to the first sentence
sorted_indices = np.argsort(similarity_matrix[:, 0])[::-1]
sorted_sentences = [sentences[i] for i in sorted_indices]


response = openai.Embedding.create(
    model="text-embedding-ada-002",
    input=new_sentence
)
new_embedding = response.data[0].embedding

# Calculate cosine similarity of the new embedding with existing embeddings
similarity_scores = cosine_similarity([new_embedding], embeddings)[0]

# Sort the indices based on similarity scores
sorted_indices = np.argsort(similarity_scores)[::-1]

# Retrieve the most similar sentence
most_similar_sentence = sentences[sorted_indices[0]]

# Print the sorted sentences and the most similar sentence
print("Sorted Sentences:")
for sentence in sorted_sentences:
    print(sentence)

print("\nMost Similar Sentence:")
print(most_similar_sentence)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用OpenAI进行embedding句子后,输入新句子比较 的相关文章

  • 检测骰子的上侧

    是否可以检测骰子的上面 虽然从顶部看这将是一项简单的任务 但从许多角度来看 可以看到多个侧面 Here is an example of a dice feel free to take your own pictures 您通常想知道自己
  • matplotlib:调整图形窗口大小而不缩放图形内容

    当您调整图形大小时 Matplotlib 会自动缩放图形窗口中的所有内容 通常这是用户想要的 但我经常想增加窗口的大小 为其他东西腾出更多空间 在这种情况下 我希望在更改窗口大小时预先存在的内容保持相同的大小 有谁知道一个干净的方法来做到这
  • 如何将 Google Cloud Storage 中的许多文件设为私有?

    我进行了很多研究 但无法为此提出解决方案 以下是我用来在 GCP 中公开所有文件的代码 def make blob public bucket name blob name Makes a blob publicly accessible
  • 测试交互式Python程序

    我想知道python的哪些测试工具支持交互式程序的测试 例如 我有一个由以下人员启动的应用程序 python dummy program py gt gt Hi whats your name Joseph 我想要仪器Joseph所以我可以
  • 从 Django 基于类的视图的 form_valid 方法调用特殊(非 HTTP)URL

    如果你这样做的话 有一个 HTML 技巧 a href New SMS Message a 点击新短信打开手机的本机短信应用程序并预 先填写To包含所提供号码的字段 在本例中为 1 408 555 1212 以及body与提供的消息 Hel
  • 如何使用 Twython 将 oauth_callback 值传递给 oauth/request_token

    Twitter 最近刚刚强制执行以下规定 1 您必须通过oauth callbackoauth request token 的值 这不是可选的 即使您已经在 dev twitter com 上设置了一个 如果您正在执行带外 OAuth 请通
  • 无法使用 Python 循环分页 API 响应

    所以 我对这个感到摸不着头脑 使用 HubSpot 的 API 我需要获取我客户的 门户 帐户 中所有公司的列表 遗憾的是 标准 API 调用一次只能返回 100 家公司 当它返回响应时 它包含两个参数 使分页响应成为可能 其中之一是 ha
  • 如何在seaborn中绘制离散变量的分布图

    当我画画的时候displot对于离散变量 分布可能不像我想象的那样 例如 We can find that there are crevices in the barplot so that the curve in kdeplot is
  • 如何在python mechanize中设置cookie

    向服务器发送请求后 br open http xxxx br select form nr 0 br form MESSAGE 1 2 3 4 5 br submit 我得到了响应标题 其中包含 set cookie Set Cookie
  • 如何在每次运行 python 程序时添加新列

    我希望我的表的第一列作为卷号 第二列作为名称 每当我运行 python 程序时 我想在表中添加一列日期 在这个新列中 我想填充从 user list 获得的列表将包含值 P A P P 等 如何处理 我尝试首先通过 alter 命令添加一列
  • 为什么在 __init__ 函数中声明描述符类会破坏描述符功能?

    在下面的 B 类中 我想要 set 每当您赋值给 A 类中的函数时 就会调用该函数B a 相反 将值设置为B a覆盖B a与价值 C类分配给C a工作正常 但我想为每个用户类都有一个单独的 A 实例 即我不想在 C 的一个实例中更改 a 来
  • 如何不断地将 STDOUT 发送到我的 python TCP 服务器?

    我有简单的 python echo 服务器 它使用套接字 并向客户端回显随机数 我有另一个程序 每 2 秒将值打印到标准输出 如果它只是一个脚本 我可以像这样重定向 stdout python script py 并像这样在脚本中获取它da
  • 如何使用 numpy 从一维数组创建对角矩阵?

    我正在使用 Python 和 numpy 来做线性代数 我表演了numpy对矩阵进行 SVD 以获得矩阵 U i 和 V 然而 i 矩阵表示为 1 行的 1x4 矩阵 IE 12 22151125 4 92815942 2 06380839
  • Python:绘制甘特图的模块

    有没有一个好的Python绘图模块甘特图 http en wikipedia org wiki Gantt chart 我试过了开罗情节 http linil wordpress com 2008 09 16 cairoplot 11 但它
  • python lxml 使用iterparse编辑并输出xml

    我已经在 lxml 库上摆弄了一段时间了 也许我没有正确理解它 或者我错过了一些东西 但我似乎无法弄清楚在捕获某个 xpath 后如何编辑文件并且然后能够在逐个元素解析时将其写回到 xml 中 假设我们有这个 xml 作为示例
  • Django - 使 ModelForm(ImageField 的)仅接受某些类型的图像

    我将 Pillow 2 3 0 与 Django 一起使用 并且在 models py 中有一个 ImageField 如下所示 class UserImages models Model user models ForeignKey Us
  • Python Tkinter 网格复选框

    我想知道是否有一种简单的方法可以使用 Tkinter 创建复选框网格 我正在尝试制作一个由 10 行和 10 列 即 100 个复选框 组成的网格 以便每行只能选择两个复选框 编辑 我正在使用带有spyder的python 2 7 到目前为
  • 如何在python中访问矩阵每个元素的相邻单元格?

    这里 如果两个单元共享边界 则它们被认为是相邻的 例如 A 5 6 4 2 1 3 7 9 8 这里 索引 0 0 的相邻元素位于索引 0 1 和 1 0 处 索引 1 1 的相邻元素位于索引 0 1 1 0 2 1 处 和 1 2 假设你
  • 重写 PyGObject 中的虚拟方法

    我正在尝试实施高宽几何管理 http developer gnome org gtk3 3 2 GtkWidget html geometry management在 GTK 和 Python 中用于我的自定义小部件 我的小部件是来自的子类
  • 如何正确将 tflite_graph.pb 转换为 detector.tflite

    我正在使用tensorflow对象检测API使用tensorflow中的ssdlite mobilenet v2 coco 2018 05 09来训练自定义模型模型动物园 https github com tensorflow models

随机推荐

  • Java 实现 MD5 加密算法

    1 MD5 加密算法 1 1 MD5 算法介绍 MD5 消息摘要算法 英文 MD5 Message Digest Algorithm 一种被广泛使用的密码散列函数 可以产生出一个128位 16字节 的散列值 hash value 用于确保信
  • 子图匹配算法——VF2算法讲解

    讲的很通透了 https zhuanlan zhihu com p 259393192
  • CSS五款超好用的布局网站

    CSS Grid Generator https cssgrid generator netlify app CSS Layout https csslayout io Flexbox Generator https loading io
  • vtkdicom0.8_vtk9.2_dcmtk3.6.7_qt6.2编译OK

    目录 0 结果展示 1 cmake要点 2 编译报错解决 3 参考链接 0 结果展示
  • 吃透Chisel语言.23.Chisel时序电路(三)——Chisel移位寄存器(Shift Register)详解

    Chisel时序电路 三 Chisel移位寄存器 Shift Register 详解 上一篇文章介绍了Chisel计数器以及一些高级用法 内容很多 学下来肯定收获也会很多 除了计数器以外 还有一种寄存器的应用十分广泛 那就是移位寄存器 这一
  • Linux Test Project(一)

    http www vimlinux com lipeng 2014 09 12 ltp Testing Linux one syscall at a time LTP是从SGI开始的 后由IBM 思科 富士通 SUSE Redhat等组织开
  • Java多线程下 ThreadLocal 的应用实例

    ThreadLocal很容易让人望文生义 想当然地认为是一个 本地线程 其实 ThreadLocal并不是一个 Thread 而是 Thread 的局部变量 也许把它命名为 ThreadLocalVariable更容易让人理解一些 当使用
  • jQuery Ajax 初始化方法

    ajaxSetup headers Authorization auth token cache false 禁用缓存 dataType json contentType application json contentType appli
  • 《深入理解java虚拟机》笔记

    深入理解java虚拟机 走进java java不仅仅是一门编程语言 还是一个由一系列计算机软件和规范形成的技术体系 她有以下优点 结构严谨 面向对象 摆脱硬件平台的限制 实现了一次编写 到处运行 提供了一个相对安全的内存管理和访问机制 有一
  • 面向文本和视觉线索联合推断的多模态上下文推理方法

    点击蓝字 关注我们 AI TIME欢迎每一位AI爱好者的加入 报告题目 面向文本和视觉线索联合推断的多模态上下文推理方法 内容简介 联合文本和视觉线索条件推理任务是一项复杂多模态推理任务 其中 文本线索提供与视觉内容互补的先验假设或者外部知
  • 学习笔记-创建赫夫曼树

    赫夫曼树 给定 n 个权值作为 n 个叶子结点 构造一棵二叉树 若该树的带权路径长度 wpl 达到最小 称这样的二叉树为最优二叉树 也称为哈夫曼树 Huffman Tree 还有的书翻译为霍夫曼树 赫夫曼树是带权路径长度最短的树 权值较大的
  • 学会项目成本管理计算,PMP计算题就是送分题

    学会项目成本管理计算 PMP计算题就是送分题 PMP中的计算主要在 lt 项目成本管理 gt 的控制成本部分 服务于挣值管理 EVM Earned Value Management 挣值分析 EVA Earned Value Analysi
  • 【知识图谱】基本概念&数据&综合应用&具体使用

    知识图谱 基本概念 数据 综合应用 具体使用 1 基本概念 1 1知识图谱组成 1 2 应用 1 2 1 应用一 医疗领域方向检索 1 2 2 应用二 金融领域反欺诈 金融知识图谱 1 2 3 推荐系统 2 数据 2 1 文本数据 2 2
  • vtk.js+react 实现ArrowSource 平移,缩放,旋转

    vtk js react 实现ArrowSource 平移 缩放 旋转 MatrixBuilder 矩阵构造器 ArrowSource 箭头 实现代码 MatrixBuilder 矩阵构造器 实现方法主要使用到的APIMatrixBuild
  • 扩散模型实战(三):扩散模型的应用

    推荐阅读列表 扩散模型实战 一 基本原理介绍 扩散模型实战 二 扩散模型的发展 扩散只是一种思想 扩散模型也并非固定的深度网络结构 除此之外 如果将扩散的思想融入其他领域 扩散模型同样可以发挥重要作用 在实际应用中 扩散模型最常见 最成熟的
  • 云存储服务器的安装文件,云存储服务器的安装文件

    云存储服务器的安装文件 内容精选 换一换 安装传输工具在本地主机和Windows云服务器上分别安装数据传输工具 将文件上传到云服务器 例如QQ exe 在本地主机和Windows云服务器上分别安装数据传输工具 将文件上传到云服务器 例如QQ
  • 【三维重建】Ubuntu18.04安装COLMAP

    Ubuntu18 04安装COLMAP 文章目录 Ubuntu18 04安装COLMAP 前言 安装COLMAP 安装CUDA cuDNN 安装依赖项 安装Ceres优化库 安装glog 可选 配置并编译COLMAP 运行COLMAP 总结
  • 数据结构-线性表之堆栈

    什么是栈 是一种数据结构 能够实现后进先出的一种业务场景 即栈中的元素被处理时 按后进先出的顺序进行 所以栈又叫做后进先出表 LIFO 例子 生活中的叠放在厨房桌子上的碗就是一种栈结构 放的时候只能把碗放在最上面 取的时候只能从最上面开始取
  • python+Visual studio code配置Selenium环境

    python Visual studio code配置Selenium环境 使用pip命令安装selenium Visual studio code控制台中直接输入 python m pip install selenium 查看是否安装s
  • 如何使用OpenAI进行embedding句子后,输入新句子比较

    import openai import numpy as np from sklearn metrics pairwise import cosine similarity Set up OpenAI API credentials op