首先导入必要的 Python 模块。这些导入包括来自 LangChain 和 Google Generative AI 的类和函数
!pip install openai
!pip install langchain-google-genai
!pip install langchain_community
!pip install langchain-google-genai
!pip install jupyter
!pip install langchain
!pip install transformers
确保你已从 Google AI Studio 获取了 API 密钥。将密钥写入系统环境变量中
import os
os.environ["GOOGLE_API_KEY"] = "XXX" #你的API密钥
#调包
from transformers import pipeline
from langchain.prompts import PromptTemplate
from langchain.chains.llm import LLMChain
from langchain_google_genai import ChatGoogleGenerativeAI
from langchain_google_genai import GoogleGenerativeAIEmbeddings
from langchain_community.document_loaders import WebBaseLoader
from langchain.chains import StuffDocumentsChain
import google.generativeai as genai
#图片描述模型
def img2text(url): #互联网图片链接或是本地图片路径
#在网站https://huggingface.co/tasks 中可以找到很多开源模型
image_to_text = pipeline("image-to-text",model="Salesforce/blip-image-captioning-base")
text = image_to_text(url)[0]["generated_text"]
print(text)
return text
#LLM
def generated_story(scenario):
#模板
template = """
你是一位很会讲故事的老人,下面Context中的内容是一个外国人说的一句英文,请你根据这句话延展出一个中文的小故事,最好有点小幽默,字数在100字以内
CONTEXT:{scenario}
STORY:
"""
prompt = PromptTemplate(template=template, input_variables=["scenario"])
story_llm = LLMChain(llm=ChatGoogleGenerativeAI(model="gemini-pro"),prompt=prompt,verbose=True)
story = story_llm.predict(scenario=scenario)
print(story)
return story
img2text("1.jfif") #将图片放在该程序同一个文件夹下
scenario = img2text("1.jfif")
story = generated_story(scenario)
结果展示