Token导航 LogoToken导航TokenDH.com
研究检索操作浏览器github未标认证来源可访问许可证需确认审计提醒

eino-component埃诺组件

Agent Skill

eino-component 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

1,853

周安装

78

GitHub Stars

685

下载量

649
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:eino-component(埃诺组件)
来源仓库:https://github.com/cloudwego/eino-ext
仓库路径:skills/eino-component
安装命令:
npx skills add https://github.com/cloudwego/eino-ext --skill eino-component
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/cloudwego/eino-ext --skill eino-component

简介

Eino 框架组件选型与使用指南。

  • 涵盖 ChatModel、Embedding、Tool 等核心组件。
  • 支持 OpenAI、Claude、Gemini、Ollama 等多种模型。
  • 提供 Provider Package 配置和使用示例。
  • eino-component 属于研究检索类 Skill,可作为该场景下的辅助能力补充。

SKILL.md

Eino Component Guide

Component Selection Guide

ChatModel -- LLM inference

ProviderPackageNotes
OpenAImodel/openaiAlso supports Azure via ByAzure: true
Claudemodel/claudeAlso supports AWS Bedrock via ByBedrock: true
Geminimodel/geminiRequires genai.Client
Ark (Volcengine)model/arkDoubao models
Ollamamodel/ollamaLocal models
DeepSeekmodel/deepseekReasoning support
Qwenmodel/qwenAlibaba DashScope API
Qianfanmodel/qianfanBaidu ERNIE models
OpenRoutermodel/openrouterMulti-provider routing

Embedding -- text to vector

ProviderPackageNotes
OpenAIembedding/openaitext-embedding-3-small/large, ada-002
Arkembedding/arkVolcengine embedding models
Geminiembedding/geminiGoogle embedding models
DashScopeembedding/dashscopeAlibaba embedding
Ollamaembedding/ollamaLocal embedding models
Qianfanembedding/qianfanBaidu embedding

Retriever -- vector/keyword search

BackendPackageNotes
Redisretriever/redisKNN and range vector search
Milvus 2.xretriever/milvus2Dense + sparse hybrid, BM25
Elasticsearch 8retriever/es8Approximate vector search
Qdrantretriever/qdrantVector similarity search

Indexer -- store documents with vectors

BackendPackage
Redisindexer/redis
Milvus 2.xindexer/milvus2
Elasticsearch 8indexer/es8
Qdrantindexer/qdrant

Tools -- model-callable functions

ToolPackageNotes
MCPtool/mcpModel Context Protocol tools
Google Searchtool/googlesearchCustom Search JSON API
DuckDuckGotool/duckduckgoWeb search (use v2)
Bing Searchtool/bingsearchBing Web Search API
HTTP Requesttool/httprequestGeneric HTTP calls
Command Linetool/commandlineShell command execution
Browser Usetool/browseruseBrowser automation

Interface Quick Reference

// ChatModel
type BaseChatModel interface {
    Generate(ctx context.Context, input []*schema.Message, opts ...Option) (*schema.Message, error)
    Stream(ctx context.Context, input []*schema.Message, opts ...Option) (*schema.StreamReader[*schema.Message], error)
}
type ToolCallingChatModel interface {
    BaseChatModel
    WithTools(tools []*schema.ToolInfo) (ToolCallingChatModel, error)
}

// Embedding
type Embedder interface {
    EmbedStrings(ctx context.Context, texts []string, opts ...Option) ([][]float64, error)
}

// Retriever
type Retriever interface {
    Retrieve(ctx context.Context, query string, opts ...Option) ([]*schema.Document, error)
}

// Indexer
type Indexer interface {
    Store(ctx context.Context, docs []*schema.Document, opts ...Option) (ids []string, err error)
}

// Document
type Loader interface {
    Load(ctx context.Context, src Source, opts ...LoaderOption) ([]*schema.Document, error)
}
type Transformer interface {
    Transform(ctx context.Context, src []*schema.Document, opts ...TransformerOption) ([]*schema.Document, error)
}

// Tool
type InvokableTool interface {
    Info(ctx context.Context) (*schema.ToolInfo, error)
    InvokableRun(ctx context.Context, argumentsInJSON string, opts ...Option) (string, error)
}

// Prompt
type ChatTemplate interface {
    Format(ctx context.Context, vs map[string]any, opts ...Option) ([]*schema.Message, error)
}

Installation

go get github.com/cloudwego/eino-ext/components/{type}/{impl}@latest
# Examples:
go get github.com/cloudwego/eino-ext/components/model/openai@latest
go get github.com/cloudwego/eino-ext/components/retriever/milvus2@latest
go get github.com/cloudwego/eino-ext/components/tool/mcp@latest

ChatModel Usage

Generate

resp, err := chatModel.Generate(ctx, []*schema.Message{
    {Role: schema.User, Content: "Hello"},
})
fmt.Println(resp.Content)

Stream

reader, err := chatModel.Stream(ctx, messages)
defer reader.Close()
for {
    chunk, err := reader.Recv()
    if errors.Is(err, io.EOF) { break }
    if err != nil { return err }
    fmt.Print(chunk.Content)
}

Tool Calling

withTools, err := chatModel.WithTools([]*schema.ToolInfo{toolInfo})
resp, err := withTools.Generate(ctx, messages)
// resp.ToolCalls contains model's tool invocations

RAG Components

Embedding + Indexer + Retriever form the RAG pipeline:

// 1. Embed and store documents
indexer, _ := redisIndexer.NewIndexer(ctx, &redisIndexer.IndexerConfig{
    Client: redisClient, KeyPrefix: "doc:", Embedding: embedder,
})
ids, _ := indexer.Store(ctx, docs)

// 2. Retrieve relevant documents
retriever, _ := redisRetriever.NewRetriever(ctx, &redisRetriever.RetrieverConfig{
    Client: redisClient, Index: "my_index", Embedding: embedder,
})
docs, _ := retriever.Retrieve(ctx, "user query", retriever.WithTopK(5))

Tool Usage

MCP Tools

import mcpp "github.com/cloudwego/eino-ext/components/tool/mcp"

tools, err := mcpp.GetTools(ctx, &mcpp.Config{Cli: mcpClient})

Custom InvokableTool

Implement Info() and InvokableRun() to create a custom tool.

Instructions to Agent

  • Constructor signatures and Config struct names vary across implementations. Always read the provider's reference file in reference/{type}/{impl}.md before generating initialization code.
  • Use ToolCallingChatModel (not deprecated ChatModel) for tool binding.
  • For RAG, ensure the same Embedder model is used for both indexing and retrieval.
  • See reference files for detailed per-component documentation.

Reference Files

Read files on-demand for detailed API, config, and examples. Each {type}/ directory contains an overview.md (interfaces + common patterns) and per-implementation files:

  • reference/model/*.md -- ChatModel interfaces, tool binding, streaming, and per-provider config (openai, claude, gemini, ark, ollama, deepseek, qwen, qianfan, openrouter)
  • reference/embedding/*.md -- Embedder interface and per-provider config (openai, ark, ollama, etc.)
  • reference/retriever/*.md -- Retriever interface, RAG example, and per-backend config (redis, milvus2, es8)
  • reference/indexer/*.md -- Indexer interface, indexing pipeline, and per-backend config (redis, milvus2, es8, qdrant)
  • reference/tool/*.md -- Tool interfaces, custom tool creation, MCP integration, search tools, utility tools
  • reference/document/pipeline.md -- Loader, Parser, Transformer interfaces and full pipeline example
  • reference/prompt.md -- ChatTemplate, FString/GoTemplate/Jinja2 formats, message helpers
  • reference/callback/*.md -- Callback handler interface, registration patterns, and per-provider config (cozeloop, apmplus, langfuse, langsmith)

适合场景

01

调用多模型

02

代码和文本生成

03

Agent 推理流程

04

OpenRouter 模型接入

能力概览

能力 1

统一调用多种 LLM

能力 2

支持 Claude、Gemini、Kimi 等模型

能力 3

适合聊天、代码和推理任务

能力 4

可作为 Agent 模型调用入口

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

37.05%
按下载量换算240

Claude

30.06%
按下载量换算195

Cursor

19.66%
按下载量换算128

Gemini CLI

8.97%
按下载量换算58

安全审计

Gen Agent Trust Hub

可疑

Socket

通过

Snyk

可疑

权限和风险

操作浏览器

该 Skill 可能涉及浏览器控制能力,使用时可能读取或操作网页内容,需要在受控环境中确认权限边界。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills