李宏毅老师又开新课了,我在 Homework 03 本地运行的时候发现了一个问题,分享下解决方法。
课程主页:INTRODUCTION TO GENERATIVE AI 2024 SPRING
课程涉及的 API 和代码都已经镜像为了大陆中文版本,现在你可以在不翻墙的情况下完成所有的课程作业:Github

复现代码

# Import packages
import google.generativeai as genai
from typing import List, Tuple
import gradio as gr
import json

# Set up Gemini API key
## TODO: Fill in your Gemini API in the ""
GOOGLE_API_KEY=""
genai.configure(api_key=GOOGLE_API_KEY)
model = genai.GenerativeModel('gemini-pro')

model.generate_content(
  "test",
)

有三个解决方法。

1. 云服务器

最简单的也就是在 Kaggle / Colab 等云端服务器运行代码,绕过本地网络的限制。

关于 Kaggle 的注册和使用可以遵循这篇博客:《Kaggle:免费 GPU 使用指南,Colab 的理想替代方案

2. 设置代理

设置环境代理,你需要先查看一下你的代理端口号,一般来说代理软件都会有这一栏。举个例子:
端口号
我这里是7890,所以把下面代码部分的端口号修改为7890即可。

import os

os.environ['http_proxy'] = 'http://127.0.0.1:端口号'
os.environ['https_proxy'] = 'http://127.0.0.1:端口号'
os.environ['all_proxy'] = 'socks5://127.0.0.1:端口号'

此时再次运行之前的代码就可以得到正确的结果。
True

3. 修改配置

这一解决方法来自:GitHub Issue #117 comment
绕过 gRPC,使用 REST API 进行通信。

修改原代码,添加transport参数

genai.configure(api_key=GOOGLE_API_KEY, transport='rest')

REST API

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐