新闻
模型
API
keyboard_arrow_down
读取器
读取URL或搜索为大模型提供更好的依据。
向量模型
世界一流的多模态多语言向量模型。
重排器
世界一流的重排器,最大限度地提高搜索相关性。
MCP terminal命令行articlellms.txtsmart_toy代理人data_object模式menu_book文档



登录
login
为隐私和性能而构建
无缝集成和高可扩展性
Azure 入门
教程:搜索歌曲
Jina Embeddings 和 Rerankers:Azure 上的企业级 AI
技术博客
四月 29, 2024

Jina Embeddings 和 Reranker 在 Azure 上:可扩展的企业级 AI 解决方案

Jina Embeddings 和 Rerankers 现已在 Azure Marketplace 上线。重视隐私和安全的企业现在可以在其现有的 Azure 生态系统中轻松集成 Jina AI 的最先进模型。
Futuristic black background with a purple 3D grid, featuring the "Embeddings" and "Reranker" logos with a stylized "A".
Susana Guzmán
Susana Guzmán • 7 分钟的读取量

Jina Embeddings 和 Rerankers 现已在 Azure Marketplace 上线。对于将数据安全和运营效率放在首位的企业来说,这一集成至关重要。

Jina AI 推出全球首个开源 8K 文本嵌入模型,与 OpenAI 展开竞争
Jina AI 推出 jina-embeddings-v2,这是全球首个具有 8K 上下文长度的开源模型。该创新与 OpenAI 的专有模型实力相当,现已在 Huggingface 上公开发布,标志着文本嵌入领域的重要里程碑。
通过 Jina Reranker 最大化搜索相关性和 RAG 准确性
使用 Jina Reranker 提升您的搜索和 RAG 准确性。我们的新模型相比简单向量搜索提高了 20% 的准确性和相关性。现在免费试用!

我们提供七个模型:

  1. Jina Embeddings v2 Base - code
  2. Jina Embeddings v2 Base - de
  3. Jina Embeddings v2 Base - zh
  4. Jina Embeddings v2 Base - es
  5. Jina Embeddings v2 Base - en
  6. Jina Reranker v1 Base - en
  7. Jina Reranker v1 Turbo - en
  8. Jina Reranker v1 Tiny - en
  9. Jina ColBERT v1 - en

tag为隐私和性能而构建

确保您的数据安全是我们的首要任务。我们与 Azure 的合作使我们能够提供满足数据隐私和效率需求的 AI 解决方案。Azure 无与伦比的隐私标准确保了对您数据的最严格保护,使其成为医疗保健、金融和其他需要关键数据保护的行业的可信平台。如果您是 Azure 的现有客户,那么您可以通过现有订阅获得 Jina AI 最先进的嵌入和重排序模型的所有优势。

tag无缝集成和高可扩展性

在 Azure 上部署不仅确保了隐私,还为您提供了与现有 Azure 服务的无缝集成。这提供了平滑的过渡,并允许您扩展 AI 部署,以满足波动的需求,同时不影响性能。

tagAzure 入门

在本教程中,我们将创建一个音乐搜索应用。我们想要使用模糊查询而不是歌曲的确切标题来搜索,这真正考验了我们搜索底座模型的质量。

为此,第一步是在 Azure 上设置所有内容。

tag注册 Azure

确保您拥有带有有效付款方式的 Azure 账户订阅。如果您还没有账户,可以在 Azure 首页注册。

tag在 Azure 上部署 Jina 模型

在 Azure Marketplace 上,您可以通过搜索"jina"找到所有 Jina AI 的嵌入和重排序模型。从中选择最适合您需求的模型。

Screenshot 2024-04-17 at 15.12.54

在部署设置的基本选项卡中,您需要提供有关部署的一些详细信息。默认配置设置为使用四个 CPU 核心和 8GB 内存。根据您的具体需求,您可以调整这些设置以更好地满足您的应用需求。

Screenshot 2024-04-23 at 16.41.29

这将开始部署。可能需要几分钟时间。之后,您应该看到以下屏幕:

Screenshot 2024-04-17 at 15.16.21

您的模型现在已部署并准备使用。

tag教程:搜索歌曲

在本教程中,您将使用 Azure 部署来为流行音乐数据文件集合构建一个基本搜索引擎。

💡
您也可以在 Colab 上跟随本教程或下载它并在您自己的笔记本中运行。

tag加载数据集

from datasets import load_dataset

dataset = load_dataset("sander-wood/wikimusictext")

这将加载 WikiMusicText(WikiMT)数据集。

tag启动 Jina Embeddings v2 和 Reranker 端点

首先,在 Azure 门户中部署嵌入和重排序端点。您需要决定使用哪个区域,并为嵌入服务和重排序服务分别分配一个 DNS 前缀。然后,在下面的代码中将该信息存储在变量 embeddings_url 和 reranker_url 中。

函数 jina_embed 和 jina_rerank 通过向 Azure 上托管的 API 发出请求来生成文本嵌入和执行重排序。

import json

import requests

embeddings_url = "http://<Your DNS prefix>.<Your region>.azurecontainer.io:8080/invocations"
reranker_url = "http://<Your DNS prefix>.<Your region>.azurecontainer.io:8080/invocations"

def jina_embed(text):
    headers = {"Content-Type": "application/json"}
    json_data = {"data": [{"text": text}]}

    response = requests.post(embeddings_url, headers=headers, data=json.dumps(json_data))
    return response.json()["data"][0]["embedding"]

def jina_rerank(query, search_results):
    headers = {"Content-Type": "application/json"}

    json_data = {
        "data": {
            "documents": [
                {"text": search_result[0]} for search_result in search_results
            ],
            "query": query,
            "top_n": 3,
        }
    }

    response = requests.post(reranker_url, headers=headers, data=json.dumps(json_data))
    return response.json()["data"][0]["results"]

tag加载数据集

这些数据是为 AI 模型训练所收集的,因此将数据分为训练集和测试集。为简单起见,在本教程中我们只使用训练数据。以下代码将训练数据转换为 pandas DataFrame:

ds = dataset['train']
input_df = ds.dataset.to_pandas()

tag生成嵌入并在 FAISS 中创建索引

此函数处理文本数据并以嵌入的形式提取特征。这将需要一些时间。

import numpy as np
from tqdm import tqdm

tqdm.pandas()


def generate_embeddings(input_df):
    all_embeddings = []

    for t in input_df.text:
        review_embeddings = []
        all_embeddings.append(np.array(jina_embed(t)))

    input_df["embeddings"] = all_embeddings

    return input_df


enhanced_dataframe = generate_embeddings(input_df)

此代码遍历 DataFrame 的 text 列中的每个条目,并调用 jina_embed() 获取嵌入。我们将嵌入以 NumPy 数组的形式存储在 all_embeddings 列表中。然后将它们添加到 DataFrame 的一个名为 embeddings 的新列中。

我们可以通过打印 enhanced_dataframe 的值来可视化我们刚才所做的事情:

Screenshot 2024-04-22 at 12.39.07

最后一列以可读形式包含了嵌入。

现在我们需要创建一个 FAISS(Facebook AI Similarity Search)索引来存储和搜索嵌入:

import faiss

dim = 768  # dimension of Jina v2 embeddings
index_with_ids = faiss.IndexIDMap(faiss.IndexFlatIP(dim))

for idx, row in enhanced_dataframe.iterrows():
    embeddings = row["embeddings"]
    normalized_embedding = np.ascontiguousarray(
        np.array(embeddings, dtype="float32").reshape(1, -1)
    )
    faiss.normalize_L2(normalized_embedding)
    index_with_ids.add_with_ids(normalized_embedding, idx)

此代码还对嵌入向量进行归一化,以简化和加快搜索速度。

tag检索查询的匹配项

函数 find_similar_texts 在您刚刚创建的索引中搜索最接近的匹配项:

def find_similar_texts(query, n=20):
    query_embedding = jina_embed(query)
    query_embedding = np.ascontiguousarray(
        np.array(query_embedding, dtype="float32").reshape(1, -1)
    )
    faiss.normalize_L2(query_embedding)

    similarities, indices = index_with_ids.search(query_embedding, n)

    results = []
    for i in range(n):
        similarity = similarities[0][i]
        index_id = indices[0][i]
        results.append((enhanced_dataframe.loc[index_id, "text"], similarity))

    return results

tag重排序以获取最相关的匹配项

从 FAISS 索引检索结果后,我们将把结果集发送到 jina_rerank 函数,为所有答案分配相关性分数,并返回按相关性排序的结果列表。

让我们使用一个需要大量语义理解的查询来测试我们的解决方案:

query = "What are some jazz songs that reached the top of the music charts in 1960s?"
search_results = find_similar_texts(query)

most_relevant_results = jina_rerank(query, search_results)
pprint.pprint(most_relevant_results)

以下是最相关的结果:

[{'id': 'c26a67d979cb73474e9f80221b14b5c9',
  'index': 0,
  'document': {'id': 'd2183fd857661fbf9ca60a22e91888a0',
   'text': 'An instrumental version by Heywood and Hugo Winterhalter reached No. 2 on the Billboard Hot 100 chart and No. 7 on the R&B chart in 1956. A version sung by Andy Williams was also popular that year. The tune has been covered by a number of jazz performers beginning in the 1960s.'},
  'relevance_score': 0.7132052183151245,
  'usage': {'id': '037b9d22a5f13b68258ab51cbab1a7ad', 'total_tokens': 64}},
 {'id': 'a9205e69a4e76ca49717b8497a2798bf',
  'index': 4,
  'document': {'id': '25e78e92da17f01df111a7ed2716b057',
   'text': '"Take Five" is a jazz standard composed by Paul Desmond and originally recorded by the Dave Brubeck Quartet for their album Time Out on July 1, 1959. Two years later it became a surprise hit and the biggest-selling jazz single ever. The single was inducted into the Grammy Hall of Fame in 1996. It became the first jazz single to surpass a million in sales.'},
  'relevance_score': 0.204337015748024,
  'usage': {'id': '6d55f32b339b83350ffb9489fbf31f5d', 'total_tokens': 80}},
 {'id': '50a610653b307f6f1ae6ec796b72ca83',
  'index': 9,
  'document': {'id': '70278633234c32775b1a28b364f6783a',
   'text': 'Oh, You Crazy Moon is a jazz standard by Jimmy Van Heusen, with lyrics by Johnny Burke. It was recorded by Mel Torme in 1960 and Frank Sinatra in 1965.'},
  'relevance_score': 0.16270869970321655,
  'usage': {'id': '79eabc46bf3c659d3ad3e4d4d7e7a8f2', 'total_tokens': 40}}]

就是这样了。您可以尝试使用不同的查询,看看会得到什么样的结果。

tagJina Embeddings 和 Rerankers:Azure 上的企业级 AI

Jina AI 致力于为企业带来最先进的 AI,用于企业所需的实际应用。将我们的模型放在 Azure Marketplace 上消除了将 AI 添加到业务流程的障碍,使集成变得简单,并作为现有 Azure 计划的一部分对您计费。

我们重视所有正在使用或考虑使用 Jina Embeddings 和 Jina Reranker 的用户的意见。您可以通过我们的网站联系我们,或加入我们的 Discord 频道分享反馈,并及时了解 Jina AI 快速发展的产品。我们相信包容性的 AI 生态系统,很乐意与您讨论您的使用场景。

Jina AI - Your Search Foundation, Supercharged.
Jina AI offers best-in-class embeddings, reranker and prompt optimizer, enabling advanced multimodal AI.
Your Search Foundation, Supercharged.
Join the Jina AI Discord Server!
Check out the Jina AI community on Discord - hang out with 4981 other members and enjoy free voice and text chat.
Discord
类别:
技术博客
rss_feed

更多新闻
三月 11, 2026 • 7 分钟的读取量
从多模态大模型中引导音频向量模型
Han Xiao
Abstract illustration of a sound wave or heartbeat, formed by blue, orange, and gray dots on a white background.
三月 06, 2026 • 6 分钟的读取量
通过原始数值识别向量模型
Han Xiao
Fingerprint illustration made from numbers, showcasing digital and high-tech design on a light background.
九月 09, 2025 • 11 分钟的读取量
Llama.cpp 和 GGUF 中的多模态向量模型
Andrei Ungureanu
Alex C-G
Cartoon llama in the center of a white background, emitting laser-like beams from its eyes. The illustration creates a playfu
办公室
location_on
加利福尼亚州桑尼维尔
710 Lakeway Dr, Ste 200, 桑尼维尔, 加州 94085, 美国
location_on
德国柏林
Prinzessinnenstraße 19-20,10969 柏林,德国
搜索底座
读取器
向量模型
重排器
获取 Jina API 密钥
速率限制
API 状态
公司
关于我们
联系销售
新闻
实习生项目
下载 Jina 标志
open_in_new
下载 Elastic 徽标
open_in_new
条款
安全
条款及条件
隐私
管理 Cookie
email
Elastic Jina AI © 2020-2026.