创建 CLI 脚本
将 Gemini CLI 封装成便于使用的命令行工具:
#!/usr/bin/env python3
"""
简单的 Gemini CLI 工具
用法: gemini "你的问题"
"""
import sys
import os
import google.generativeai as genai
def main():
if len(sys.argv) < 2:
print("用法: python gemini.py '你的问题'")
return
# 配置 API
genai.configure(api_key=os.environ.get("GOOGLE_API_KEY"))
model = genai.GenerativeModel('gemini-pro')
# 获取用户问题
question = " ".join(sys.argv[1:])
try:
print(f"🤖 正在思考: {question}")
response = model.generate_content(question)
print(f"\n✨ Gemini 回答:\n{response.text}")
except Exception as e:
print(f"❌ 错误: {e}")
if __name__ == "__main__":
main()
批量文本处理
处理多个文件或大量文本的自动化脚本:
import os
import glob
import google.generativeai as genai
def process_text_files(directory, task="摘要"):
"""批量处理文本文件"""
genai.configure(api_key=os.environ["GOOGLE_API_KEY"])
model = genai.GenerativeModel('gemini-pro')
# 查找所有 .txt 文件
files = glob.glob(os.path.join(directory, "*.txt"))
for file_path in files:
print(f"处理文件: {file_path}")
# 读取文件内容
with open(file_path, 'r', encoding='utf-8') as f:
content = f.read()
# 构建提示词
prompt = f"请为以下文本生成{task}:\n\n{content}"
try:
response = model.generate_content(prompt)
# 保存结果
output_file = file_path.replace('.txt', f'_{task}.txt')
with open(output_file, 'w', encoding='utf-8') as f:
f.write(response.text)
print(f"✅ 完成: {output_file}")
except Exception as e:
print(f"❌ 处理 {file_path} 时出错: {e}")
# 使用示例
# process_text_files("/path/to/texts", "摘要")
智能代码审查
使用 Gemini 自动审查代码质量和提供改进建议:
def code_review(file_path):
"""自动代码审查工具"""
import google.generativeai as genai
genai.configure(api_key=os.environ["GOOGLE_API_KEY"])
model = genai.GenerativeModel('gemini-pro')
# 读取代码文件
with open(file_path, 'r', encoding='utf-8') as f:
code = f.read()
prompt = f"""
作为一个经验丰富的代码审查专家,请分析以下代码:
```
{code}
```
请提供:
1. 代码质量评估(1-10分)
2. 潜在的问题和bug
3. 性能优化建议
4. 代码规范改进建议
5. 安全性考虑
请用中文回答,格式清晰。
"""
response = model.generate_content(prompt)
return response.text
# 使用示例
# review = code_review("my_script.py")
# print(review)
多语言翻译工具
创建一个智能的多语言翻译助手:
def smart_translate(text, target_language="英文", context=""):
"""智能翻译工具"""
import google.generativeai as genai
genai.configure(api_key=os.environ["GOOGLE_API_KEY"])
model = genai.GenerativeModel('gemini-pro')
context_prompt = f"上下文: {context}\n\n" if context else ""
prompt = f"""
请将以下文本翻译成{target_language}:
{context_prompt}
原文: {text}
要求:
1. 保持原意不变
2. 语言自然流畅
3. 考虑文化差异
4. 如果是技术术语,请保持专业性
翻译结果:
"""
response = model.generate_content(prompt)
return response.text
# 使用示例
# translation = smart_translate(
# "机器学习是人工智能的一个分支",
# "英文",
# "技术文档"
# )
# print(translation)