百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

利用GPT4-V及Langchain实现多模态RAG

itomcoil 2025-05-24 14:41 13 浏览

多模态RAG将是2024年AI应用架构发展的一个重要趋势,在前面的一篇文章里提到llama-index在这方面的尝试《利用GPT4-V及llama-index构建多模态RAG应用》,本文[1]中将以另一主流框架langchain为例介绍多模态RAG的实现。

大体流程:

1)使用多模态embedding(如 CLIP)处理图像和文本
2)对于图像和文本均使用向量检索
3)将原始图像和文本块传递给多模态 LLM(GPT4-V)进行答案合成

具体实现:

  1. 安装依赖。
! pip install pdf2image
! pip install pytesseract
! apt install poppler-utils
! apt install tesseract-ocr
#
! pip install -U langchain openai chromadb langchain-experimental # (newest versions required for multi-modal)
#
# lock to 0.10.19 due to a persistent bug in more recent versions
! pip install "unstructured[all-docs]==0.10.19" pillow pydantic lxml pillow matplotlib tiktoken open_clip_torch torch

2.下载数据(测试文档点阅读原文查看)。

import os
import shutil
#os.mkdir("Data")
! wget "https://www.getty.edu/publications/resources/virtuallibrary/0892360224.pdf"

3.提取图像并保存在所需路径中

path = "/content/Data/"
#
file_name = os.listdir(path)

4.使用 Unstructured 中的 partition_pdf 方法提取文本和图像。

# Extract images, tables, and chunk text
from unstructured.partition.pdf import partition_pdf


raw_pdf_elements = partition_pdf(
    filename=path + file_name[0],
    extract_images_in_pdf=True,
    infer_table_structure=True,
    chunking_strategy="by_title",
    max_characters=4000,
    new_after_n_chars=3800,
    combine_text_under_n_chars=2000,
    image_output_dir_path=path,

5.按类型对文本元素进行分类

tables = []
texts = []
for element in raw_pdf_elements:
    if "unstructured.documents.elements.Table" in str(type(element)):
        tables.append(str(element))
    elif "unstructured.documents.elements.CompositeElement" in str(type(element)):
        texts.append(str(element))
#
print(len(tables)
print(len(texts))


#### Response
2
194

6.图像存储在文件路径

from PIL import Image
Image.open("/content/data/figure-26-1.jpg")

7.对文档进行多模态embedding入库(图片及文字)。

在这里,使用了 OpenClip 多模态embedding。为了获得更好的性能,使用了更大的模型(在
langchain_experimental.open_clip.py 中设置)。

model_name = "ViT-g-14" checkpoint = "laion2b_s34b_b88k"

import os
import uuid


import chromadb
import numpy as np
from langchain.vectorstores import Chroma
from langchain_experimental.open_clip import OpenCLIPEmbeddings
from PIL import Image as _PILImage


# Create chroma
vectorstore = Chroma(
    collection_name="mm_rag_clip_photos", embedding_function=OpenCLIPEmbeddings()
)


# Get image URIs with .jpg extension only
image_uris = sorted(
    [
        os.path.join(path, image_name)
        for image_name in os.listdir(path)
        if image_name.endswith(".jpg")
    ]
)


# Add images
vectorstore.add_images(uris=image_uris)


# Add documents
vectorstore.add_texts(texts=texts)


# Make retriever
retriever = vectorstore.as_retriever()

8.检索增强生成

上面的vectorstore.add_images 方法将以 base64 编码字符串的形式存储/检索图像,然后将这些信息传递给 GPT-4V。

import base64
import io
from io import BytesIO


import numpy as np
from PIL import Image




def resize_base64_image(base64_string, size=(128, 128)):
    """
    Resize an image encoded as a Base64 string.


    Args:
    base64_string (str): Base64 string of the original image.
    size (tuple): Desired size of the image as (width, height).


    Returns:
    str: Base64 string of the resized image.
    """
    # Decode the Base64 string
    img_data = base64.b64decode(base64_string)
    img = Image.open(io.BytesIO(img_data))


    # Resize the image
    resized_img = img.resize(size, Image.LANCZOS)


    # Save the resized image to a bytes buffer
    buffered = io.BytesIO()
    resized_img.save(buffered, format=img.format)


    # Encode the resized image to Base64
    return base64.b64encode(buffered.getvalue()).decode("utf-8")




def is_base64(s):
    """Check if a string is Base64 encoded"""
    try:
        return base64.b64encode(base64.b64decode(s)) == s.encode()
    except Exception:
        return False




def split_image_text_types(docs):
    """Split numpy array images and texts"""
    images = []
    text = []
    for doc in docs:
        doc = doc.page_content  # Extract Document contents
        if is_base64(doc):
            # Resize image to avoid OAI server error
            images.append(
                resize_base64_image(doc, size=(250, 250))
            )  # base64 encoded str
        else:
            text.append(doc)
    return {"images": images, "texts": text}

使用 RunnableParallel 对输入进行格式化,同时为 ChatPromptTemplates 添加图像支持。

from operator import itemgetter


from langchain.chat_models import ChatOpenAI
from langchain_core.messages import HumanMessage, SystemMessage
from langchain_core.output_parsers import StrOutputParser
from langchain_core.runnables import RunnableLambda, RunnablePassthrough,RunnableParallel




def prompt_func(data_dict):
    # Joining the context texts into a single string
    formatted_texts = "\n".join(data_dict["context"]["texts"])
    messages = []


    # Adding image(s) to the messages if present
    if data_dict["context"]["images"]:
        image_message = {
            "type": "image_url",
            "image_url": {
                "url": f"data:image/jpeg;base64,{data_dict['context']['images'][0]}"
            },
        }
        messages.append(image_message)


    # Adding the text message for analysis
    text_message = {
        "type": "text",
        "text": (
            "As an expert art critic and historian, your task is to analyze and interpret images, "
            "considering their historical and cultural significance. Alongside the images, you will be "
            "provided with related text to offer context. Both will be retrieved from a vectorstore based "
            "on user-input keywords. Please use your extensive knowledge and analytical skills to provide a "
            "comprehensive summary that includes:\n"
            "- A detailed description of the visual elements in the image.\n"
            "- The historical and cultural context of the image.\n"
            "- An interpretation of the image's symbolism and meaning.\n"
            "- Connections between the image and the related text.\n\n"
            f"User-provided keywords: {data_dict['question']}\n\n"
            "Text and / or tables:\n"
            f"{formatted_texts}"
        ),
    }
    messages.append(text_message)


    return [HumanMessage(content=messages)]

利用LCEL 构造RAG chain

from google.colab import userdata




openai_api_key = userdata.get('OPENAI_API_KEY')


model = ChatOpenAI(temperature=0,
                   openai_api_key=openai_api_key,
                   model="gpt-4-vision-preview",
                   max_tokens=1024)


# RAG pipeline
chain = (
    {
        "context": retriever | RunnableLambda(split_image_text_types),
        "question": RunnablePassthrough(),
    }
    | RunnableParallel({"response":prompt_func| model| StrOutputParser(),
                      "context": itemgetter("context"),})
)

测试验证:

q1:

response = chain.invoke("hunting on the lagoon")
#
print(response['response'])
print(response['context'])


############# RESPONSE ###############
The image depicts a serene scene of a lagoon with several groups of people engaged in bird hunting. The visual elements include calm waters, boats with hunters wearing red and white clothing, and birds both in flight and used as decoys. The hunters appear to be using long poles, possibly to navigate through the shallow waters or to assist in the hunting process. In the background, there are simple straw huts, suggesting temporary shelters for the hunters. The sky is painted with soft clouds, and the overall color palette is muted, with the reds of the hunters' clothing standing out against the blues and greens of the landscape.


The historical and cultural context of this image is rooted in the Italian Renaissance, specifically in Venice during the late 15th to early 16th century. Vittore Carpaccio, the artist, was known for his genre paintings, which depicted scenes from everyday life with great detail and realism. This painting, "Hunting on the Lagoon," is a testament to Carpaccio'
s keen observation of his environment and the activities of his contemporaries. The inclusion of diverse figures, such as some black individuals, reflects the cosmopolitan nature of Venetian society at the time.


Interpreting the symbolism and meaning of the image, one might consider the lagoon as a symbol of Venice itself—a city intertwined with water, where the boundary between land and sea is often blurred. The act of hunting could represent the human endeavor to harness and interact with nature, a common theme during the Renaissance as people sought to understand and depict the natural world with increasing accuracy. The presence of decoys suggests themes of illusion and reality, which were also explored in Renaissance art.


The connection between the image and the related text is clear. The text provides valuable insights into the painting's background, such as its use as a window cover, which adds a layer of functionality and interactivity to the artwork. The trompe l'oeil on the back with the illusionistic cornice and the real hinge further emphasizes the artist's interest in creating a sense of depth and reality. The mention of the lily blossom at the bottom indicates that the painting may have been altered from its original form, which could have included more symbolic elements or been part of a larger composition.


The text also notes that Carpaccio was famous as a landscape painter, which aligns with the detailed and atmospheric depiction of the lagoon setting. The discovery of the painting only a few years ago suggests that there is still much to learn about Carpaccio'
s work and the nuances of this particular piece. The lack of complete understanding of the subject matter invites further research and interpretation, allowing viewers to ponder the daily life and environment of Renaissance Venice.




{'images': ['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'],
 'texts': ["VITTORE  CARPACCIO Venetian, 1455/56-1525/26 Hunting  on the  Lagoon oil on panel, 75.9x63.7cm 6 Carpaccio  is considered to be the first great genre painter of the Italian Renaissance, and it is ob- vious that he was a careful observer of his surroundings. The  subject of this unusual painting is not yet completely understood, but it apparently depicts groups of Venetians, including some blacks, hunting for birds on the Venetian lagoon. Some birds standing upright in the boats must be decoys. In the background are huts built of straw, which the hunters must have used as temporary lodging. The  back of the painting shows an illusionistic cornice with some letters and memoranda—still legible—fastened  to the wall. The presence of a real hinge on the back indicates the painting was used as a door to a cupboard or more probably a window cover. It is therefore possible that one had the illusion of looking into the lagoon when the window was shuttered. The presence of a lily blossom at the bottom implies that the painting has been cut down; originally it may have shown the lily in a vase or it may have been cut from  a still larger painting in which our fragment was only the background. Reperse:  Trompe  l'Oeil  ",
  '3\n\nThis painting was discovered only a few years ago. Unfortunately very little is known about its',
  '18\n\npersonality and artistic interests, but he was most famous as a landscape painter.']}
print(response['context']['images'])
####### RESPONSE ##################
['/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0aHBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJCQwLDBgNDRgyIRwhMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjL/wAARCAD6APoDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD1eOe6JwZpD6HcaJLuZDtM8h+jVKOQBg5qncIFlZgwyeormTaESfa52GFlk/76NRvdTIrP58hA/wBs01G+YECke38xWw2M9jRJXBOxVOp3D7h5rjPH3jxVaWe8ONk8+P8AfJqUWMwbAQ1ftLMqpLAc/pQr9BPzM2KW/Y/enP8AwI1JJdXS4VnlHHcmtcoyDAIP1pY4yW5OfqKbTYJ2MmCS9kcANMR67jirgW6/56MR/vmtMR/Llv0qMxqFJ7VPKVdlRbe4YgtOV9txNPEL5wJ3P40r4J4YkCpY1WOESMevGMUWSFdsjC/NgSEnvzSFyWKpJnHvTCFjkdySqkcbjVLzBlijflU81irFws+eS2PbNILmEHa0vOemarQXTBGcsxUdRisndukYhSFyetV7RdCXE6TK8HccH3p4AYZB/WucBIAAc+3PStK0uBFGqOxyefpVe0RPKzSXKtk5x2qTIPBH51TW7TOOvuDVuM5UMDkdqaaYNNClD2zj2pQT3HHvUiuvfrRIRj5QKNw2IzIApbPAqvJcblAUmpCd4ZcjJHUGqE2y3xvkAB6Y60mmFx88jC2ySQd1NjlwoNPQxXMZTd17kVE1pIn3WVl+uKlpphdNBJMSeTUcLhZc80iozNtGKtLZADPJbFRa49iRXB6U5cEdajjgcDlD+NSrEc8gj6iqQhwweBW9Gf3Sf7orEiQLkd6248eWv0FawHAwFbOTz71DJbbiz7iB3q8wQLgHiq5kBbG7ArNO5UtCvFGcZAOPXFWNgUDkk+lO3Z4z+dB6jJ59qNUGjK1xKFXarAHvzVUXEoOA2asS2OXJD4zyRUK2mQfm9qave4n2Jop2Y9s1ejDEZ6D1qpFbIg4GWPfHSrynCbQOlVcLEy/d4HSo7gZxtqZJVbEfAwtRuN4Y5AFQ31KtpYrQwrISZBgL0FLJdRKPKXkg1CJlWT5+VXpz1qo/7yUsowD0FZykylHQk1FkmZXB+YjGKzmZoJCxUZx0NMvrgxSCIKdy9SaiVml5Zhk1LV9QvbQZ50iufLkZQeuKsBo0QZZd2OahWHc3FSNEqJuccelTGNhtjkCOwP8AB6jmp/MRmwF244BNZ4uZAcIqge9XYW85c/LnoRVezaQudNlpLaUOuBuU8lh0rRTcq8j5cVnW8s0cgLtlemKtRH96SzMwbkc9K0jIiSZYXcx+UD8TU+0lMcU4BCOAfwp+BnlsZ7GrbJUSlIvkgY5PtVO4sZbh1dPn4x05Fa7xq5we1CRhThTQHKZcFqYATJwewq4lukqclsH3q00KPyy596eiKgAUYFDbDlRQTSo1bId6lFkoP35PpmrpVj06Uu0496S0G4lQW4A+8+PrThGB0qyQepph4HFNisQbK1EACKOOlUMDNX1xsXjtVU9ykYR5BGDUQUZJPGan2kdz0pmxhznr2qEwkriKORjJHuakZlXk4x6UgRgMflxSmIE8jn1xRe4tUKQjn0NQkqCQi59zUpjBHqB61L9m+VSMcjsKadh2bG2ykoXYdOBxTjywZuBSeTKBtWTaMZPFRNG/QTvx14FDeo0mVbpnM2EPFLb3EgGxhuHck0XFsx3KZZGBxzmqsNjEZgC0vr941LSHqJc3USSlQB9etNhv40cYBOevSq13BGk7AblXsCeaghto3k46jnk1KimJyaHTwlpWdjuLc8mpIoljh34G4noTT1MattOG/GpriFDGsgZVUDOM0prTQI76lRY8EneFB70ySTMBjDc564qJwSSVyfqahcukm18H8KUQkxpU9c1YtODkkhqdGEcDIwan8gIOuD6+la82hmoO5Yjnxw2fbFT/ANoSqwCBAB2xWUxZWOT361uW7BIU4XJGfugVndGvKy5HdkRqWXBIzVRt7zl8nBPHNTyuHj3sPm7AU2LJX5gKXNcfKTRmVyuHzg/nTrm7FuwDIct0xSxc8imX1vLKiGPB9apyuLlHm+Vog0eD6jPSpbS488NvXke9ZEUbWz5dQQfpWpazB2CeWFHbFMSLwJJFBwOtHlj1prvGjKrOAzdATyaOZpDsKTxULsI8BpAMngE9aY88vnNEkIPy5DFup9MdRSi381UedF3jnHXb+NTzNvQfKh4+YjFX1HyjntVIIFq4p+UfSt6W5NjIVc9acFXOMc0pyqggUihj781gpGjiOwOhPNKq7jyKXHHpSqpGO5p3Cw7YAenFDtgZ7CgZ702QFxjODRcdip9pdpSQAUz+dKrF2IAxmpfIXdgDmlEe0+4qbhYY8XyFd5B+lVfs7GTJlcAenU1pEowx3phVRzkU73FymJPYq0jBVdvcmqi26q4zGcfjXTqFAFVblHXmJQQeuBzSuHKYccOX+WMk9qml3mIxtCOR2PNX0hcnkYH0qKW2cMeOB3qG2NRRlJEVOCpJoktfOOdoBAxVpoSGznGKcIHwShJY+gqlLSxLiZgVo/oKftnlUbMn2q4bG5YjKN9RVyDT9o3FWBHPWndIlRZlR6ddMwMq+UmfvN/hVyeSVJwC+6MDAK1oTEyKo2EYqSK03wAMmRnNZylroaKJXR1aPc7AD3NPj+zOvEp5pbsLMnkrGUKnqO9LaWRh+aQ5HYUcyHysdFHIchXIX1p6T+WpQndn3qSR3jUsF+UdgM1VSVrqDdHGYs5wWXBB+lL2gOAsgtwSzuB9W4pyTpCytErSknGF4xT1g/cqkxWU9ye5qYMiD7qgD2rTmuRyk5cOVPmkY6gd6bLOFZQiCRicE5+6KhVo7yBlTOw8Ejj/AOvViCIQxrGo4UYyTk0OSGkxYoYo5XlVR5kn3m7mpDnNHOeDilwe2KE0OwbTnnmrK/dHHaq3Pc1YUnaPpXRSe5D0M0hhk54pqqcnBwc+lObBOAeaauATknrXEpWNrAZUTPmsqN7nr9KlVgQCOlUbu0W5JfzGVwQyHP3cVcEi4AG3PfHalGbu7jcVYmwCKjMefakVx0JAx3pHnQYO5frnFVzoVh4Tk+lLsBOSKo3upw2EO+Vx04VeSa5/T/FtxNdSPcQYtCSF2D5l+vrSdRFKDep1xiGc4zSqoK9KrRalayoHSdCp6HNVrzV4oUZY5FMuMgE8fjU+1itQUJM0VYbypXkc4p4bjAUV5n/bM8esPexTt5mSvJyrDvkehrrLfxTZy2TzH5ZkXLQk859vUU1U0G6bRu4GelNdN3AUYriT4q1ZLhWxEYwclNo+Yeme1dZZataX1sJ45AOzITyp9DRzp6g4NFW4tSkowCQav28QVBkY/CpDJG2OVOPfpS+bGR8rj86nmXcmxIMD0NL61Xa6iRdzyIq56k4pj6jZoQGuoAfeQVSncLFnYCOgwaUIACMcVnf27pu7H2qM844zimzeItPhXPnBvQLQncT0LUdkTK7TSFwTlR0x7VZkCKm5yAo7ntXNXPiyIqRblU7bmIJ/KseXV1nLeZcmTnkFs4p8tkQ6h1s2s6fbgBpd577BuxSprGmydJ1H+8CK4l5EP/LVV/GkWaJsgygn0zVWRn7SXY9Bjkt5k3xujr6g8UxihkH7yMR4wV7k/WuHSVFHyyAfjSGaMZYz8jqQelJxv1H7V9j0NERBhVA+lLxXBjXZoU2m9OAM8kdPrVmPxVLGqs00brjvjJpWKU/I7PgUuRjriuUfxpaoo3IN55xvGKoT+MYpvlS4WHuQvWhNlNo7rg96nGMCvOv+EpAXJ1Aqo/MfpXfWcnm2UEg+YPGrbvXI611UL3ZnJ36HhknjbVobh2S446YIyMCkfx5rDgDzo1A9E61zcxzIw689agwp6HgUvYU+xtzyOjHjDVsuVvWG7qMDFRf8JTqxzi/lGVweawQqBsnJz2zVlJbZEO6Ek467qr2NP+UpTl3NKXxNqrlC+oXB2nI+foa0dMuDc7HvdUlZZD8lurtlj7kD+VXdP8OwXSgpYxSqUDH5z/jVPUdLktNesxBavHCjIQApwvzc1zudKXuxVvuNLSjq2W7jVvOkCxGUwp8oTacZHrnrQL+F0Xa00QU/wRnmi30+7kaXy4chpGYc9iTirMOgXxiYeWvVm5b1rB+zWlzZXsW9Jv7W4XzYftMw5G5YjtyPXP8AOpNQnm8mQuwjLKVizgbmx0rnTbapounR28byJK0xLmE5BU9jVy5lZ7yO0eRmSaDCFjna+ciodGPPzReglN8tnuZp1KKGKCTD4ddrjHIYGpF1e3klUKkwBIxkAY/HNVUije7UTDgkvt9G71fFpHIcJbMeP4UJrqaguhCcmCatNeBkjt4/k+87cH26UyWW9jtpmUpnbnam7d+GKdb6bfwO5gspC0jtkSKQNoxt/matppmqy/LMkcaMeduQ2PY54rOXJF9LFRbasYEd94g2EK9/jt8rUK/iJiGKal6Z2P0rcvrA2pVYDLIpX5mecjac/Wq8V3cwg4vVj/2UkZjWqnFq8Yojlltcr3MbpbSAy3VzMBxvYgA+y9fzrBku7lcB2kB9CSMV3WhRzXniK2eSKXaZgTMy4B45/GugTT5L7U7m2ubRPKTOPMjyAP4Tnvmh1eTeNyWr7Ox5It5OQ2J5B/wI0z7ZM3CyOSB3Y16Lrnh7SbRW82zhQ43boyRXGSyaYHIgtJMDg5Y1rTrRntFkOEluzOW6lxnec/Wj7RJjbvb86kdDM/7q2YDPAUE1Kmm3zqStlPtHUmMgVt7vUz17lYT3GMCQgH3o8+UH/WsPoam/s6/JwbWQD3XHWpxoOqkFjYyhfVlxReC3aJfMVo7m4H/LZ8H/AGqVriY5zI+D6tWxb+EdSlVXZoYlIyMtuz+VXf8AhCbgpj7Wmf8AcrF4iinZsrkm1ocxvc/xE/jSeY/I3H8635PB2pRn91LDIPqRTB4Q1c9fJGevz1Sr0X9pEuE+xjBmAByc0jSn1Oa6W28FXJwJ51Hsoya0m8FqsWYonlcDjeetZvFUU9Hcfspvc4lZXycE19F6K2dC085/5do//QRXhN3ompxyvH9iYAcfIBivddG3Joeno6kMttGCD2O0VvGUZaoyaaep4mPD2l2/mSXmpiTyvmaKHAY84wM0DT9Km3sILku2Qu2M4Poa1ZNJ1CxuWghXTRkZXdgPx3+8avW8OuRQLGt5pCKgxghmP864JVGt5fidqiuiMBbPTrRQZLBnbP8Ay0jzn2rWsGsUQF9FEbYJeQxgKgHU9+lTzaXqF5NBLc6rp26I5ASE46g+tTXWjXl2qLPr0DIucqlsADn6Dms3KEvil+LLs1tElsvENwZpIo9OfZIwWHCqgUdMt6+tY0Oo3txeI13E8zL/ABZAyM+9a39gF02TeIbkrt2kKgUEVB/wi2nl0Vr24mQYzvc8gHP880lKiuoWnfYijll+0/urElyMFRNuLDJ61pR3upxkBdOHpzITWhp6WmnxGOKRUQHhViA/UCrRv7fYy+a2TkDrWcnBle+uhhyx39w+/wDs2FXPVi5H9aFstTB4jgTIPHWrRuHWCE5+ZXwc/wB3NXJ7mLckinG1CDx0pNpBefYyxpuokBvMgQnqUjBqT+zb8gBr91HQ7QBVHVvEDWd9Akc8SxBh5wI3EL6e3rWrHeNNEHhbcp5BxwactEpOw+WpbYpjw6biVVe8uXfv+9xVtPBkHJkDkHnmY/0qe1uUimW4JLE9Rj1FX/7bhLkNG3FONVdyHCp2M3/hF7GHbttFck/3S38zV+HRIowAlvHH+Q/lTj4itVkVfJfHOelSP4hgCkpDJkeuBVe0h1ZPs6nYjW0FvdgkDKsCDWttAmkOeoGOPrWJcatBJJuEMobjPIrQsNQS+up49hTy40PPuT/hRGUW7JilTmldokntoZeZEQk8cjNZJ8OIXJUIM+xqxq14qyvb7nR4wkqOmDg5PUHrSnWoQhzau3HIBrOUoJ+8y4wqWvFDE0Bk6SgDrwDUFx4QiupPMa7uI2P/ADxcqD+HercniGNfvQSZPbcKUa8Gj3C2b8//AK1L2lKOqYezrPdGZL4LYRoF1e8wo24YI3HTHTpQPDN7GiqmuPhRgZt0NXD4jyBm0+Y/7VOGtMzH/R8cZzniqliIf0gVCp2DS9BNkuLm6+1Lj5QUC4/AVrLa24yBEuAPSsk63KIywSPgfxNXI6p4j1rULi4tYGaGCM4aSFTyMd2/wp03Gq9BSpzitTqtT1zQbBD9oAeXnEKD5vx9PxrnIPFJuNVjEOlolsw2Z+ZyvuccVQ8PeD7rUmS5vt0cLfNt/ib/AAr0Sy0e0sYkWGIKF7Dj/wDWa0nGCTildkp21ZkLf3GCRDDj/dIP86sf2pcxInyI/TqDmtc20ZbkHP1qhrkc8Oi3LWJ23IUbGPbJH61ywpyv8RpKcX9k57U9YtbaRvNjG8gfIrc5J9K9AsmWSxt3RvkaJSueuMV5XaaCnzzalKXnfkdSAfUnua9UslVbC3XapxEoyPpXoYRQTai7nPXvpdWPJLPw4Fuorj7VK7sQ2VXjBO3qevWuih0dZVkXdJ8jlCTjk/5NaxtkhnsbaNVYKrFi3UKCCP8Ax7FWndLQKShIlmC8di3f6cVzyjzv3jb2jj8JkJoaDjL59cirKaOgGMv/AN9VqMwCFmwoAycelRWDPJZRSSPudxv+gJyB+WKPYxJ9tLuZtzYW1lbS3FxJ5UKDLMzcCsDRb5Nf1KcWVtcCzi4aWT5cH0x3Pf2FdpdRLcQNG2OejYB2n1Ge/vWPoMEdrqGrWcYCwRSxmNOygrz+eKapwSatqNVJPW5KNKjIGN3HqaT+x1ZuY2yOhzW0EyOAKcwxyCKI0I7sl15dDFGioR8ynntuqC4sreM+SFeSdlysatyff6e9a080n+rjXaT1dhwPp6n9K57xVfTaLpkUlrDveSTD3LnPlHsWPvyPSqVGLdkHtZ9zkvEOkxWz3RZIvPkVZFk2sCxBAI5+o459vSu7ttEQQIrLtO0ZAY4HHavN9Z8VDV2iLyQb4lZV255JwPu9e3H1ru9AudZXS4ri8jUFh/qgCcD1K9QT7dPSta1O8VzF88krI1BoMG0LtGB2yaVfD9oDzGp+pNXLS6+1RllQgjvnIP0P+TVoDA5HNYqmkQ6su5kf2Bbbvlgj+uKeNCt9/McefpWuh5IwfagsN3I6Vfs0R7WXcoDR4QOET8qkh063ikZvJj3EAZ2irZcZxmjI3dc8d6XKlsPnb3Mu506Ka4dlijDeWAMrxnJ5rG0ZJTKtpqRt5JZlaS3lT5fMUHBBXHBH6iugvllO14ZSgHEm1ctt9vesTWrCFLcazCXa5tnUxsCSX5Bx+XGB60kk20yk9DYGlQY+4n4inDToFXAjT8qtI+9Q2CAwBweopScj1qHEFM5zWr3TdFEZuYxvkztUKTk9vzOBVTwrLdanBc3F39kMO/aiImDGw6qfXqOe9ReMZri40+/WC3E0SxKhk8zAjO4MSMcnoKzvhneXDx6jZTxqyI6zCdW6lh0x7ba09mvZOS3Dm1Ok126g0a1jmMKHcwG7YCOOSMfTNaVpa2t1befEyvDMu5CB8pBHFcr44he/tylu5Y2yGVwGG1R33d+nQVJ8PdWeaxl0qbcXtcOj9QUY9PwNCpp0+YctFdHXsJLWBBbwiTGAy7sHHqPU1xWoa1PpGuf2lFPNLZu4SS3nyNoOCcDPGO1d3nB61laxplhqarDcgCZzmNguWJHb3H1pLR6ipzSvfqa8ckcyB0dXU9CpyKbcwrPbSRMuVYYxXCeGdZmsdXuLe53LYTudrk/LHJ/QHp6ZFd2JA2CCDn3ocUFSEqcuVnP3GlQsNu1xyDwxrr7aMJawqDkKijJ+lZzMDwQOfUVqR4ESY6bRWuDjaTM6srpHLXbPFPd3Qz8lrtTHUHJP+FGoF/s1l1Z1uIt2Pryand15z/EMH3pBISv4+lRYLj77cbG4CAljGwGPUinxgxQqgHCqAPwFNdsoR6ikMnyD5abTFclLFgfpVCzt5Itbv5gAqSxxYORyQCKsCXAHBqHzgt2MfdKYP17f1pJaj5tDQDHnJFJwcZJquZPb9aasvUGtLGbkWGww+Y57YJqG5toruAwvnB/GgPk9h+NOyMfwj8aVmHNY5608I6fbak8yW0MbDkMicn6eldKkSRKFVRgVXk/1off/AA4p3mY68/ShtX1G22WN23oBzTg5xVcyc5JIpFmGCc0ubURY3jPXrRIiyqyNkqwwcH/Cq3mdqcJiO+Kb1EpWOe1TRPEltmXQNbmI/wCfa8w4+gYjP5/nXNSeKPHumORd6THMBxkQ8fmprvLiIXAKyXExX+6rbR+lUm0WyJJMch+rU1NdYplrTdnDXHxI8RMpUaOIX9VjY/oaytR8c3t5qEd0dLEbxBMYZsBlcNux0ycY+hr046JZ9cOAf9o0r6FZEHaGI6/eNXGUV9j8Rymn1/A4mL4s3JH7zRh+Ep/wqVfisxbadGchuAPN6/pXX/2HZNjKZB9Wph0OwjBb7MH+vb3obpr7P4kXv1OEj+IMNjBe2A0+SSORnAZZANuRjjjmq2l+O7fSpraSLT5FxAsFyisAsm37rD0P8676PRtOXaiWvAGB0qYaTZn/AJd0GT6D/Cjnp2ty/iNyfc4mXx7ZJetqI0ybyruNo5YNyneRj5icfpUOiePLPSLorDZTC3dAHAAyzDo45446j8q72XQdNnfMtqC23Gc0yPQdN+6sAGCfT/Cjmp2+H8RczfU5/wD4Wvb540q4P/bUf4VkyfEFbjxFFqU2m3Lx26FbeBZcBWPVjxyev6V3ieH9PT/lmeP9qlk0axjwVgBHfnmlzQS+H8ReVzg38bodT+2xaI+xgQ8LvkHIwe30PTrUlt4+1C1lUWOjskBJ/wBHZ2df+A8ZX6dK7b+x7TdxEB64Y1INJtA2RGSvf5jS54fyfiW5t6ORh2OveLNYIxa2GnQt0kmyzH6AnJ/KvS7VZBaQh5N7hF3NjG4461ya6bZAZESZPc111uAttEBnAQAflWmHleT0SIlsczJneev4URo/ZifrQ2NwOeacrZwCwA9TXMkkW2PwO+eKYWXYWPSsjxB4hh0CEGaJpJX5RFOMj1zUOm+JLfVLYTJFKMMFaIgBvXHpRJ8q5nsXCnKWiRyWv+PdRtdUmt7OKOOJDtVnXcT71v8AhrXpdb0ZruVVWeF9rbeAcc/yqzf3fhjXFe3mtcOG2qwhG4NjpkdOfwrGs9O1nStPnMJtkjcHMWegPp2zzWrcXCyVmXKFjusj1/Km+bhwMCqF5q0Gl2cUl23zsoGyPkk45qDRNcttdaZLWKZWhxuEgHeoTdiHRlyqbWjNKS8hgXdPMka+5qYSRva/aVdWhxkMrAgivMviVdX9veRRhXW1VBtcf3u9Y/h3xCloogmuJwryKXZZCuR3GOn49a1VKThzjVOL0PYmCOUdTnPQinhwu0HG5jgCqkDxeRH5bDZj5cHII+tMa42X6ID0iZuvuBWG5k2aDZCg4pm844A/KoPtAI5c4pwmBPXj0qiLoZBfrPdSwCKRJIwCQ67cg9CPyqwHYthlxx65qEFfPaTYoYgLkDkgZ/xp5mUdh0poTt0HBmY8EcU7IHXH4VXE0eSdvWgyIeStVYSZMHK5xk59akEjLHuxyeCOtUZL2BJoopMgyZ2HHBI7Z9amMqgjnI9KLA2iYSHP3M/jS72PBX8M1ALhc+gpPtALbdwANJuw1qK2Q2PunqMVmzPK1/sV2wGGDnitJCpJOc/WoDa/vvMLZy3pgAVEldaFwlZu5Y8xQdwBLY5oiJ3EkUjIuQBt9zS79mBxxV+pn6FjdkcHp2prucdKjSXkjHNLl+xHvntQxEUmXOFbGeGUHkCrAkUcAcYqMYUkDGKOwyQTUWG5dCUSL3H510cBP2eP/dH8q5gvgcjNdNb820R/2B/KtsP8TK6HFTEq5IfIp8TvIFQcknFV52y7c96r6jP5Gi3UoO1gmxT0wW4H9a5E9Tppw9pNQW70OA1S01jW/Er6dFcI8DXBMbmQBSpPJBJz07D0rp1n0LRNEaFnmnv/ADG5RdrAnj5SeMYrlJnM0ThQVmjOQQfToRRaX9wb3T31K0+0QNOruyHLFSemM4/rXUl7SNmtuh6WLouhJNSbT/Q1luJLb7BBb2nl5fcZc5aTJ4znj24rr1USLDABxI4G3PXByf6Vg+NptviKJYxgxphQPUNkcfhXSaPGJ9R3hQ5QeYULYwvbP41lPWzPOqO7KGu+HdRy07rbnnAcuSOfbFZmnXml6FpjeXd3bak0hBCKqrk8dSCCB/kVveLdZknEGmxRtHcTzIqK3fJIzkds4rmfFFrZ6HFHZKommK7jPuIJ+q5x9KuEUtEaupKUUn0MjxhNdT3stteXC3EUfTywAob3x1o8NeHLPU9BM93GTLK52uDgqBwMe1cvqtw8kW52Ykt611/h7VTB4atIkZnlVG/cwxGSQgE846D8a3qKUaa5e5jU0djU0+2n8NwgC8E1mSA4kG1kOOo6jHatTTrk3dxLe8hGHlRKf7oJy34n9AKjt7WOZIZ590shAIEvIXI9Ogq2oCEkDArilO7u9wm+Zbalvf3zmpFcdRVRXHBzkU4SAA4PWmpHO0WvPbGAtMeToMc1XMuB1pplzyGp3EWAzdqdlic4FVlkI60vm5OARSbBIZesWNuhAy0wI9sAn+lSCRuPTNVZmJv7RTnkSH8cD/69WSMMQehH60N6DtYSV5liLxKJHUghGOAwzyM9qxfFniaUxxxx2E1r3DAjAI9CK1Zpkt43d3AVea57Tp/7e8S20EztHaksFQHkjGcj0J9acHd3toddCHNF36GroHiSLV4SrgR3CD5o89R6it1JVzk9DVR9A0yC/R7TT4o0jyWmIIx+J71Qk1mC0bbOHU5wAOeOx/KplJX90lYedR2grmxJLgjGfwqvNfwQECWVEz0DHrUFrfQX0XmwOHUHB4wQfQ1zXiSVYdQQNIoMqb1B744q4Xk7GMKSc+WWh18d3G43I4Ydypp/20j7u7FeZaXfT2mrRlCSJHCMueDk16EC3496uacHYyqU+V6FoXG45yc0faCc8moVf5DgfjQJew7e1Z85nYsC4ZhyT7V2toxNnAcnmNf5VwnmEjFd1Z5+w2//AFzXv7V0Yd6stHCSuBM31Nc94l1NXtE06N2Af55cev8AD+QGfxqfUtTFqZzs3OnJUjO36jufQVzOqzQ3mlT6vbyyKVzGA2CWYbQSfz/CueEG2ehg506NTnqq5h/2nLDfxB4lk2/K3OA+fXHSmy3M9mcpKkihxJiP+E9cex9qXSorWeC5+27o5lljAGDwuCWJHfoB+NXLV7CXU7e3PCMCdkeD1U5Bru0i7WNZTlWTlKXoRaPfTLqb3E9zJkw5Uu2ep4HJ4r0jw1qFtpulXt3cNbxXdzIIx+8BDY9DnB5JrzmGzXat5fKsMBTdDbbsNIg5yx7L79T2qtqN4upGC2s4mkYHBUKB34CgfdXB6e3NTKHPLQ53NKPKkdrr3ie207xks1yrOluWjBUZIITGQPXJrA8ReI4JtfhvFXzbdmDFOM7NuACOx9qyb2yMM1rbajuSeSQO+35ikeOnuetTTGxjVY5UWK2TMio4w0nYZx35JpqnBWa1JV5aXsYWqXJv7p5IohBB8oEaNkDt+ddjY6jCGWGCC2lckJKrq4ZIwByWUgEfmc1ykiC8lYWcDRQ8csc9OmK3LLTjFGpyyg43c8sfU1dSyiugXSut/P8AyO6GpRwny9jBR8u7OSPTP+NINR3njIGKwISxG987SAFB9u/51YUkliD7V5/syW4mt9u4wOlOF8MDnj61jFmB4PPfFRNMYzxnPqBVchm7PY32vUPenC+TgZAP1rj9Q1K8EarZx/OTy0mMAfSn2BmQie4LTTnuzDav0FN0tLgk+p2C3IZRSicHpWB9plwAI+M9dwpVuZwc4Az71HIxOKua99NIXtZ4wzeRMCyqM5Ujaf55/CrUl4Gt5jE4LqdowM4bsMViLeSE8YyDxVa0upFup0umzMx3LIR95fT6ilytmkORay1LWr2mr3dvFDJLaKWUGVI24Q+hPc+1RWmhRWyiYXMhvEIMcmcBWHcCg3hkYhQeDVeDWPN1q4sEjZ5EUspGMZxnknoPc1oue1loV7Vt2WhU8TavrLWzxy3zuwYfIpGP0684rZTSru/t4DqFvNbX5RUwuG8w4zjH97qcdqwdXsf9MMX2pZCEDkxj7rnqPfBBrVPiS+g0mzv7q5PnWpcwkn5mBwCTnr6euM1U4Xirbno87pzdSi7K339yNNN1nQ7pntrK7kVm5URkmQ/lW4PD1z4pgUapps2nGLlJHkXIJ64A5/Oubk+JurXtk0rwoDDINroSMgjkMPp6U/TvG+p6lfJENgLuNm1s984q3TqL3rarqeZOUakrlm88LyeHNS8y1uxOuMoZVzj/AOvWtpOpvewSCUBZom2sF6HPQ1s61ZSXemW03IcQhj/n8q5GG8NjI0iQGRZ9oKqQCG7Hn61m37Ra7kzjpodMJD2NHm/L2B7VlfaSC3NNF05BHTB9ayszPlNgTe9egWX/AB4W/wD1yX+Qry5Z8Ic88V6fpxzplocdYU/9BFb4f4mK1kfNN9NcXd3JhnJ3ud7NtHHWrb3ttb+EktFKzGW5yw6HAwW56gHgfhVDVZrq+vHMzllRiqIowqjPQAcCnyWsa6dBtZC6mRnXzFBAJGM5Oc8V1OKdrmtyLUrh7u6EkaNDHJFHlAc5KjH9DVrwyiDXoAWweQeM5z8uPxzUNtf6bLbxw3QuIGRSvmw4fPOeVP17GpdMubK21+0WB2nBnjAkWMxfxjqCTTfwuNhrdFJ7y8ubxnUvLcSZThd2eMd++PyrS0fUrDRrFjNva5mHMkD4kQeg6gfoaq38l7LcNAvl20UTOi+WNpbnBJPUk4plppG/GFLnrk9KJWcfe2Grp3RVe4lub1prYSKufleUglR/jVq201pJBJKzSuerv0rctdOhQ/OOQOhGP0qdo1Kuq5JA4/Cs3W6RFoVo7eOJcY59elaCBXhXdxnqKgnb930HI9KLVx5Cg9c1k9VcTbaLyFf4hyPenM2ASABn2qLeCTgjNPwWXAIOKkzsxr7sgBuCe1KYw3U80zcFIOeB7U8yKRuoBkJRQQdoJ78UvpgYHpTWcLnABHqaXcM+maY2yUONuM0bwehNRb+TwKQnJz6UWJLCcnqQT0Oajnt1kXDFsqcgjqp9RQjqcMRjHFOeQgFRx3OKWqGnchUSySJHnMjEANjAz71IunxFbwJbNKm4LeyqxIZ+yZHYd/U/SrMKCyhWQkm6m/1XP+rXu317D8TWHd6ZeSatJaafevbwuvmPtkZUj4+bd7Y5/SiPvaJ2Oik4wknJX8jSs9Ps9MuvtEwit7IbTI7tlUJ+7x1Prj6019F0/X9btbO31iO4IlKTxqp2IueGB/iyOw9aztWjg1GFLW3u0S2i+4CCzMe7Njuf0HFVYdKWCWWQXEqGQAKViYEEeh4q4xt7zevodVROb5Uko+qNfxf4YXQtTEFmqi3uIgcM3Vhxx7+1cfPbPp7Q3VvIylSGDjqp7GvYNejt/EugaYd7i+ZTJaBl5kZRhkJ7Nxx68V5fBC91ePZSq0aoWLbxyVznH55rSlU93XpucvsnUkoJavY9I0vxhqWv+G4l0zTPPvlKwXJf5YkJ7gn1/SuS17Rb/Tb63i1GYNKHBCQ52L8pPB7n3rqvDGtaL4f0dYJ5xDL9sEkiKjMdmODwOegrP8a63pmpzWt/ZXPnrGNsgVSCpPAyDWcLqXurQVSm6cnCb1RUsrkzwbXOZI+Cf7w7GriH1rkbHULiS+2R7U+U7Vb+L2Jrai1NeUuFaJ8456H8aJ02mc++xsbwa9Y0xs6TZnn/AFCf+givHYZVki3A8etewaWR/ZFl/wBcE/8AQRRR0bBo8Dkt0E8ionVmHr3qncWUajD4YdwecVaupiLiQIwxvPTjvVdhv6njv701e9zoZmmwgkf93GwH161esbJIJ45dnMbBsDqcHNL548ngBT7U9ZDu3ZzkVo5SaJ6k90YZvNmVNryMXwTnAJzU1vE7iMW5PmOwRVxwT6VSj3zOqKAWJwBniuqg+1Jp8MQuLcGE5BhIYrz7VnK6RV7sjvtHa1to3mnXzTncRwq4x379R25rKVyszqDvHZh3pb2/ujb+XJP5iSSHJ4PTkU3TdSjsluHMSyPhdue3J4/Gko6E2Y6RHjtvOkXETnCZOCx9h3HvUKsEHGG3HgCoLy6mup/PuGLSdFA4VB6AVCrsq5UkH61fKC2LEsk8d6IyXCBA2V7nP+eKtLMQAfmz34qg0z8Hccj3pxkd+rj8TS5RNFtrolgeaQ3ORg4NZxJ3fez+NPCFsc5quUlxLpucjAwKRrjgdM96pLHIuSelBL44zRyoOVFk3Um7oKU3Dc5NVCHyMnikUY4Zj+NPlQuVF0XIADAjj1q/abRE1/dZ+zIQFUHBlbso/qewrOsIoJZsSyFFBwSBkj3qfVL1ZnWGAbbeFfLhQendvqTWco3dkVFJak/2qe7vlzl52I+Ve56AD09hRqM+IHtIJsBcG4mHO9h0A9VU/nz6CoZWOj24BYrqFwo8xu8EZ/8AZm/QfWs92JiWKIglQR7EZ4/nRGCbutht23Om8O+J3t2W1ugNiDBKgEr6Eeq+9dtcR2mp2YjnUTRMMg56e4PavFwjNKJoZDFKgwBnG4+nse9dHY+MI7ZUVY5lIGJVJAUn1wOn4VzYjBtvnpbnTSrq3LM6i70gWtjbwmaeS3hneRWQZdFYD88EdfeqHiXTUvWstbW6jkmjAjlbzBumXop4/iBOCO/FKPF8rBWjsMg9DvHP0NYWq66EuI9QFmbaRCQHjZT8x77TkZ98U6Ea3N7w5ThC0o7rUr3yjG7jcowcVzf2yVGlUN8j8Mh71u2Qm1DS7q5dkZFbervIN+OhXA796p2umRXENxIYdzRE7v3u3dnoAMda7qdoKzJxtb6zP2kVYqwS7BBcL95HGT+hrfkaOZNpwR6HvWKBDBIbY2zRMzbTufPNRm/exlEW07UGDk5B9/anKPNscmyuzZiSS3Ba3kKgfwHkGvedFZ20HTiwG420ZP12ivBLe4S5iDxE89R6V73ouf7C0/8A69o//QRURvfUT8j5+uiGuZiOBvY4z7mow3y8028fbeTY6eY386g83rmnys2FLBGI7GnqcqOe1QD53608Ng4HQVVhE6rnOfxzUs1z5ixwooSKMY2g9T3J9Saq+aFySc0xZhu9KOUCS58wQPsfAAziktEM4BdxlNxwe9RsTNvHUbef5VNp5liuXwdkDfu5M9Nvf+VO2gMuPNGJomxv2qu4ep/ziqxHzn68D2pqThnZcDccnI44qKecGTK5PHXFJR1sGyLLsMccGm7h35qm85JXmgSEsOcVXIK5cVl3ineZjO3iqCSnd71J5xLDNHITctrOx6kDt0o88rxgj8KrCVc8kfhRJIMcE80co7kpuGLnigvuHXn6VUkdgeDjPtUwYBeTzinyk3LCFgcqea19Pe3sFkvLjbJKo/cxsOC3Yn2HpXP7yCME+tSfaj5ZiLEoeSM8VEqd9AUralieR53eSZy0jnLs3JJNREKEGcZ9ahM2zkEAdKVplABPIxVcom7hICGIOMNxzVK5SVG3Dlc8+tPe4MrAIDtz0PaljlZuCMj1q0rE3I7TVbiyyEIeJuWRxkH8KtvcabqaFGZrOQ/3/mTP16j8fzqq0Cl964BHtxVeWIEFimD7UcqeqDmdrFttKvrS8b7OguVRPN3wfMrJnrx/kV0fh7w3c65FczW88Maqw3eYTnke1cpZyXNnOk9pMVdOQQcfhWvpvi6702WVhbxsJeXUMyAn14NRVjUcfc3HTlFPU9EvPCTanFEL6aMSIoVWhhCngcDOelec+ItHudNuAk6/P0DAfeHrWyPiApGDpuT/ANfUhqjqniq31OJUawMDIcq6TMSD261y4eGIpytPb5GtWpSktDEspZrV9yq2O4x+lfSuhvv8P6awHBtYjz/uCvnFNbuGGJGmkc/xCZh+lfRWg/8AIu6ZlcH7JFxnOPkFdUlrqjmj5Hz5fgrqFx/10bj8arZIB961btQbuYkAne3b3NVCq5PA6+lCOhsqR7ud3JpejY9qsoq4bgdfSnIq7fujr6VQrlUODHx1qPy2IJUfd61eCruA2j8qmhVQX4HQdvrRsCdyh8/kOqkqZON3sOtRu5STAxj3q8VGBwOn9TUEqruHyj8qaQNkETMNwJxkYOD2qJnbbt/lVoKOeB+VG1euB+VVYnmK4wANw/WpflJyQRUm0YXgdfSrW1do+UdPSkwuUYxtb5h+dKCN3bH0q2irvIwPyoCLuPyj8qAuQEoBwf0pgbORjp7Vd2Ln7o/Kk2qC2FH5Uh8xTkwxB9OKaM4xkVcKLu+6OnpSxou77o/KmiWyjt6Zb9afgbiDVpkTcflX8qkEaY+4vftRYnmKRVGHHbrSsU28n26VoJGm3Gxfypxij5+RfypBzGOIwGyAACKWJHKNg9K2BFGWGUXr6VZihi3n90n/AHyKbYkc4C4OCKV1YjpnNdF5EWT+6T/vkU3yIc/6pP8AvkUybnNeUEPFHlZXpXTLbwEDMMf/AHyKlS2g/wCeEf8A3wKYXOOMHJxmkMLHFdqtpbE828X/AHwKlSytef8ARof+/YouSzkLWFUbcfmIHHtX0loQP/CPaZ/16Rf+gCvJrWxtPNX/AEWDr/zzFez6eqrptqqqABCgAA6cCsZvUuB//9k

辅助函数,用于显示检索到的图像,作为生成响应的源上下文的一部分。

from IPython.display import HTML, display




def plt_img_base64(img_base64):
    # Create an HTML img tag with the base64 string as the source
    image_html = f'<img src="data:image/jpeg;base64,{img_base64}" />'


    # Display the image by rendering the HTML
    display(HTML(image_html))

显示与检索文本相关的图片

plt_img_base64(response['context']['images'][0])

q2:

response = chain.invoke("Woman with children")
print(response['response'])
print(response['context'])


########### RESPONSE ######################


The image in question appears to be a portrait of a woman with children, painted in oil on canvas and measuring 94.4x114.2 cm. The woman is likely the central figure in the painting, and the children are probably depicted around her, possibly playing with various instruments as suggested by the text. The woman's age is given as 21, and the painting is dated 1632, which places it in the early 17th century.


The historical and cultural context of this image is significant. The early 17th century was a time of great change and upheaval in Europe, with the Thirty Years' War raging and the rise of absolutist monarchies. In the art world, this was the era of the Baroque, characterized by dramatic, emotional, and often theatrical compositions. The fact that the woman is identified by her age suggests that this is a portrait of a specific individual, possibly a member of the nobility or upper class, as such portraits were often commissioned to commemorate important life events or to display wealth and status.


The symbolism and meaning of the image could be interpreted in several ways. The presence of children suggests themes of motherhood, family, and domesticity. The fact that they are playing instruments could symbolize harmony, creativity, and the importance of music and the arts in the family's life. The woman's age, 21, could also be significant, as it is often considered the age of adulthood and independence.


The related text mentions that the painting was discovered only a few years ago and that very little is known about it. This adds an element of mystery to the image and suggests that there may be more to uncover about its history and significance. The text also mentions a French artist, born in 1702 and died in 1766, which could indicate that the painting is French in origin, although the date of the painting does not align with the artist's lifetime. The mention of Marc de Villiers, born in 1671 and the subject of a painting dated 1747, suggests that the image may be part of a larger collection of portraits of notable individuals from this period.


Overall, this image of a woman with children is a rich and complex work that offers insights into the cultural and historical context of the early 17th century. Its symbolism and meaning are open to interpretation, and the connections between the image and the related text suggest that there is still much to learn about this painting and its place in art history.




{'images': [],
 'texts': ['31\n\nThis portrait is dated 1632 and gives the age of the sitter, 21. To our eyes she would appear to be',
  '3\n\nThis painting was discovered only a few years ago. Unfortunately very little is known about its',
  'oil on canvas, 94.4x114.2 cm\n\n4l\n\nat which they want to play their various instruments.',
  'French, 1702-1766\n\n46\n\nThe sitter, Marc de Villiers, was born in 1671, and since this painting is signed and dated in 1747,']}

注意:该查询没有相关图像,因此图像召回为空列表。

q3:

response = chain.invoke("Moses and the Messengers from Canaan")
print(response['response'])
print(response['context'])




########### RESPONSE #############
The image you've provided appears to be a classical painting depicting a group of figures in a pastoral landscape. Unfortunately, the image does not directly correspond to the provided keywords "Moses and the Messengers from Canaan," nor does it seem to relate to the text snippets you've included. However, I will do my best to analyze the image based on its visual elements and provide a general interpretation that might align with the themes of historical and cultural significance.


Visual Elements:
- The painting shows a group of people gathered in a natural setting, which seems to be a forest clearing or the edge of a wooded area.
- The figures are dressed in what appears to be classical or ancient attire, suggesting a historical or mythological scene.
- The color palette is composed of earthy tones, with a contrast between the light and shadow that gives depth to the scene.
- The composition is balanced, with trees framing the scene on the left and the background opening up to a brighter, possibly sunlit area.


Historical and Cultural Context:
- The painting style and attire of the figures suggest it could be from the Renaissance or Baroque period, which were times of great interest in classical antiquity and biblical themes.
- The reference to "Arcadian shepherds discovering a tomb" and "Poussin" in the text indicates a connection to Nicolas Poussin, a French painter of the Baroque era known for his classical landscapes and historical scenes.


Interpretation and Symbolism:
- Without a direct connection to the story of Moses and the messengers from Canaan, it's challenging to provide a precise interpretation. However, the painting could be depicting a scene of discovery or revelation, common themes in Poussin's work.
- The pastoral setting might symbolize an idyllic, peaceful world, often associated with the concept of Arcadia in classical literature and art.
- The gathering of figures could represent a moment of communal storytelling or the sharing of important news, which could loosely tie into the idea of messengers or a significant event.


Connections to Related Text:
- The text mentions the theme of "Arcadian shepherds discovering a tomb," which is a motif Poussin famously depicted in his painting "Et in Arcadia ego." While the image does not show a tomb, the pastoral setting and classical attire could suggest a similar thematic exploration.
- The reference to Flemish art and the interaction with Italian Renaissance artists might imply a fusion of Northern European and Italian artistic styles, which could be reflected in the painting's technique and composition.


In conclusion, while the image does not directly depict the story of Moses and the messengers from Canaan, it does evoke the classical and pastoral themes prevalent in the work of artists like Poussin during the Baroque period. The painting may represent a general scene of classical antiquity or a mythological event, characterized by a serene landscape and a gathering of figures engaged in a significant moment. The historical and cultural significance of such a painting would lie in its representation of the values and aesthetics of the time, as well as its potential to blend different artistic traditions.






{'images': ['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'],
 'texts': ['16\n\nThe theme of Arcadian shepherds discovering a tomb originated in painting with Poussin in the',
  'Flemish, 1488-1541\n\n20\n\nWhen Italian artists of the Renaissance came into contact with paintings from the north, they']}

显示检索到的图像

for images in response['context']['images']:
  plt_img_base64(images)

以上,利用多模态 LLM 和 Langchain 以及unstructured,成功地从非结构化数据中实现了 RAG。不仅利用了文档中嵌入的图像信息,还利用了文本信息。

参考原文:

[1] Plaban Nayak:Multimodal RAG using Langchain Expression Language And GPT4-Vision

相关推荐

最强聚类模型,层次聚类 !!_层次聚类的优缺点

哈喽,我是小白~咱们今天聊聊层次聚类,这种聚类方法在后面的使用,也是非常频繁的~首先,聚类很好理解,聚类(Clustering)就是把一堆“东西”自动分组。这些“东西”可以是人、...

python决策树用于分类和回归问题实际应用案例

决策树(DecisionTrees)通过树状结构进行决策,在每个节点上根据特征进行分支。用于分类和回归问题。实际应用案例:预测一个顾客是否会流失。决策树是一种基于树状结构的机器学习算法,用于解决分类...

Python教程(四十五):推荐系统-个性化推荐算法

今日目标o理解推荐系统的基本概念和类型o掌握协同过滤算法(用户和物品)o学会基于内容的推荐方法o了解矩阵分解和深度学习推荐o掌握推荐系统评估和优化技术推荐系统概述推荐系统是信息过滤系统,用于...

简单学Python——NumPy库7——排序和去重

NumPy数组排序主要用sort方法,sort方法只能将数值按升充排列(可以用[::-1]的切片方式实现降序排序),并且不改变原数组。例如:importnumpyasnpa=np.array(...

PyTorch实战:TorchVision目标检测模型微调完

PyTorch实战:TorchVision目标检测模型微调完整教程一、什么是微调(Finetuning)?微调(Finetuning)是指在已经预训练好的模型基础上,使用自己的数据对模型进行进一步训练...

C4.5算法解释_简述c4.5算法的基本思想

C4.5算法是ID3算法的改进版,它在特征选择上采用了信息增益比来解决ID3算法对取值较多的特征有偏好的问题。C4.5算法也是一种用于决策树构建的算法,它同样基于信息熵的概念。C4.5算法的步骤如下:...

Python中的数据聚类及可视化分析实践

探索如何通过聚类分析揭露糖尿病预测数据集的特征!我们将运用Python的强力工具,深入挖掘数据,以直观的可视化揭示不同特征间的关系。一同探索聚类分析在糖尿病预测中的实践!所有这些可视化都可以通过数据操...

用Python来统计大乐透号码的概率分布

用Python来统计大乐透号码的概率分布,可以按照以下步骤进行:导入所需的库:使用Python中的numpy库生成数字序列,使用matplotlib库生成概率分布图。读取大乐透历史数据:从网络上找到大...

python:支持向量机监督学习算法用于二分类和多分类问题示例

监督学习-支持向量机(SVM)支持向量机(SupportVectorMachine,简称SVM)是一种常用的监督学习算法,用于解决分类和回归问题。SVM的目标是找到一个最优的超平面,将不同类别的...

25个例子学会Pandas Groupby 操作

groupby是Pandas在数据分析中最常用的函数之一。它用于根据给定列中的不同值对数据点(即行)进行分组,分组后的数据可以计算生成组的聚合值。如果我们有一个包含汽车品牌和价格信息的数据集,那么可以...

数据挖掘流程_数据挖掘流程主要有哪些步骤

数据挖掘流程1.了解需求,确认目标说一下几点思考方法:做什么?目的是什么?目标是什么?为什么要做?有什么价值和意义?如何去做?完整解决方案是什么?2.获取数据pandas读取数据pd.read.c...

使用Python寻找图像最常见的颜色_python 以图找图

如果我们知道图像或对象最常见的是哪种颜色,那么可以解决图像处理中的几个用例,例如在农业领域,我们可能需要确定水果的成熟度。我们可以简单地检查一下水果的颜色是否在预定的范围内,看看它是成熟的,腐烂的,还...

财务预算分析全网最佳实践:从每月分析到每天分析

原文链接如下:「链接」掌握本文的方法,你就掌握了企业预算精细化分析的能力,全网首发。数据模拟稍微有点问题,不要在意数据细节,先看下最终效果。在编制财务预算或业务预算的过程中,通常预算的所有数据都是按月...

常用数据工具去重方法_数据去重公式

在数据处理中,去除重复数据是确保数据质量和分析准确性的关键步骤。特别是在处理多列数据时,保留唯一值组合能够有效清理数据集,避免冗余信息对分析结果的干扰。不同的工具和编程语言提供了多种方法来实现多列去重...

Python教程(四十):PyTorch深度学习-动态计算图

今日目标o理解PyTorch的基本概念和动态计算图o掌握PyTorch张量操作和自动求导o学会构建神经网络模型o了解PyTorch的高级特性o掌握模型训练和部署PyTorch概述PyTorc...