精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

讓 Gemini CLI 跑在你的私有大模型上

人工智能
本文將介紹如何對 Gemini CLI 進行二次開發,使其能夠作為本地 LLM(如 Ollama、vLLM)的輕量私有客戶端使用。

前不久,Google 開源了 Gemini CLI 工具,它允許用戶通過命令行與 Gemini AI 模型進行高效交互。

然而,在實際應用中,出于安全性和成本控制的考慮,很多場景更適合使用本地部署的大語言模型(LLM)。因此,讓 Gemini CLI 支持連接本地 LLM 就顯得尤為重要。

我們的核心目標是:無需身份驗證,并支持接入 兼容 OpenAI 接口規范 的本地模型服務。

本文將介紹如何對 Gemini CLI 進行二次開發,使其能夠作為本地 LLM(如 Ollama、vLLM)的輕量私有客戶端使用。

1. 明確改造目標

  • 刪除身份驗證功能,使用于本地LLM
  • 使用OpenAI Compatible API(Ollama、Vllm都支持)
  • 將啟動標志從GEMINI更改為ZONE(可以忽略)

2. 修改代碼和文件結構

(1) 了解ContentGenerator接口

/packages/core/src/core/contentGenerator.ts

這個文件是AI提供者抽象的核心代碼。通過實現這個接口,您可以支持不同的AI提供商。

export interface ContentGenerator {
  generateContent(
    request: GenerateContentParameters,
  ): Promise<GenerateContentResponse>;
  generateContentStream(
    request: GenerateContentParameters,
  ): AsyncIterable<GenerateContentResponse>;
}

(2) 實現兼容OpenAI協議的ContentGenerator

/packages/core/src/core/openAICompatibleContentGenerator.ts

export class OpenAICompatibleContentGenerator implements ContentGenerator {
  private endpoint: string;
  private model: string;


  constructor(config: { endpoint: string; model: string }) {
    this.endpoint = config.endpoint;
    this.model = config.model;
  }


  async generateContent(
    request: GenerateContentParameters,
  ): Promise<GenerateContentResponse> {
    const messages = this.convertToOpenAIMessages(request.contents);
    const response = await fetch(`${this.endpoint}/chat/completions`, {
      method: 'POST',
      headers: { 'Content-Type': 'application/json' },
      body: JSON.stringify({
        model: this.model,
        messages,
        temperature: request.generationConfig?.temperature,
        max_tokens: request.generationConfig?.maxOutputTokens,
      }),
    });
    //返回內容轉化處理
    return new OpenAIGenerateContentResponse(data);
  }
}

(3) 修改創建者

/packages/core/src/core/contentGenerator.ts

export async function createContentGenerator(
  config: ContentGeneratorConfig,
): Promise<ContentGenerator> {
  // 使用本地OpenAI 接口
  return new OpenAICompatibleContentGenerator({
    endpoint: process.env.LOCAL_LLM_ENDPOINT || 'http://localhost:11434/v1',
    model: process.env.LOCAL_LLM_MODEL || 'gemma3n:latest',
  });
}

(4) 添加身份驗證類型

/packages/core/src/core/contentGenerator.ts

export enum AuthType {
  OAuthPersonal = 'oauth-personal',
  OAuthServiceAccount = 'oauth-service-account',
  GeminiApiKey = 'gemini-api-key',
  USE_LOCAL_LLM = 'use-local-llm', // 新規追加
}

(5) 更新身份驗證對話框

/packages/cli/src/ui/components/AuthDialog.tsx

const items = [
  { label: 'Local LLM (Ollama)', value: AuthType.USE_LOCAL_LLM },
  //其他身份驗證選項(顯示但不使用)
];

(6) 更新認證驗證代碼

/packages/cli/src/config/auth.ts

export async function validateAuthMethod(
  authMethod: AuthType | undefined,
): Promise<string | null> {
  if (authMethod === AuthType.USE_LOCAL_LLM) {
    return null; //本地LLM不需要身份驗證
  }
  //驗證其他認證方法
}

(7) 更改徽標(可有可無)

/packages/cli/src/ui/components/AsciiArt.ts

將ASCII藝術從Gemini更改為Gemma:

export const shortAsciiLogo = `
 ?█████████      ?████      ?███     ██  ███████████
        ?██    ?██????██    ?██?█    ██  ?██???????█ 
      ?██    ??██      ?██  ?██ ?█   ██  ?██  
    ?██     ??██        ?██ ?██  ?█  ██  ?██████████ 
   ?██       ??██      ?██  ?██   ?█ ██  ?██??????  
 ?██          ??██    ?██   ?██    ?███  ?██      ?█
?█████████      ??█████     ?██.     ██  ███████████ 
??????????      ???????     ??????????   ???????????
`;

3. 注意事項

(1) TypeScript的類型兼容性

Gemini響應格式和OpenAI格式不同,需要進行轉換處理

class OpenAIGenerateContentResponse {
  constructor(private data: any) {}


  get candidates() {
    return [{
      content: { parts: [{ text: this.data.choices[0].message.content }] },
      finishReason: this.mapFinishReason(this.data.choices[0].finish_reason),
    }];
  }
}

(2) 配置文件優先級

如果~/.gemini/settings.json存在,它可以優先于環境變量。如果要完全專用于本地LLM,則必須刪除該文件或對其進行適當配置。

4. 總結

通過對Gemini cli 的改造,可以了解到gemini非常優秀的架構設計。

優勢主要體現在:

  • 開放、封閉原則:對擴展開放,對修改關閉
  • 單一責任原則:每個模塊都有明確的責任
  • 依賴反轉原則:依賴于接口而不是具體類

有賴于Gemini CLI優秀的架構設計以及采用了Apache-2.0開源許可,使其成為開源項目二次開發、擴展的理想選擇。

責任編輯:趙寧寧 來源: andflow
相關推薦

2025-07-18 08:06:07

2025-06-30 09:37:39

2021-09-27 09:43:18

LimaMac容器

2019-06-18 16:40:26

NodeJS前端項目

2023-09-19 20:47:59

谷歌人工智能

2025-06-27 09:24:38

MCP服務器系統

2023-05-31 09:49:00

模型汽車

2024-11-18 08:13:30

2023-12-12 10:57:05

AI谷歌

2021-09-06 09:10:31

Linuxncurses定位文本

2024-12-04 10:35:21

2015-07-20 16:30:14

Windows 10Xbox One游戲

2023-08-07 06:19:54

人工智能

2010-07-27 09:44:16

HTML 5

2023-05-12 17:31:43

模型AI

2024-01-29 00:25:59

人工智能結構化編碼

2025-10-13 15:52:11

AI論文模型

2011-03-24 09:28:47

Linux文件系統barrier

2023-03-03 13:06:34

大腦分層預測

2023-12-07 11:12:54

大型語言模型Gemini人工智能
點贊
收藏

51CTO技術棧公眾號

红桃视频欧美| 日本精品另类| av网站一区二区三区| 欧美一级电影久久| 非洲一级黄色片| 色综合一区二区日本韩国亚洲| 亚洲黄网站在线观看| 精品国产一区二区三| 欧美视频xxxx| 国产一区视频在线观看免费| 亚洲精品午夜精品| www,av在线| 亚洲妇女成熟| 亚洲天堂网中文字| 久久久久一区二区三区| 一级片aaaa| 国产欧美精品| 久久久91精品国产| av鲁丝一区鲁丝二区鲁丝三区| 国产精品久久中文字幕| 97在线视频人妻无码| 国产亚洲福利| 欧美国产视频日韩| 日本免费www| 国产精品中文字幕制服诱惑| 欧美日韩一级大片网址| 成 年 人 黄 色 大 片大 全| 在线免费av电影| 91尤物视频在线观看| 91美女片黄在线观看游戏| 免费黄色网址在线| 在线观看日韩av电影| 精品国产一区二区三区久久久| 中文字幕乱视频| 激情视频亚洲| 欧美人成免费网站| 毛片一区二区三区四区| √8天堂资源地址中文在线| 国产精品高潮呻吟久久| 日韩av电影免费在线| 五月婷婷六月激情| 盗摄精品av一区二区三区| 亚洲r级在线观看| 91精品国产乱码久久久| 免费在线观看不卡| 国产精品69久久| 亚洲va在线观看| 宅男噜噜噜66国产日韩在线观看| 欧美交受高潮1| 久热精品在线观看| 午夜激情一区| 久久综合久久美利坚合众国| 91香蕉一区二区三区在线观看| 欧美日韩一二| 正在播放国产一区| 调教驯服丰满美艳麻麻在线视频| 欧美美女在线观看| 91精品天堂福利在线观看| 日韩欧美aaa| 欧美日本视频在线观看| 高端美女服务在线视频播放| 亚洲电影第三页| 日韩a级在线观看| eeuss鲁一区二区三区| 亚洲在线免费播放| 免费看日本黄色| h片在线播放| 亚洲国产欧美在线人成| a级黄色一级片| 自拍网站在线观看| 91福利社在线观看| 亚洲一级片网站| 亚洲成人高清| 欧美大片一区二区三区| 午夜视频在线观看国产| 全球av集中精品导航福利| 亚洲精品视频播放| 欧美做受高潮6| 99久久国产综合精品成人影院| 久久精品欧美视频| 久久免费视频播放| 国产日韩视频| 国产精品视频yy9099| 国产乱色精品成人免费视频| 成人视屏免费看| 欧美成人一区二区在线| 在线观看黄色av| 一区二区三区日韩| 日韩欧美视频网站| 日本中文字幕一区二区| 91.com在线观看| 中国特级黄色大片| 中文字幕精品影院| 久久五月情影视| 一级片中文字幕| 毛片不卡一区二区| 国产成人精品一区二区三区福利| 久久精品国产精品亚洲色婷婷| 亚洲免费一级片| 91麻豆6部合集magnet| 亚洲va久久久噜噜噜久久狠狠| 韩国中文字幕在线| 黄网动漫久久久| 亚洲性图一区二区| 卡通动漫国产精品| 神马久久久久久| 久久精品女人毛片国产| 丝袜诱惑亚洲看片| 999视频在线免费观看| 日本天堂在线| 亚洲精品第一国产综合野| 无码无遮挡又大又爽又黄的视频| 成人国产精品久久| 亚洲精品一区中文| 唐朝av高清盛宴| 日韩国产一区二| 国产一区二区三区无遮挡| 欧美jizz18hd性欧美| 欧美日韩中文在线| 日本少妇激三级做爰在线| 91成人福利| 久久精品国亚洲| 少妇又紧又色又爽又刺激视频 | 国产乱码精品一区二区三区精东| 91丨九色丨国产丨porny| 热久久最新网址| 国产激情久久| 亚洲色图15p| 1级黄色大片儿| 国产成人啪午夜精品网站男同| 亚洲成人a**址| 成人影院入口| 亚洲精品福利免费在线观看| 三级影片在线看| 精品一区二区三区免费视频| 视频一区视频二区视频三区视频四区国产 | 欧美中文字幕精品| 中文字幕制服诱惑| 国产欧美综合色| 久久久999免费视频| 成人自拍在线| 欧美激情xxxx| 亚洲国产综合人成综合网站| 麻豆视频成人| 欧美1234区| 欧美一区二区三区四区久久| 在线观看天堂av| 免费看黄色91| 香蕉久久夜色| 日日夜夜天天综合| 亚洲男人天堂网站| www.com国产| 久久天堂av综合合色蜜桃网| 国产99久久九九精品无码| 国产成人在线中文字幕| 久久免费精品视频| 日本精品999| 欧美日韩亚洲天堂| 黄色a一级视频| 老司机免费视频久久| 欧美日韩在线观看一区| 日韩国产网站| x99av成人免费| 91丨九色丨蝌蚪丨对白| 亚洲人成在线播放网站岛国| 自拍一级黄色片| 欧美视频二区| 精品一区二区三区日本| 成人软件在线观看| 在线播放日韩欧美| 91theporn国产在线观看| 亚洲人成影院在线观看| 性一交一黄一片| 国产精品夜夜夜| 欧美日韩精品免费观看视一区二区 | 丝袜人妻一区二区三区| 亚洲妇女av| 国产精品一区二区久久精品| av黄在线观看| 久久天天久久| 日日骚av一区| 亚洲精品国产av| 精品成人av一区| 毛片aaaaaa| 国产精品一区二区在线观看网站 | 影音先锋国产精品| 欧美区高清在线| 亚洲人成777| 久久久久久91香蕉国产| 黄色软件在线观看| 制服丝袜av成人在线看| 国产一区二区三区影院| 欧美激情在线免费观看| 能看毛片的网站| 新67194成人永久网站| 一本色道久久综合亚洲精品婷婷| **爰片久久毛片| 国产精品com| 欧美bbbxxxxx| 色噜噜狠狠狠综合曰曰曰88av | www.久久草.com| 91大神福利视频在线| 美女黄视频在线观看| 日韩av在线免费播放| 亚洲专区第一页| 欧美日韩人人澡狠狠躁视频| 97在线观看免费高| 91老师片黄在线观看| 又黄又爽又色的视频| 米奇777在线欧美播放| 日韩欧美一级在线| 欧美日韩亚洲在线观看| 国内精品视频免费| 国产精品一区二区美女视频免费看| 日本乱人伦a精品| 欧美色图天堂| 日韩中文在线中文网三级| 天堂中文在线8| 欧美xxxx老人做受| 伊人色综合久久久| 色猫猫国产区一区二在线视频| 欧洲猛交xxxx乱大交3| 亚洲国产精品ⅴa在线观看| 成人性生活免费看| 国产成人精品亚洲午夜麻豆| 99热99热| 欧美手机在线观看| jlzzjlzz亚洲日本少妇| 91丝袜超薄交口足| 日韩av中文在线观看| 欧美 日韩 激情| 在线观看一区视频| 精品人妻大屁股白浆无码| 日韩一区亚洲二区| 亚洲国产精品一区在线观看不卡| 五月综合久久| 久久综合九色综合久99| 精品女人视频| 国产精品视频入口| 国产乱论精品| 风间由美久久久| 色妞ww精品视频7777| 亚洲自拍偷拍视频| 96sao精品免费视频观看| 国产精品嫩草视频| 精品123区| 国产精品日韩久久久久| 韩国成人在线| 国产日韩欧美视频| 亚洲欧美在线人成swag| 成人动漫网站在线观看| 免费成人毛片| 91精品视频观看| 国产精品一区二区三区av| 91在线高清视频| www.91精品| 波多野结衣一区二区三区在线观看 | 五月天亚洲精品| 日韩视频免费观看高清| 富二代精品短视频| 亚洲综合久久网| 欧美亚一区二区| 国产精品久久久久久无人区| 91精品国产色综合久久久蜜香臀| 国产乱淫a∨片免费视频| 日韩一区二区电影网| 国产综合在线播放| 亚洲国产成人精品久久| 视频一区二区在线播放| 一区二区成人av| 精品麻豆一区二区三区| 欧美福利小视频| 丝袜老师在线| 国产在线98福利播放视频| 日韩免费精品| 国内视频一区| 奇米狠狠一区二区三区| 一本一本a久久| 日韩精品无码一区二区三区久久久 | 欧美尤物巨大精品爽| 国产日韩另类视频一区| 国产精品中文字幕在线观看| 亚洲啊v在线免费视频| 久久亚洲免费| 国产精品久久久久蜜臀 | 18+激情视频在线| 国模精品视频一区二区| 韩国女主播一区二区| 91精品国产一区二区三区动漫| 琪琪久久久久日韩精品| 亚洲欧洲一区二区| 好吊日精品视频| 国产成人a亚洲精v品无码| 精品亚洲国内自在自线福利| 香蕉视频免费网站| 国产农村妇女毛片精品久久麻豆 | 尤物精品在线| 在线观看国产福利| 成人avav影音| 国产尤物在线播放| 欧美色视频日本版| 国产农村老头老太视频| 日韩精品免费在线视频| 国产在线1区| 日本在线观看天堂男亚洲| 久久在线观看| 亚欧洲精品在线视频免费观看| 亚洲经典自拍| 污污的视频免费观看| 久久婷婷色综合| 国产成人啪精品午夜在线观看| 欧美日韩国产精品自在自线| 女人偷人在线视频| 久久久久久尹人网香蕉| 亚洲人体在线| 欧美一区二区三区成人久久片| 亚洲视频精品| 四虎1515hh.com| 国产免费久久精品| 毛片视频网站在线观看| 精品国产一区二区在线观看| 国产精品一区二区三区视频网站| 日韩女优人人人人射在线视频| 91国内精品白嫩初高生| a级黄色片网站| 蜜臀精品一区二区三区在线观看| 无码人妻aⅴ一区二区三区| 一区二区欧美视频| 国产剧情精品在线| 伊人伊成久久人综合网小说 | 成人久久久久爱| 啪啪亚洲精品| 苍井空浴缸大战猛男120分钟| 不卡的av电影| 国产精品theporn动漫| 日韩情涩欧美日韩视频| 麻豆影视在线观看_| 国产精品视频白浆免费视频| 操欧美老女人| 在线免费视频a| 欧美国产一区二区| 一级黄色av片| 亚洲色图日韩av| 日本精品不卡| 欧洲亚洲一区二区三区四区五区| 久久国产日韩| 亚洲色图14p| 日韩欧美黄色动漫| 日批视频在线播放| 97在线视频免费观看| 麻豆精品99| 91猫先生在线| 久久在线观看免费| 久久久国产免费| 伊是香蕉大人久久| 精品国产黄a∨片高清在线| 午夜老司机精品| 日本特黄久久久高潮| 秋霞网一区二区三区| 欧美日韩精品一区二区三区四区| 在线观看二区| 91久久久在线| 欧美不卡一区| 少妇一级淫免费观看| 日韩欧美极品在线观看| 国产精品久久久久一区二区国产 | 日本在线观看a| 中文字幕成人在线观看| 91福利在线观看视频| 九九九久久久久久| 大香伊人久久精品一区二区| 国产黄色一级网站| 国产欧美日韩精品一区| 97视频免费在线| 欧美精品videos| 欧美综合在线视频观看| 中文字幕中文在线| 亚洲一区电影777| 欧美巨乳在线| 91视频8mav| 国产欧美日韩一区二区三区在线| 青娱乐国产视频| 欧美第一区第二区| 桃色av一区二区| 中文字幕久精品免| av中文字幕一区| 中文字幕 日韩有码| 欧美激情精品久久久| 免费成人高清在线视频theav| 久久国产激情视频| 性久久久久久久久| 91sp网站在线观看入口| 高清视频一区| 日韩电影在线免费看| 私库av在线播放| 国产一区二区三区18| 亚洲国产一区二区三区网站| 国产在线观看福利| 亚洲欧美日韩国产综合| 四虎精品成人免费网站|