τα στοιχεία επικοινωνίας μου
Ταχυδρομείο[email protected]
2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Εδώ δείχνουμε πώς να περάσετε την πολυτροπική είσοδο απευθείας στο μοντέλο. Για άλλους παρόχους μοντέλων που υποστηρίζουν πολυτροπική είσοδο, το langchain παρέχει εγγενή λογική στην κατηγορία για μετατροπή στην επιθυμητή μορφή.
Ο πιο συνηθισμένος τρόπος μετάδοσης σε μια εικόνα είναι ως συμβολοσειρά byte. Αυτό θα πρέπει να λειτουργεί για τα περισσότερα σύνολα μοντέλων.
import base64
import httpx
image_url = "https://upload.wikimedia.org/wikipedia/commons/thumb/d/dd/Gfp-wisconsin-madison-the-nature-boardwalk.jpg/2560px-Gfp-wisconsin-madison-the-nature-boardwalk.jpg"
image_data = base64.b64encode(httpx.get(image_url).content).decode("utf-8")
message = HumanMessage(
content=[
{"type": "text", "text": "describe the weather in this image"},
{
"type": "image_url",
"image_url": {"url": f"data:image/jpeg;base64,{image_data}"},
},
],
)
response = model.invoke([message])
print(response.content)
Μπορούμε να παρέχουμε απευθείας τη διεύθυνση URL της εικόνας στο μπλοκ περιεχομένου τύπου "image_URL". Σημειώστε, ωστόσο, ότι μόνο ορισμένοι πάροχοι μοντέλων υποστηρίζουν αυτήν τη δυνατότητα.
message = HumanMessage(
content=[
{"type": "text", "text": "describe the weather in this image"},
{"type": "image_url", "image_url": {"url": image_url}},
],
)
response = model.invoke([message])
print(response.content)
Μπορούμε επίσης να ανεβάσουμε πολλές εικόνες.
message = HumanMessage(
content=[
{"type": "text", "text": "are these two images the same?"},
{"type": "image_url", "image_url": {"url": image_url}},
{"type": "image_url", "image_url": {"url": image_url}},
],
)
response = model.invoke([message])
print(response.content)
Εδώ, περιγράφουμε τον τρόπο χρήσης προτύπων προτροπής για τη μορφοποίηση πολυτροπικών εισροών για μοντέλα.
import base64
import httpx
image_url = "https://upload.wikimedia.org/wikipedia/commons/thumb/d/dd/Gfp-wisconsin-madison-the-nature-boardwalk.jpg/2560px-Gfp-wisconsin-madison-the-nature-boardwalk.jpg"
image_data = base64.b64encode(httpx.get(image_url).content).decode("utf-8")
prompt = ChatPromptTemplate.from_messages(
[
("system", "Describe the image provided"),
(
"user",
[
{
"type": "image_url",
"image_url": {"url": "data:image/jpeg;base64,{image_data}"},
}
],
),
]
)
Μπορούμε επίσης να περάσουμε πολλές εικόνες στο μοντέλο.
prompt = ChatPromptTemplate.from_messages(
[
("system", "compare the two pictures provided"),
(
"user",
[
{
"type": "image_url",
"image_url": {"url": "data:image/jpeg;base64,{image_data1}"},
},
{
"type": "image_url",
"image_url": {"url": "data:image/jpeg;base64,{image_data2}"},
},
],
),
]
)
chain = prompt | model
response = chain.invoke({"image_data1": image_data, "image_data2": image_data})
print(response.content)