Elasticsearch 开放推理 API 增加了对 Google AI Studio 的支持

作者:来自 Elastic Jeff Vestal

我们很高兴地宣布 Elasticsearch 的开放推理 API 支持 Gemini 开发者 API。使用 Google AI Studio 时,开发者现在可以与 Elasticsearch 索引中的数据进行聊天、运行实验并使用 Google Cloud 的模型(例如 Gemini 1.5 Flash)构建应用程序。AI Studio 是 Google 发布 Google DeepMind 最新模型的地方,也是使用 Gemini 开始构建的最快方式。

在此博客中,我们将创建一个新的 Google AI Studio 项目,创建一个 Elasticsearch 推理 API 端点以使用 Gemini 1.5 Flash,并实现一个示例聊天应用程序来估计美式足球场上可以容纳多少只鸭子!(为什么不呢?)

AI Studio API 密钥

首先,我们需要为 AI Studio 创建一个 API 密钥。前往 ai.google.dev/aistudio 并点击 "Sign In to Google AI Studio."。

如果你尚未登录,系统将提示你登录。登录后,你将看到两个选项:在浏览器中使用 AI Studio 测试 Gemini 提示或创建 API 密钥。我们将创建一个 API 密钥以允许 Elasticsearch 连接到 AI Studio。

首次创建 API 密钥时,系统会提示你接受 Google Cloud 的条款和条件。如果你使用个人帐户,你将可以选择在新项目中创建 API 密钥。如果你使用企业帐户,则可能看不到该选项,具体取决于你的访问角色。无论哪种方式,你都可以选择现有项目来创建密钥。

选择现有项目或创建新项目。

将生成的 API 密钥复制到安全的地方,以便在下一部分中使用。

Elasticsearch 推理 API

我们将使用 Python 配置 Inference API 以连接到 Google AI Studio 并使用 Gemini 测试 chat completion。

创建推理端点

创建 Elasticsearch 连接。

复制代码
es = Elasticsearch(
    elasticsearch_url, 
    api_key=elasticsearch_api_key
)

创建推理端点以连接到 Google AI Studio。对于本博客,我们将使用 Gemini 1.5 Flash 模型。有关可用模型的列表,请参阅 Gemini 文档。

复制代码
inference_id = "google_ai_studio"

model_config = {
    "service": "googleaistudio",
    "service_settings": {
        "api_key": google_ai_studio_api_key,
        "model_id": google_ai_studio_model_id
    }
}

# Create the endpoint
create_endpoint = es.inference.put(
      inference_id=inference_id, 
      task_type="completion",
      body=model_config
  )

确认端点已创建。

复制代码
inf_info = es.inference.get(inference_id=inference_id)
print(inf_info.body)

输出应类似于:

复制代码
{'endpoints': [{'model_id': 'google_ai_studio',
   'inference_id': 'google_ai_studio',
   'task_type': 'completion',
   'service': 'googleaistudio',
   'service_settings': {'model_id': 'gemini-1.5-flash',
    'rate_limit': {'requests_per_minute': 360}},
   'task_settings': {}}]}

聊天时间到了!

这就是创建 Elasticsearch API 端点以访问 Google AI Studio 所需的全部步骤!完成后,你就可以开始使用它了。

我们将要求它估计一个美式足球场上可以容纳多少只鸭子。 为什么? 为什么不呢。

复制代码
response = es.inference.inference(     
    inference_id=inference_id, 
    body={"input": "hello"}
  )

print(response.body['completion'][0]['result'])

响应:

复制代码
It's impossible to give an exact number of ducks that could fit on an American football field without some crucial information:

* **Duck size:**  Ducks come in various sizes. Are we talking about mallards, Muscovy ducks, or something else? 
* **Duck behavior:** Ducks aren't neatly arranged like bricks. They'll move around, jostle, and likely try to escape. This makes packing them tightly impossible.
* **Field conditions:** Are we talking about a dry field, or one with mud and water? This impacts how ducks can stand and move.

**Here's a more helpful approach:**

* **Area:** An American football field is 100 yards long and 53 1/3 yards wide, for a total area of 5,333 square yards.
* **Duck size:** Let's assume a typical mallard duck is about 2 feet long and 1 foot wide. This gives us a rough area of 2 square feet per duck.
* **Packing density:** Even if we could perfectly pack ducks, we'd need to allow for some space between them. Let's be generous and assume we can fit 4 ducks per square yard. 

**Calculation:**

* 5,333 square yards * 4 ducks/square yard = **21,332 ducks**

**However, this is a highly unrealistic estimate.** In reality, you'd likely be able to fit far fewer ducks due to their movement and the need for space.

**It's more fun to imagine the chaos of trying to fit that many ducks on a field!** 🦆🦆🦆

简单而强大

随着 Google AI Studio 的加入,Elastic 开放推理 API 为开发者提供了越来越多强大的生成式 AI 功能。Google AI Studio 旨在实现简单、快速的生成式 AI 实验,以测试你的最佳想法。

准备好自己尝试了吗?开始免费试用。

想要获得 Elastic 认证?了解下一期 Elasticsearch 工程师培训何时开始!

原文:Elasticsearch open inference API adds support for Google AI Studio --- Search Labs

相关推荐
西木莉8 小时前
人机协同:无人机航拍大数据助力灾害应急评估
大数据·无人机
空堂与归8 小时前
百度开源 LoopVL:1B 循环视觉模型省 260 倍数据
人工智能·百度·ai·开源
东莞和裕包装8 小时前
怎么判断一个纸箱能不能满足长途海运要求?核心看哪几个性能指标?
大数据
哔哩哔哩技术8 小时前
Index-Translate:支持 150 种语言的多模态翻译模型是如何炼成的?
人工智能
sinat_286945198 小时前
Claude Code Review
人工智能·代码复审
ly76898 小时前
PostgreSQL 执行计划深读:从 EXPLAIN 输出到代价模型驱动的 SQL 改写
数据库·sql·postgresql·explain·执行计划·代价模型
尘世中一位迷途小书童8 小时前
词表(tokenizer),一个开训就改不了的决定
人工智能
Tiandaren8 小时前
么是agent、为什么要做agent、怎么做agent、怎么工程化
人工智能·python·深度学习·大模型
四六的六8 小时前
一次改回去越界的沙箱复盘:配置恢复了,token 还活着,检测器漏了最关键的那条
人工智能·openai·agent·个人开发·ai编程·ai大模型·ai产品
Daneas8 小时前
AI文生图提示词生成器(SD 1.5、SDXL、Flux、Krea-2)
人工智能