From 2c559eca5ecb7d102cb00817c995edf30e556c1c Mon Sep 17 00:00:00 2001 From: Yuan Chiang Date: Wed, 8 May 2024 18:21:41 -0700 Subject: [PATCH 1/4] add vision example --- .gitignore | 1 + Ag-eos.png | Bin 0 -> 26811 bytes test_vision.ipynb | 283 ++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 284 insertions(+) create mode 100644 .gitignore create mode 100644 Ag-eos.png create mode 100644 test_vision.ipynb diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..4c49bd7 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.env diff --git a/Ag-eos.png b/Ag-eos.png new file mode 100644 index 0000000000000000000000000000000000000000..e2e7e5e8de753388bec197152d8e4fb7d15e58cb GIT binary patch literal 26811 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 C_0^{U literal 0 HcmV?d00001 diff --git a/test_vision.ipynb b/test_vision.ipynb new file mode 100644 index 0000000..9e3a102 --- /dev/null +++ b/test_vision.ipynb @@ -0,0 +1,283 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "import os\n", + "\n", + "from dotenv import load_dotenv\n", + "from langchain_openai import ChatOpenAI\n", + "from pydantic import BaseModel, Field\n", + "from langchain.chains.transform import TransformChain\n", + "from langchain.chains import TransformChain\n", + "from langchain_core.messages import HumanMessage\n", + "from langchain import globals\n", + "from langchain_core.runnables import chain\n", + "from langchain_core.output_parsers import JsonOutputParser\n", + "\n", + "import base64\n", + "\n", + "load_dotenv()\n", + "\n", + "MP_API_KEY = os.getenv(\"MP_API_KEY\", None)\n", + "\n", + "OPENAI_API_KEY = os.getenv(\"OPENAI_API_KEY\", None)\n", + "OPENAI_ORGANIZATION = os.getenv(\"OPENAI_ORGANIZATION\", None)\n", + "\n", + "\n", + "OPENAI_GPT_MODEL = \"gpt-4-1106-preview\"\n", + "# OPENAI_GPT_MODEL = \"gpt-4-0125-preview\"\n", + "# OPENAI_GPT_MODEL = \"gpt-3.5-turbo-1106\"\n", + "# OPENAI_GPT_MODEL = \"gpt-4-turbo\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# 0. Untilties" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "\n", + "def load_image(inputs: dict) -> dict:\n", + " \"\"\"Load image from file and encode it as base64.\"\"\"\n", + " image_path = inputs[\"image_path\"]\n", + " \n", + " def encode_image(image_path):\n", + " with open(image_path, \"rb\") as image_file:\n", + " return base64.b64encode(image_file.read()).decode('utf-8')\n", + " image_base64 = encode_image(image_path)\n", + " return {\"image\": image_base64}\n", + "\n", + "\n", + "class ImageInformation(BaseModel):\n", + " \"\"\"Information and description about a figure.\"\"\"\n", + " title: str = Field(description=\"title of the figure\")\n", + " xlabel: str = Field(description=\"label of the x-axis\")\n", + " ylabel: str = Field(description=\"label of the y-axis\")\n", + " xrange: list[float] = Field(description=\"range of the x-axis\")\n", + " yrange: list[float] = Field(description=\"range of the y-axis\")\n", + " description: str = Field(description=\"description of the meaning of the figure, the data and the context\")" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "load_image_chain = TransformChain(\n", + " input_variables=[\"image_path\"],\n", + " output_variables=[\"image\"],\n", + " transform=load_image\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "\n", + "# Set verbose\n", + "globals.set_debug(True)\n", + "\n", + "parser = JsonOutputParser(pydantic_object=ImageInformation)\n", + "\n", + "@chain\n", + "def image_model(inputs: dict) -> str | list[str] | dict:\n", + " \"\"\"Invoke model with image and prompt.\"\"\"\n", + " model = ChatOpenAI(temperature=0.5, model=\"gpt-4-vision-preview\", max_tokens=1024)\n", + " msg = model.invoke(\n", + " [HumanMessage(\n", + " content=[\n", + " {\"type\": \"text\", \"text\": inputs[\"prompt\"]},\n", + " {\"type\": \"text\", \"text\": parser.get_format_instructions()},\n", + " {\"type\": \"image_url\", \"image_url\": {\"url\": f\"data:image/jpeg;base64,{inputs['image']}\"}},\n", + " ])]\n", + " )\n", + " return msg.content\n", + "\n", + "def get_image_informations(image_path: str) -> dict:\n", + " vision_prompt = \"\"\"\n", + " Given the image, provide the following information:\n", + " - Title of the figure\n", + " - Type of the figure (e.g., bar chart, line chart, scatter plot)\n", + " - Labels and ranges of the axes\n", + " - Legend, including the meaning of the colors, names, and symbols\n", + " - A brief description of the data and trends\n", + " \"\"\"\n", + " vision_chain = load_image_chain | image_model | parser\n", + " return vision_chain.invoke({'image_path': f'{image_path}', \n", + " 'prompt': vision_prompt})" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[32;1m\u001b[1;3m[chain/start]\u001b[0m \u001b[1m[chain:RunnableSequence] Entering Chain run with input:\n", + "\u001b[0m{\n", + " \"image_path\": \"Ag-eos.png\",\n", + " \"prompt\": \"\\n Given the image, provide the following information:\\n - Title of the figure\\n - Type of the figure (e.g., bar chart, line chart, scatter plot)\\n - Labels and ranges of the axes\\n - Legend, including the meaning of the colors, names, and symbols\\n - A brief description of the data and trends\\n \"\n", + "}\n", + "\u001b[32;1m\u001b[1;3m[chain/start]\u001b[0m \u001b[1m[chain:RunnableSequence > chain:TransformChain] Entering Chain run with input:\n", + "\u001b[0m{\n", + " \"image_path\": \"Ag-eos.png\",\n", + " \"prompt\": \"\\n Given the image, provide the following information:\\n - Title of the figure\\n - Type of the figure (e.g., bar chart, line chart, scatter plot)\\n - Labels and ranges of the axes\\n - Legend, including the meaning of the colors, names, and symbols\\n - A brief description of the data and trends\\n \"\n", + "}\n", + "\u001b[36;1m\u001b[1;3m[chain/end]\u001b[0m \u001b[1m[chain:RunnableSequence > chain:TransformChain] [1ms] Exiting Chain run with output:\n", + "\u001b[0m{\n", + " \"image\": \"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\"\n", + "}\n", + "\u001b[32;1m\u001b[1;3m[chain/start]\u001b[0m \u001b[1m[chain:RunnableSequence > chain:image_model] Entering Chain run with input:\n", + "\u001b[0m{\n", + " \"image_path\": \"Ag-eos.png\",\n", + " \"prompt\": \"\\n Given the image, provide the following information:\\n - Title of the figure\\n - Type of the figure (e.g., bar chart, line chart, scatter plot)\\n - Labels and ranges of the axes\\n - Legend, including the meaning of the colors, names, and symbols\\n - A brief description of the data and trends\\n \",\n", + " \"image\": \"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\"\n", + "}\n", + "\u001b[32;1m\u001b[1;3m[llm/start]\u001b[0m \u001b[1m[chain:RunnableSequence > chain:image_model > llm:ChatOpenAI] Entering LLM run with input:\n", + "\u001b[0m{\n", + " \"prompts\": [\n", + " \"Human: [{'type': 'text', 'text': '\\\\n Given the image, provide the following information:\\\\n - Title of the figure\\\\n - Type of the figure (e.g., bar chart, line chart, scatter plot)\\\\n - Labels and ranges of the axes\\\\n - Legend, including the meaning of the colors, names, and symbols\\\\n - A brief description of the data and trends\\\\n '}, {'type': 'text', 'text': 'The output should be formatted as a JSON instance that conforms to the JSON schema below.\\\\n\\\\nAs an example, for the schema {\\\"properties\\\": {\\\"foo\\\": {\\\"title\\\": \\\"Foo\\\", \\\"description\\\": \\\"a list of strings\\\", \\\"type\\\": \\\"array\\\", \\\"items\\\": {\\\"type\\\": \\\"string\\\"}}}, \\\"required\\\": [\\\"foo\\\"]}\\\\nthe object {\\\"foo\\\": [\\\"bar\\\", \\\"baz\\\"]} is a well-formatted instance of the schema. The object {\\\"properties\\\": {\\\"foo\\\": [\\\"bar\\\", \\\"baz\\\"]}} is not well-formatted.\\\\n\\\\nHere is the output schema:\\\\n```\\\\n{\\\"description\\\": \\\"Information and description about a figure.\\\", \\\"properties\\\": {\\\"title\\\": {\\\"description\\\": \\\"title of the figure\\\", \\\"title\\\": \\\"Title\\\", \\\"type\\\": \\\"string\\\"}, \\\"xlabel\\\": {\\\"description\\\": \\\"label of the x-axis\\\", \\\"title\\\": \\\"Xlabel\\\", \\\"type\\\": \\\"string\\\"}, \\\"ylabel\\\": {\\\"description\\\": \\\"label of the y-axis\\\", \\\"title\\\": \\\"Ylabel\\\", \\\"type\\\": \\\"string\\\"}, \\\"xrange\\\": {\\\"description\\\": \\\"range of the x-axis\\\", \\\"items\\\": {\\\"type\\\": \\\"number\\\"}, \\\"title\\\": \\\"Xrange\\\", \\\"type\\\": \\\"array\\\"}, \\\"yrange\\\": {\\\"description\\\": \\\"range of the y-axis\\\", \\\"items\\\": {\\\"type\\\": \\\"number\\\"}, \\\"title\\\": \\\"Yrange\\\", \\\"type\\\": \\\"array\\\"}, \\\"description\\\": {\\\"description\\\": \\\"description of the meaning of the figure, the data and the context\\\", \\\"title\\\": \\\"Description\\\", \\\"type\\\": \\\"string\\\"}}, \\\"required\\\": [\\\"title\\\", \\\"xlabel\\\", \\\"ylabel\\\", \\\"xrange\\\", \\\"yrange\\\", \\\"description\\\"]}\\\\n```'}, {'type': 'image_url', 'image_url': {'url': 'data:image/jpeg;base64,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'}}]\"\n", + " ]\n", + "}\n", + "\u001b[36;1m\u001b[1;3m[llm/end]\u001b[0m \u001b[1m[chain:RunnableSequence > chain:image_model > llm:ChatOpenAI] [8.52s] Exiting LLM run with output:\n", + "\u001b[0m{\n", + " \"generations\": [\n", + " [\n", + " {\n", + " \"text\": \"```json\\n{\\n \\\"title\\\": \\\"Energy vs. Volume\\\",\\n \\\"xlabel\\\": \\\"volume [ų]\\\",\\n \\\"ylabel\\\": \\\"energy [eV]\\\",\\n \\\"xrange\\\": [14, 18],\\n \\\"yrange\\\": [0, 0.25],\\n \\\"description\\\": \\\"The figure appears to be a line chart that shows the relationship between energy in electron volts (eV) and volume in cubic angstroms (ų). The chart depicts a downward curve that starts at a higher energy level and decreases as volume increases, suggesting that energy decreases with increasing volume. The curve reaches a minimum and then slightly increases, indicating a potential optimal volume for minimal energy. The chart includes a series of data points connected by a smooth curve, which likely represents a fitted model or a theoretical prediction. The title of the figure in the image, 'sj: E: -0.000 eV, V: 16.781 ų, B: 100.142 GPa', indicates specific values at the minimum of the curve, with 'E' representing the minimum energy, 'V' the corresponding volume, and 'B' the bulk modulus.\\\"\\n}\\n```\",\n", + " \"generation_info\": {\n", + " \"finish_reason\": \"stop\",\n", + " \"logprobs\": null\n", + " },\n", + " \"type\": \"ChatGeneration\",\n", + " \"message\": {\n", + " \"lc\": 1,\n", + " \"type\": \"constructor\",\n", + " \"id\": [\n", + " \"langchain\",\n", + " \"schema\",\n", + " \"messages\",\n", + " \"AIMessage\"\n", + " ],\n", + " \"kwargs\": {\n", + " \"content\": \"```json\\n{\\n \\\"title\\\": \\\"Energy vs. Volume\\\",\\n \\\"xlabel\\\": \\\"volume [ų]\\\",\\n \\\"ylabel\\\": \\\"energy [eV]\\\",\\n \\\"xrange\\\": [14, 18],\\n \\\"yrange\\\": [0, 0.25],\\n \\\"description\\\": \\\"The figure appears to be a line chart that shows the relationship between energy in electron volts (eV) and volume in cubic angstroms (ų). The chart depicts a downward curve that starts at a higher energy level and decreases as volume increases, suggesting that energy decreases with increasing volume. The curve reaches a minimum and then slightly increases, indicating a potential optimal volume for minimal energy. The chart includes a series of data points connected by a smooth curve, which likely represents a fitted model or a theoretical prediction. The title of the figure in the image, 'sj: E: -0.000 eV, V: 16.781 ų, B: 100.142 GPa', indicates specific values at the minimum of the curve, with 'E' representing the minimum energy, 'V' the corresponding volume, and 'B' the bulk modulus.\\\"\\n}\\n```\",\n", + " \"response_metadata\": {\n", + " \"token_usage\": {\n", + " \"completion_tokens\": 243,\n", + " \"prompt_tokens\": 843,\n", + " \"total_tokens\": 1086\n", + " },\n", + " \"model_name\": \"gpt-4-vision-preview\",\n", + " \"system_fingerprint\": null,\n", + " \"finish_reason\": \"stop\",\n", + " \"logprobs\": null\n", + " },\n", + " \"type\": \"ai\",\n", + " \"id\": \"run-84948fb7-0ae1-47b7-9ea6-2721cfafe67d-0\",\n", + " \"tool_calls\": [],\n", + " \"invalid_tool_calls\": []\n", + " }\n", + " }\n", + " }\n", + " ]\n", + " ],\n", + " \"llm_output\": {\n", + " \"token_usage\": {\n", + " \"completion_tokens\": 243,\n", + " \"prompt_tokens\": 843,\n", + " \"total_tokens\": 1086\n", + " },\n", + " \"model_name\": \"gpt-4-vision-preview\",\n", + " \"system_fingerprint\": null\n", + " },\n", + " \"run\": null\n", + "}\n", + "\u001b[36;1m\u001b[1;3m[chain/end]\u001b[0m \u001b[1m[chain:RunnableSequence > chain:image_model] [8.56s] Exiting Chain run with output:\n", + "\u001b[0m{\n", + " \"output\": \"```json\\n{\\n \\\"title\\\": \\\"Energy vs. Volume\\\",\\n \\\"xlabel\\\": \\\"volume [ų]\\\",\\n \\\"ylabel\\\": \\\"energy [eV]\\\",\\n \\\"xrange\\\": [14, 18],\\n \\\"yrange\\\": [0, 0.25],\\n \\\"description\\\": \\\"The figure appears to be a line chart that shows the relationship between energy in electron volts (eV) and volume in cubic angstroms (ų). The chart depicts a downward curve that starts at a higher energy level and decreases as volume increases, suggesting that energy decreases with increasing volume. The curve reaches a minimum and then slightly increases, indicating a potential optimal volume for minimal energy. The chart includes a series of data points connected by a smooth curve, which likely represents a fitted model or a theoretical prediction. The title of the figure in the image, 'sj: E: -0.000 eV, V: 16.781 ų, B: 100.142 GPa', indicates specific values at the minimum of the curve, with 'E' representing the minimum energy, 'V' the corresponding volume, and 'B' the bulk modulus.\\\"\\n}\\n```\"\n", + "}\n", + "\u001b[32;1m\u001b[1;3m[chain/start]\u001b[0m \u001b[1m[chain:RunnableSequence > parser:JsonOutputParser] Entering Parser run with input:\n", + "\u001b[0m{\n", + " \"input\": \"```json\\n{\\n \\\"title\\\": \\\"Energy vs. Volume\\\",\\n \\\"xlabel\\\": \\\"volume [ų]\\\",\\n \\\"ylabel\\\": \\\"energy [eV]\\\",\\n \\\"xrange\\\": [14, 18],\\n \\\"yrange\\\": [0, 0.25],\\n \\\"description\\\": \\\"The figure appears to be a line chart that shows the relationship between energy in electron volts (eV) and volume in cubic angstroms (ų). The chart depicts a downward curve that starts at a higher energy level and decreases as volume increases, suggesting that energy decreases with increasing volume. The curve reaches a minimum and then slightly increases, indicating a potential optimal volume for minimal energy. The chart includes a series of data points connected by a smooth curve, which likely represents a fitted model or a theoretical prediction. The title of the figure in the image, 'sj: E: -0.000 eV, V: 16.781 ų, B: 100.142 GPa', indicates specific values at the minimum of the curve, with 'E' representing the minimum energy, 'V' the corresponding volume, and 'B' the bulk modulus.\\\"\\n}\\n```\"\n", + "}\n", + "\u001b[36;1m\u001b[1;3m[chain/end]\u001b[0m \u001b[1m[chain:RunnableSequence > parser:JsonOutputParser] [7ms] Exiting Parser run with output:\n", + "\u001b[0m{\n", + " \"title\": \"Energy vs. Volume\",\n", + " \"xlabel\": \"volume [ų]\",\n", + " \"ylabel\": \"energy [eV]\",\n", + " \"xrange\": [\n", + " 14,\n", + " 18\n", + " ],\n", + " \"yrange\": [\n", + " 0,\n", + " 0.25\n", + " ],\n", + " \"description\": \"The figure appears to be a line chart that shows the relationship between energy in electron volts (eV) and volume in cubic angstroms (ų). The chart depicts a downward curve that starts at a higher energy level and decreases as volume increases, suggesting that energy decreases with increasing volume. The curve reaches a minimum and then slightly increases, indicating a potential optimal volume for minimal energy. The chart includes a series of data points connected by a smooth curve, which likely represents a fitted model or a theoretical prediction. The title of the figure in the image, 'sj: E: -0.000 eV, V: 16.781 ų, B: 100.142 GPa', indicates specific values at the minimum of the curve, with 'E' representing the minimum energy, 'V' the corresponding volume, and 'B' the bulk modulus.\"\n", + "}\n", + "\u001b[36;1m\u001b[1;3m[chain/end]\u001b[0m \u001b[1m[chain:RunnableSequence] [8.57s] Exiting Chain run with output:\n", + "\u001b[0m{\n", + " \"title\": \"Energy vs. Volume\",\n", + " \"xlabel\": \"volume [ų]\",\n", + " \"ylabel\": \"energy [eV]\",\n", + " \"xrange\": [\n", + " 14,\n", + " 18\n", + " ],\n", + " \"yrange\": [\n", + " 0,\n", + " 0.25\n", + " ],\n", + " \"description\": \"The figure appears to be a line chart that shows the relationship between energy in electron volts (eV) and volume in cubic angstroms (ų). The chart depicts a downward curve that starts at a higher energy level and decreases as volume increases, suggesting that energy decreases with increasing volume. The curve reaches a minimum and then slightly increases, indicating a potential optimal volume for minimal energy. The chart includes a series of data points connected by a smooth curve, which likely represents a fitted model or a theoretical prediction. The title of the figure in the image, 'sj: E: -0.000 eV, V: 16.781 ų, B: 100.142 GPa', indicates specific values at the minimum of the curve, with 'E' representing the minimum energy, 'V' the corresponding volume, and 'B' the bulk modulus.\"\n", + "}\n", + "{'title': 'Energy vs. Volume', 'xlabel': 'volume [ų]', 'ylabel': 'energy [eV]', 'xrange': [14, 18], 'yrange': [0, 0.25], 'description': \"The figure appears to be a line chart that shows the relationship between energy in electron volts (eV) and volume in cubic angstroms (ų). The chart depicts a downward curve that starts at a higher energy level and decreases as volume increases, suggesting that energy decreases with increasing volume. The curve reaches a minimum and then slightly increases, indicating a potential optimal volume for minimal energy. The chart includes a series of data points connected by a smooth curve, which likely represents a fitted model or a theoretical prediction. The title of the figure in the image, 'sj: E: -0.000 eV, V: 16.781 ų, B: 100.142 GPa', indicates specific values at the minimum of the curve, with 'E' representing the minimum energy, 'V' the corresponding volume, and 'B' the bulk modulus.\"}\n" + ] + } + ], + "source": [ + "\n", + "result = get_image_informations(\"Ag-eos.png\")\n", + "print(result)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "llamp", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.11.9" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} From 2e4b9ffa60c86fda5344e9ee990d033c0038a475 Mon Sep 17 00:00:00 2001 From: Yuan Chiang Date: Thu, 9 May 2024 13:57:27 -0700 Subject: [PATCH 2/4] change notebook name --- test_vision.ipynb | 283 ---------------------------------------------- 1 file changed, 283 deletions(-) delete mode 100644 test_vision.ipynb diff --git a/test_vision.ipynb b/test_vision.ipynb deleted file mode 100644 index 9e3a102..0000000 --- a/test_vision.ipynb +++ /dev/null @@ -1,283 +0,0 @@ -{ - "cells": [ - { - "cell_type": "code", - "execution_count": 1, - "metadata": {}, - "outputs": [], - "source": [ - "import os\n", - "\n", - "from dotenv import load_dotenv\n", - "from langchain_openai import ChatOpenAI\n", - "from pydantic import BaseModel, Field\n", - "from langchain.chains.transform import TransformChain\n", - "from langchain.chains import TransformChain\n", - "from langchain_core.messages import HumanMessage\n", - "from langchain import globals\n", - "from langchain_core.runnables import chain\n", - "from langchain_core.output_parsers import JsonOutputParser\n", - "\n", - "import base64\n", - "\n", - "load_dotenv()\n", - "\n", - "MP_API_KEY = os.getenv(\"MP_API_KEY\", None)\n", - "\n", - "OPENAI_API_KEY = os.getenv(\"OPENAI_API_KEY\", None)\n", - "OPENAI_ORGANIZATION = os.getenv(\"OPENAI_ORGANIZATION\", None)\n", - "\n", - "\n", - "OPENAI_GPT_MODEL = \"gpt-4-1106-preview\"\n", - "# OPENAI_GPT_MODEL = \"gpt-4-0125-preview\"\n", - "# OPENAI_GPT_MODEL = \"gpt-3.5-turbo-1106\"\n", - "# OPENAI_GPT_MODEL = \"gpt-4-turbo\"" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# 0. Untilties" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": {}, - "outputs": [], - "source": [ - "\n", - "def load_image(inputs: dict) -> dict:\n", - " \"\"\"Load image from file and encode it as base64.\"\"\"\n", - " image_path = inputs[\"image_path\"]\n", - " \n", - " def encode_image(image_path):\n", - " with open(image_path, \"rb\") as image_file:\n", - " return base64.b64encode(image_file.read()).decode('utf-8')\n", - " image_base64 = encode_image(image_path)\n", - " return {\"image\": image_base64}\n", - "\n", - "\n", - "class ImageInformation(BaseModel):\n", - " \"\"\"Information and description about a figure.\"\"\"\n", - " title: str = Field(description=\"title of the figure\")\n", - " xlabel: str = Field(description=\"label of the x-axis\")\n", - " ylabel: str = Field(description=\"label of the y-axis\")\n", - " xrange: list[float] = Field(description=\"range of the x-axis\")\n", - " yrange: list[float] = Field(description=\"range of the y-axis\")\n", - " description: str = Field(description=\"description of the meaning of the figure, the data and the context\")" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": {}, - "outputs": [], - "source": [ - "load_image_chain = TransformChain(\n", - " input_variables=[\"image_path\"],\n", - " output_variables=[\"image\"],\n", - " transform=load_image\n", - ")" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": {}, - "outputs": [], - "source": [ - "\n", - "# Set verbose\n", - "globals.set_debug(True)\n", - "\n", - "parser = JsonOutputParser(pydantic_object=ImageInformation)\n", - "\n", - "@chain\n", - "def image_model(inputs: dict) -> str | list[str] | dict:\n", - " \"\"\"Invoke model with image and prompt.\"\"\"\n", - " model = ChatOpenAI(temperature=0.5, model=\"gpt-4-vision-preview\", max_tokens=1024)\n", - " msg = model.invoke(\n", - " [HumanMessage(\n", - " content=[\n", - " {\"type\": \"text\", \"text\": inputs[\"prompt\"]},\n", - " {\"type\": \"text\", \"text\": parser.get_format_instructions()},\n", - " {\"type\": \"image_url\", \"image_url\": {\"url\": f\"data:image/jpeg;base64,{inputs['image']}\"}},\n", - " ])]\n", - " )\n", - " return msg.content\n", - "\n", - "def get_image_informations(image_path: str) -> dict:\n", - " vision_prompt = \"\"\"\n", - " Given the image, provide the following information:\n", - " - Title of the figure\n", - " - Type of the figure (e.g., bar chart, line chart, scatter plot)\n", - " - Labels and ranges of the axes\n", - " - Legend, including the meaning of the colors, names, and symbols\n", - " - A brief description of the data and trends\n", - " \"\"\"\n", - " vision_chain = load_image_chain | image_model | parser\n", - " return vision_chain.invoke({'image_path': f'{image_path}', \n", - " 'prompt': vision_prompt})" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[32;1m\u001b[1;3m[chain/start]\u001b[0m \u001b[1m[chain:RunnableSequence] Entering Chain run with input:\n", - "\u001b[0m{\n", - " \"image_path\": \"Ag-eos.png\",\n", - " \"prompt\": \"\\n Given the image, provide the following information:\\n - Title of the figure\\n - Type of the figure (e.g., bar chart, line chart, scatter plot)\\n - Labels and ranges of the axes\\n - Legend, including the meaning of the colors, names, and symbols\\n - A brief description of the data and trends\\n \"\n", - "}\n", - "\u001b[32;1m\u001b[1;3m[chain/start]\u001b[0m \u001b[1m[chain:RunnableSequence > chain:TransformChain] Entering Chain run with input:\n", - "\u001b[0m{\n", - " \"image_path\": \"Ag-eos.png\",\n", - " \"prompt\": \"\\n Given the image, provide the following information:\\n - Title of the figure\\n - Type of the figure (e.g., bar chart, line chart, scatter plot)\\n - Labels and ranges of the axes\\n - Legend, including the meaning of the colors, names, and symbols\\n - A brief description of the data and trends\\n \"\n", - "}\n", - "\u001b[36;1m\u001b[1;3m[chain/end]\u001b[0m \u001b[1m[chain:RunnableSequence > chain:TransformChain] [1ms] Exiting Chain run with output:\n", - "\u001b[0m{\n", - " \"image\": \"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\"\n", - "}\n", - "\u001b[32;1m\u001b[1;3m[chain/start]\u001b[0m \u001b[1m[chain:RunnableSequence > chain:image_model] Entering Chain run with input:\n", - "\u001b[0m{\n", - " \"image_path\": \"Ag-eos.png\",\n", - " \"prompt\": \"\\n Given the image, provide the following information:\\n - Title of the figure\\n - Type of the figure (e.g., bar chart, line chart, scatter plot)\\n - Labels and ranges of the axes\\n - Legend, including the meaning of the colors, names, and symbols\\n - A brief description of the data and trends\\n \",\n", - " \"image\": \"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\"\n", - "}\n", - "\u001b[32;1m\u001b[1;3m[llm/start]\u001b[0m \u001b[1m[chain:RunnableSequence > chain:image_model > llm:ChatOpenAI] Entering LLM run with input:\n", - "\u001b[0m{\n", - " \"prompts\": [\n", - " \"Human: [{'type': 'text', 'text': '\\\\n Given the image, provide the following information:\\\\n - Title of the figure\\\\n - Type of the figure (e.g., bar chart, line chart, scatter plot)\\\\n - Labels and ranges of the axes\\\\n - Legend, including the meaning of the colors, names, and symbols\\\\n - A brief description of the data and trends\\\\n '}, {'type': 'text', 'text': 'The output should be formatted as a JSON instance that conforms to the JSON schema below.\\\\n\\\\nAs an example, for the schema {\\\"properties\\\": {\\\"foo\\\": {\\\"title\\\": \\\"Foo\\\", \\\"description\\\": \\\"a list of strings\\\", \\\"type\\\": \\\"array\\\", \\\"items\\\": {\\\"type\\\": \\\"string\\\"}}}, \\\"required\\\": [\\\"foo\\\"]}\\\\nthe object {\\\"foo\\\": [\\\"bar\\\", \\\"baz\\\"]} is a well-formatted instance of the schema. The object {\\\"properties\\\": {\\\"foo\\\": [\\\"bar\\\", \\\"baz\\\"]}} is not well-formatted.\\\\n\\\\nHere is the output schema:\\\\n```\\\\n{\\\"description\\\": \\\"Information and description about a figure.\\\", \\\"properties\\\": {\\\"title\\\": {\\\"description\\\": \\\"title of the figure\\\", \\\"title\\\": \\\"Title\\\", \\\"type\\\": \\\"string\\\"}, \\\"xlabel\\\": {\\\"description\\\": \\\"label of the x-axis\\\", \\\"title\\\": \\\"Xlabel\\\", \\\"type\\\": \\\"string\\\"}, \\\"ylabel\\\": {\\\"description\\\": \\\"label of the y-axis\\\", \\\"title\\\": \\\"Ylabel\\\", \\\"type\\\": \\\"string\\\"}, \\\"xrange\\\": {\\\"description\\\": \\\"range of the x-axis\\\", \\\"items\\\": {\\\"type\\\": \\\"number\\\"}, \\\"title\\\": \\\"Xrange\\\", \\\"type\\\": \\\"array\\\"}, \\\"yrange\\\": {\\\"description\\\": \\\"range of the y-axis\\\", \\\"items\\\": {\\\"type\\\": \\\"number\\\"}, \\\"title\\\": \\\"Yrange\\\", \\\"type\\\": \\\"array\\\"}, \\\"description\\\": {\\\"description\\\": \\\"description of the meaning of the figure, the data and the context\\\", \\\"title\\\": \\\"Description\\\", \\\"type\\\": \\\"string\\\"}}, \\\"required\\\": [\\\"title\\\", \\\"xlabel\\\", \\\"ylabel\\\", \\\"xrange\\\", \\\"yrange\\\", \\\"description\\\"]}\\\\n```'}, {'type': 'image_url', 'image_url': {'url': 'data:image/jpeg;base64,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'}}]\"\n", - " ]\n", - "}\n", - "\u001b[36;1m\u001b[1;3m[llm/end]\u001b[0m \u001b[1m[chain:RunnableSequence > chain:image_model > llm:ChatOpenAI] [8.52s] Exiting LLM run with output:\n", - "\u001b[0m{\n", - " \"generations\": [\n", - " [\n", - " {\n", - " \"text\": \"```json\\n{\\n \\\"title\\\": \\\"Energy vs. Volume\\\",\\n \\\"xlabel\\\": \\\"volume [ų]\\\",\\n \\\"ylabel\\\": \\\"energy [eV]\\\",\\n \\\"xrange\\\": [14, 18],\\n \\\"yrange\\\": [0, 0.25],\\n \\\"description\\\": \\\"The figure appears to be a line chart that shows the relationship between energy in electron volts (eV) and volume in cubic angstroms (ų). The chart depicts a downward curve that starts at a higher energy level and decreases as volume increases, suggesting that energy decreases with increasing volume. The curve reaches a minimum and then slightly increases, indicating a potential optimal volume for minimal energy. The chart includes a series of data points connected by a smooth curve, which likely represents a fitted model or a theoretical prediction. The title of the figure in the image, 'sj: E: -0.000 eV, V: 16.781 ų, B: 100.142 GPa', indicates specific values at the minimum of the curve, with 'E' representing the minimum energy, 'V' the corresponding volume, and 'B' the bulk modulus.\\\"\\n}\\n```\",\n", - " \"generation_info\": {\n", - " \"finish_reason\": \"stop\",\n", - " \"logprobs\": null\n", - " },\n", - " \"type\": \"ChatGeneration\",\n", - " \"message\": {\n", - " \"lc\": 1,\n", - " \"type\": \"constructor\",\n", - " \"id\": [\n", - " \"langchain\",\n", - " \"schema\",\n", - " \"messages\",\n", - " \"AIMessage\"\n", - " ],\n", - " \"kwargs\": {\n", - " \"content\": \"```json\\n{\\n \\\"title\\\": \\\"Energy vs. Volume\\\",\\n \\\"xlabel\\\": \\\"volume [ų]\\\",\\n \\\"ylabel\\\": \\\"energy [eV]\\\",\\n \\\"xrange\\\": [14, 18],\\n \\\"yrange\\\": [0, 0.25],\\n \\\"description\\\": \\\"The figure appears to be a line chart that shows the relationship between energy in electron volts (eV) and volume in cubic angstroms (ų). The chart depicts a downward curve that starts at a higher energy level and decreases as volume increases, suggesting that energy decreases with increasing volume. The curve reaches a minimum and then slightly increases, indicating a potential optimal volume for minimal energy. The chart includes a series of data points connected by a smooth curve, which likely represents a fitted model or a theoretical prediction. The title of the figure in the image, 'sj: E: -0.000 eV, V: 16.781 ų, B: 100.142 GPa', indicates specific values at the minimum of the curve, with 'E' representing the minimum energy, 'V' the corresponding volume, and 'B' the bulk modulus.\\\"\\n}\\n```\",\n", - " \"response_metadata\": {\n", - " \"token_usage\": {\n", - " \"completion_tokens\": 243,\n", - " \"prompt_tokens\": 843,\n", - " \"total_tokens\": 1086\n", - " },\n", - " \"model_name\": \"gpt-4-vision-preview\",\n", - " \"system_fingerprint\": null,\n", - " \"finish_reason\": \"stop\",\n", - " \"logprobs\": null\n", - " },\n", - " \"type\": \"ai\",\n", - " \"id\": \"run-84948fb7-0ae1-47b7-9ea6-2721cfafe67d-0\",\n", - " \"tool_calls\": [],\n", - " \"invalid_tool_calls\": []\n", - " }\n", - " }\n", - " }\n", - " ]\n", - " ],\n", - " \"llm_output\": {\n", - " \"token_usage\": {\n", - " \"completion_tokens\": 243,\n", - " \"prompt_tokens\": 843,\n", - " \"total_tokens\": 1086\n", - " },\n", - " \"model_name\": \"gpt-4-vision-preview\",\n", - " \"system_fingerprint\": null\n", - " },\n", - " \"run\": null\n", - "}\n", - "\u001b[36;1m\u001b[1;3m[chain/end]\u001b[0m \u001b[1m[chain:RunnableSequence > chain:image_model] [8.56s] Exiting Chain run with output:\n", - "\u001b[0m{\n", - " \"output\": \"```json\\n{\\n \\\"title\\\": \\\"Energy vs. Volume\\\",\\n \\\"xlabel\\\": \\\"volume [ų]\\\",\\n \\\"ylabel\\\": \\\"energy [eV]\\\",\\n \\\"xrange\\\": [14, 18],\\n \\\"yrange\\\": [0, 0.25],\\n \\\"description\\\": \\\"The figure appears to be a line chart that shows the relationship between energy in electron volts (eV) and volume in cubic angstroms (ų). The chart depicts a downward curve that starts at a higher energy level and decreases as volume increases, suggesting that energy decreases with increasing volume. The curve reaches a minimum and then slightly increases, indicating a potential optimal volume for minimal energy. The chart includes a series of data points connected by a smooth curve, which likely represents a fitted model or a theoretical prediction. The title of the figure in the image, 'sj: E: -0.000 eV, V: 16.781 ų, B: 100.142 GPa', indicates specific values at the minimum of the curve, with 'E' representing the minimum energy, 'V' the corresponding volume, and 'B' the bulk modulus.\\\"\\n}\\n```\"\n", - "}\n", - "\u001b[32;1m\u001b[1;3m[chain/start]\u001b[0m \u001b[1m[chain:RunnableSequence > parser:JsonOutputParser] Entering Parser run with input:\n", - "\u001b[0m{\n", - " \"input\": \"```json\\n{\\n \\\"title\\\": \\\"Energy vs. Volume\\\",\\n \\\"xlabel\\\": \\\"volume [ų]\\\",\\n \\\"ylabel\\\": \\\"energy [eV]\\\",\\n \\\"xrange\\\": [14, 18],\\n \\\"yrange\\\": [0, 0.25],\\n \\\"description\\\": \\\"The figure appears to be a line chart that shows the relationship between energy in electron volts (eV) and volume in cubic angstroms (ų). The chart depicts a downward curve that starts at a higher energy level and decreases as volume increases, suggesting that energy decreases with increasing volume. The curve reaches a minimum and then slightly increases, indicating a potential optimal volume for minimal energy. The chart includes a series of data points connected by a smooth curve, which likely represents a fitted model or a theoretical prediction. The title of the figure in the image, 'sj: E: -0.000 eV, V: 16.781 ų, B: 100.142 GPa', indicates specific values at the minimum of the curve, with 'E' representing the minimum energy, 'V' the corresponding volume, and 'B' the bulk modulus.\\\"\\n}\\n```\"\n", - "}\n", - "\u001b[36;1m\u001b[1;3m[chain/end]\u001b[0m \u001b[1m[chain:RunnableSequence > parser:JsonOutputParser] [7ms] Exiting Parser run with output:\n", - "\u001b[0m{\n", - " \"title\": \"Energy vs. Volume\",\n", - " \"xlabel\": \"volume [ų]\",\n", - " \"ylabel\": \"energy [eV]\",\n", - " \"xrange\": [\n", - " 14,\n", - " 18\n", - " ],\n", - " \"yrange\": [\n", - " 0,\n", - " 0.25\n", - " ],\n", - " \"description\": \"The figure appears to be a line chart that shows the relationship between energy in electron volts (eV) and volume in cubic angstroms (ų). The chart depicts a downward curve that starts at a higher energy level and decreases as volume increases, suggesting that energy decreases with increasing volume. The curve reaches a minimum and then slightly increases, indicating a potential optimal volume for minimal energy. The chart includes a series of data points connected by a smooth curve, which likely represents a fitted model or a theoretical prediction. The title of the figure in the image, 'sj: E: -0.000 eV, V: 16.781 ų, B: 100.142 GPa', indicates specific values at the minimum of the curve, with 'E' representing the minimum energy, 'V' the corresponding volume, and 'B' the bulk modulus.\"\n", - "}\n", - "\u001b[36;1m\u001b[1;3m[chain/end]\u001b[0m \u001b[1m[chain:RunnableSequence] [8.57s] Exiting Chain run with output:\n", - "\u001b[0m{\n", - " \"title\": \"Energy vs. Volume\",\n", - " \"xlabel\": \"volume [ų]\",\n", - " \"ylabel\": \"energy [eV]\",\n", - " \"xrange\": [\n", - " 14,\n", - " 18\n", - " ],\n", - " \"yrange\": [\n", - " 0,\n", - " 0.25\n", - " ],\n", - " \"description\": \"The figure appears to be a line chart that shows the relationship between energy in electron volts (eV) and volume in cubic angstroms (ų). The chart depicts a downward curve that starts at a higher energy level and decreases as volume increases, suggesting that energy decreases with increasing volume. The curve reaches a minimum and then slightly increases, indicating a potential optimal volume for minimal energy. The chart includes a series of data points connected by a smooth curve, which likely represents a fitted model or a theoretical prediction. The title of the figure in the image, 'sj: E: -0.000 eV, V: 16.781 ų, B: 100.142 GPa', indicates specific values at the minimum of the curve, with 'E' representing the minimum energy, 'V' the corresponding volume, and 'B' the bulk modulus.\"\n", - "}\n", - "{'title': 'Energy vs. Volume', 'xlabel': 'volume [ų]', 'ylabel': 'energy [eV]', 'xrange': [14, 18], 'yrange': [0, 0.25], 'description': \"The figure appears to be a line chart that shows the relationship between energy in electron volts (eV) and volume in cubic angstroms (ų). The chart depicts a downward curve that starts at a higher energy level and decreases as volume increases, suggesting that energy decreases with increasing volume. The curve reaches a minimum and then slightly increases, indicating a potential optimal volume for minimal energy. The chart includes a series of data points connected by a smooth curve, which likely represents a fitted model or a theoretical prediction. The title of the figure in the image, 'sj: E: -0.000 eV, V: 16.781 ų, B: 100.142 GPa', indicates specific values at the minimum of the curve, with 'E' representing the minimum energy, 'V' the corresponding volume, and 'B' the bulk modulus.\"}\n" - ] - } - ], - "source": [ - "\n", - "result = get_image_informations(\"Ag-eos.png\")\n", - "print(result)" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "llamp", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.11.9" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} From 815293ef8a85dd32603e2462a25d091f9f9ed172 Mon Sep 17 00:00:00 2001 From: Yuan Chiang Date: Thu, 9 May 2024 13:57:27 -0700 Subject: [PATCH 3/4] change notebook name --- test_vision.ipynb => 10_vision_read_eos.ipynb | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename test_vision.ipynb => 10_vision_read_eos.ipynb (100%) diff --git a/test_vision.ipynb b/10_vision_read_eos.ipynb similarity index 100% rename from test_vision.ipynb rename to 10_vision_read_eos.ipynb From ef16969b02e1630a56aa69ba5a2b2377c3d7a11f Mon Sep 17 00:00:00 2001 From: Yuan Chiang Date: Thu, 9 May 2024 14:31:24 -0700 Subject: [PATCH 4/4] update notebook example; include pprint --- 10_vision_read_eos.ipynb | 93 +++++++++++++++++++++++++--------------- 1 file changed, 59 insertions(+), 34 deletions(-) diff --git a/10_vision_read_eos.ipynb b/10_vision_read_eos.ipynb index 9e3a102..a2958ed 100644 --- a/10_vision_read_eos.ipynb +++ b/10_vision_read_eos.ipynb @@ -1,5 +1,14 @@ { "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# 10. Use vision model to read the figure\n", + "\n", + "This notebook demonstrates how vision model can read and summarize scientific figure from the simulation output." + ] + }, { "cell_type": "code", "execution_count": 1, @@ -7,6 +16,7 @@ "outputs": [], "source": [ "import os\n", + "from pprint import pprint\n", "\n", "from dotenv import load_dotenv\n", "from langchain_openai import ChatOpenAI\n", @@ -38,7 +48,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "# 0. Untilties" + "## Define image encoding function and output schema" ] }, { @@ -70,24 +80,24 @@ ] }, { - "cell_type": "code", - "execution_count": 3, + "cell_type": "markdown", "metadata": {}, - "outputs": [], "source": [ - "load_image_chain = TransformChain(\n", - " input_variables=[\"image_path\"],\n", - " output_variables=[\"image\"],\n", - " transform=load_image\n", - ")" + "## Define LLM chain to process figure" ] }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 3, "metadata": {}, "outputs": [], "source": [ + "load_image_chain = TransformChain(\n", + " input_variables=[\"image_path\"],\n", + " output_variables=[\"image\"],\n", + " transform=load_image\n", + ")\n", + "\n", "\n", "# Set verbose\n", "globals.set_debug(True)\n", @@ -108,7 +118,7 @@ " )\n", " return msg.content\n", "\n", - "def get_image_informations(image_path: str) -> dict:\n", + "def read_figure(image_path: str) -> dict:\n", " vision_prompt = \"\"\"\n", " Given the image, provide the following information:\n", " - Title of the figure\n", @@ -124,7 +134,7 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 4, "metadata": {}, "outputs": [ { @@ -141,7 +151,7 @@ " \"image_path\": \"Ag-eos.png\",\n", " \"prompt\": \"\\n Given the image, provide the following information:\\n - Title of the figure\\n - Type of the figure (e.g., bar chart, line chart, scatter plot)\\n - Labels and ranges of the axes\\n - Legend, including the meaning of the colors, names, and symbols\\n - A brief description of the data and trends\\n \"\n", "}\n", - "\u001b[36;1m\u001b[1;3m[chain/end]\u001b[0m \u001b[1m[chain:RunnableSequence > chain:TransformChain] [1ms] Exiting Chain run with output:\n", + "\u001b[36;1m\u001b[1;3m[chain/end]\u001b[0m \u001b[1m[chain:RunnableSequence > chain:TransformChain] [0ms] Exiting Chain run with output:\n", "\u001b[0m{\n", " \"image\": \"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\"\n", "}\n", @@ -157,12 +167,12 @@ " \"Human: [{'type': 'text', 'text': '\\\\n Given the image, provide the following information:\\\\n - Title of the figure\\\\n - Type of the figure (e.g., bar chart, line chart, scatter plot)\\\\n - Labels and ranges of the axes\\\\n - Legend, including the meaning of the colors, names, and symbols\\\\n - A brief description of the data and trends\\\\n '}, {'type': 'text', 'text': 'The output should be formatted as a JSON instance that conforms to the JSON schema below.\\\\n\\\\nAs an example, for the schema {\\\"properties\\\": {\\\"foo\\\": {\\\"title\\\": \\\"Foo\\\", \\\"description\\\": \\\"a list of strings\\\", \\\"type\\\": \\\"array\\\", \\\"items\\\": {\\\"type\\\": \\\"string\\\"}}}, \\\"required\\\": [\\\"foo\\\"]}\\\\nthe object {\\\"foo\\\": [\\\"bar\\\", \\\"baz\\\"]} is a well-formatted instance of the schema. The object {\\\"properties\\\": {\\\"foo\\\": [\\\"bar\\\", \\\"baz\\\"]}} is not well-formatted.\\\\n\\\\nHere is the output schema:\\\\n```\\\\n{\\\"description\\\": \\\"Information and description about a figure.\\\", \\\"properties\\\": {\\\"title\\\": {\\\"description\\\": \\\"title of the figure\\\", \\\"title\\\": \\\"Title\\\", \\\"type\\\": \\\"string\\\"}, \\\"xlabel\\\": {\\\"description\\\": \\\"label of the x-axis\\\", \\\"title\\\": \\\"Xlabel\\\", \\\"type\\\": \\\"string\\\"}, \\\"ylabel\\\": {\\\"description\\\": \\\"label of the y-axis\\\", \\\"title\\\": \\\"Ylabel\\\", \\\"type\\\": \\\"string\\\"}, \\\"xrange\\\": {\\\"description\\\": \\\"range of the x-axis\\\", \\\"items\\\": {\\\"type\\\": \\\"number\\\"}, \\\"title\\\": \\\"Xrange\\\", \\\"type\\\": \\\"array\\\"}, \\\"yrange\\\": {\\\"description\\\": \\\"range of the y-axis\\\", \\\"items\\\": {\\\"type\\\": \\\"number\\\"}, \\\"title\\\": \\\"Yrange\\\", \\\"type\\\": \\\"array\\\"}, \\\"description\\\": {\\\"description\\\": \\\"description of the meaning of the figure, the data and the context\\\", \\\"title\\\": \\\"Description\\\", \\\"type\\\": \\\"string\\\"}}, \\\"required\\\": [\\\"title\\\", \\\"xlabel\\\", \\\"ylabel\\\", \\\"xrange\\\", \\\"yrange\\\", \\\"description\\\"]}\\\\n```'}, {'type': 'image_url', 'image_url': {'url': 'data:image/jpeg;base64,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'}}]\"\n", " ]\n", "}\n", - "\u001b[36;1m\u001b[1;3m[llm/end]\u001b[0m \u001b[1m[chain:RunnableSequence > chain:image_model > llm:ChatOpenAI] [8.52s] Exiting LLM run with output:\n", + "\u001b[36;1m\u001b[1;3m[llm/end]\u001b[0m \u001b[1m[chain:RunnableSequence > chain:image_model > llm:ChatOpenAI] [7.10s] Exiting LLM run with output:\n", "\u001b[0m{\n", " \"generations\": [\n", " [\n", " {\n", - " \"text\": \"```json\\n{\\n \\\"title\\\": \\\"Energy vs. Volume\\\",\\n \\\"xlabel\\\": \\\"volume [ų]\\\",\\n \\\"ylabel\\\": \\\"energy [eV]\\\",\\n \\\"xrange\\\": [14, 18],\\n \\\"yrange\\\": [0, 0.25],\\n \\\"description\\\": \\\"The figure appears to be a line chart that shows the relationship between energy in electron volts (eV) and volume in cubic angstroms (ų). The chart depicts a downward curve that starts at a higher energy level and decreases as volume increases, suggesting that energy decreases with increasing volume. The curve reaches a minimum and then slightly increases, indicating a potential optimal volume for minimal energy. The chart includes a series of data points connected by a smooth curve, which likely represents a fitted model or a theoretical prediction. The title of the figure in the image, 'sj: E: -0.000 eV, V: 16.781 ų, B: 100.142 GPa', indicates specific values at the minimum of the curve, with 'E' representing the minimum energy, 'V' the corresponding volume, and 'B' the bulk modulus.\\\"\\n}\\n```\",\n", + " \"text\": \"```json\\n{\\n \\\"title\\\": \\\"Energy vs Volume\\\",\\n \\\"xlabel\\\": \\\"volume [ų]\\\",\\n \\\"ylabel\\\": \\\"energy [eV]\\\",\\n \\\"xrange\\\": [14, 18],\\n \\\"yrange\\\": [0, 0.25],\\n \\\"description\\\": \\\"The figure is a plot of energy in electron volts (eV) as a function of volume in cubic angstroms (ų). The data points are represented by blue dots and are connected by a red curve, suggesting a fitted model or interpolation between the points. The plot shows a downward trend in energy as volume increases from 14 to approximately 16 ų, after which the energy levels off as the volume continues to increase up to 18 ų. The plot includes a legend or a title within the plot area that reads 'sj: E: -0.000 eV, V: 16.781 ų, B: 100.142 GPa', which likely indicates specific parameters or calculated values at the minimum energy point: E represents energy, V represents volume, and B represents bulk modulus.\\\"\\n}\\n```\",\n", " \"generation_info\": {\n", " \"finish_reason\": \"stop\",\n", " \"logprobs\": null\n", @@ -178,12 +188,12 @@ " \"AIMessage\"\n", " ],\n", " \"kwargs\": {\n", - " \"content\": \"```json\\n{\\n \\\"title\\\": \\\"Energy vs. Volume\\\",\\n \\\"xlabel\\\": \\\"volume [ų]\\\",\\n \\\"ylabel\\\": \\\"energy [eV]\\\",\\n \\\"xrange\\\": [14, 18],\\n \\\"yrange\\\": [0, 0.25],\\n \\\"description\\\": \\\"The figure appears to be a line chart that shows the relationship between energy in electron volts (eV) and volume in cubic angstroms (ų). The chart depicts a downward curve that starts at a higher energy level and decreases as volume increases, suggesting that energy decreases with increasing volume. The curve reaches a minimum and then slightly increases, indicating a potential optimal volume for minimal energy. The chart includes a series of data points connected by a smooth curve, which likely represents a fitted model or a theoretical prediction. The title of the figure in the image, 'sj: E: -0.000 eV, V: 16.781 ų, B: 100.142 GPa', indicates specific values at the minimum of the curve, with 'E' representing the minimum energy, 'V' the corresponding volume, and 'B' the bulk modulus.\\\"\\n}\\n```\",\n", + " \"content\": \"```json\\n{\\n \\\"title\\\": \\\"Energy vs Volume\\\",\\n \\\"xlabel\\\": \\\"volume [ų]\\\",\\n \\\"ylabel\\\": \\\"energy [eV]\\\",\\n \\\"xrange\\\": [14, 18],\\n \\\"yrange\\\": [0, 0.25],\\n \\\"description\\\": \\\"The figure is a plot of energy in electron volts (eV) as a function of volume in cubic angstroms (ų). The data points are represented by blue dots and are connected by a red curve, suggesting a fitted model or interpolation between the points. The plot shows a downward trend in energy as volume increases from 14 to approximately 16 ų, after which the energy levels off as the volume continues to increase up to 18 ų. The plot includes a legend or a title within the plot area that reads 'sj: E: -0.000 eV, V: 16.781 ų, B: 100.142 GPa', which likely indicates specific parameters or calculated values at the minimum energy point: E represents energy, V represents volume, and B represents bulk modulus.\\\"\\n}\\n```\",\n", " \"response_metadata\": {\n", " \"token_usage\": {\n", - " \"completion_tokens\": 243,\n", + " \"completion_tokens\": 232,\n", " \"prompt_tokens\": 843,\n", - " \"total_tokens\": 1086\n", + " \"total_tokens\": 1075\n", " },\n", " \"model_name\": \"gpt-4-vision-preview\",\n", " \"system_fingerprint\": null,\n", @@ -191,7 +201,7 @@ " \"logprobs\": null\n", " },\n", " \"type\": \"ai\",\n", - " \"id\": \"run-84948fb7-0ae1-47b7-9ea6-2721cfafe67d-0\",\n", + " \"id\": \"run-6a2f9208-fe2a-439a-8bc9-098d2939de64-0\",\n", " \"tool_calls\": [],\n", " \"invalid_tool_calls\": []\n", " }\n", @@ -201,26 +211,26 @@ " ],\n", " \"llm_output\": {\n", " \"token_usage\": {\n", - " \"completion_tokens\": 243,\n", + " \"completion_tokens\": 232,\n", " \"prompt_tokens\": 843,\n", - " \"total_tokens\": 1086\n", + " \"total_tokens\": 1075\n", " },\n", " \"model_name\": \"gpt-4-vision-preview\",\n", " \"system_fingerprint\": null\n", " },\n", " \"run\": null\n", "}\n", - "\u001b[36;1m\u001b[1;3m[chain/end]\u001b[0m \u001b[1m[chain:RunnableSequence > chain:image_model] [8.56s] Exiting Chain run with output:\n", + "\u001b[36;1m\u001b[1;3m[chain/end]\u001b[0m \u001b[1m[chain:RunnableSequence > chain:image_model] [7.13s] Exiting Chain run with output:\n", "\u001b[0m{\n", - " \"output\": \"```json\\n{\\n \\\"title\\\": \\\"Energy vs. Volume\\\",\\n \\\"xlabel\\\": \\\"volume [ų]\\\",\\n \\\"ylabel\\\": \\\"energy [eV]\\\",\\n \\\"xrange\\\": [14, 18],\\n \\\"yrange\\\": [0, 0.25],\\n \\\"description\\\": \\\"The figure appears to be a line chart that shows the relationship between energy in electron volts (eV) and volume in cubic angstroms (ų). The chart depicts a downward curve that starts at a higher energy level and decreases as volume increases, suggesting that energy decreases with increasing volume. The curve reaches a minimum and then slightly increases, indicating a potential optimal volume for minimal energy. The chart includes a series of data points connected by a smooth curve, which likely represents a fitted model or a theoretical prediction. The title of the figure in the image, 'sj: E: -0.000 eV, V: 16.781 ų, B: 100.142 GPa', indicates specific values at the minimum of the curve, with 'E' representing the minimum energy, 'V' the corresponding volume, and 'B' the bulk modulus.\\\"\\n}\\n```\"\n", + " \"output\": \"```json\\n{\\n \\\"title\\\": \\\"Energy vs Volume\\\",\\n \\\"xlabel\\\": \\\"volume [ų]\\\",\\n \\\"ylabel\\\": \\\"energy [eV]\\\",\\n \\\"xrange\\\": [14, 18],\\n \\\"yrange\\\": [0, 0.25],\\n \\\"description\\\": \\\"The figure is a plot of energy in electron volts (eV) as a function of volume in cubic angstroms (ų). The data points are represented by blue dots and are connected by a red curve, suggesting a fitted model or interpolation between the points. The plot shows a downward trend in energy as volume increases from 14 to approximately 16 ų, after which the energy levels off as the volume continues to increase up to 18 ų. The plot includes a legend or a title within the plot area that reads 'sj: E: -0.000 eV, V: 16.781 ų, B: 100.142 GPa', which likely indicates specific parameters or calculated values at the minimum energy point: E represents energy, V represents volume, and B represents bulk modulus.\\\"\\n}\\n```\"\n", "}\n", "\u001b[32;1m\u001b[1;3m[chain/start]\u001b[0m \u001b[1m[chain:RunnableSequence > parser:JsonOutputParser] Entering Parser run with input:\n", "\u001b[0m{\n", - " \"input\": \"```json\\n{\\n \\\"title\\\": \\\"Energy vs. Volume\\\",\\n \\\"xlabel\\\": \\\"volume [ų]\\\",\\n \\\"ylabel\\\": \\\"energy [eV]\\\",\\n \\\"xrange\\\": [14, 18],\\n \\\"yrange\\\": [0, 0.25],\\n \\\"description\\\": \\\"The figure appears to be a line chart that shows the relationship between energy in electron volts (eV) and volume in cubic angstroms (ų). The chart depicts a downward curve that starts at a higher energy level and decreases as volume increases, suggesting that energy decreases with increasing volume. The curve reaches a minimum and then slightly increases, indicating a potential optimal volume for minimal energy. The chart includes a series of data points connected by a smooth curve, which likely represents a fitted model or a theoretical prediction. The title of the figure in the image, 'sj: E: -0.000 eV, V: 16.781 ų, B: 100.142 GPa', indicates specific values at the minimum of the curve, with 'E' representing the minimum energy, 'V' the corresponding volume, and 'B' the bulk modulus.\\\"\\n}\\n```\"\n", + " \"input\": \"```json\\n{\\n \\\"title\\\": \\\"Energy vs Volume\\\",\\n \\\"xlabel\\\": \\\"volume [ų]\\\",\\n \\\"ylabel\\\": \\\"energy [eV]\\\",\\n \\\"xrange\\\": [14, 18],\\n \\\"yrange\\\": [0, 0.25],\\n \\\"description\\\": \\\"The figure is a plot of energy in electron volts (eV) as a function of volume in cubic angstroms (ų). The data points are represented by blue dots and are connected by a red curve, suggesting a fitted model or interpolation between the points. The plot shows a downward trend in energy as volume increases from 14 to approximately 16 ų, after which the energy levels off as the volume continues to increase up to 18 ų. The plot includes a legend or a title within the plot area that reads 'sj: E: -0.000 eV, V: 16.781 ų, B: 100.142 GPa', which likely indicates specific parameters or calculated values at the minimum energy point: E represents energy, V represents volume, and B represents bulk modulus.\\\"\\n}\\n```\"\n", "}\n", - "\u001b[36;1m\u001b[1;3m[chain/end]\u001b[0m \u001b[1m[chain:RunnableSequence > parser:JsonOutputParser] [7ms] Exiting Parser run with output:\n", + "\u001b[36;1m\u001b[1;3m[chain/end]\u001b[0m \u001b[1m[chain:RunnableSequence > parser:JsonOutputParser] [3ms] Exiting Parser run with output:\n", "\u001b[0m{\n", - " \"title\": \"Energy vs. Volume\",\n", + " \"title\": \"Energy vs Volume\",\n", " \"xlabel\": \"volume [ų]\",\n", " \"ylabel\": \"energy [eV]\",\n", " \"xrange\": [\n", @@ -231,11 +241,11 @@ " 0,\n", " 0.25\n", " ],\n", - " \"description\": \"The figure appears to be a line chart that shows the relationship between energy in electron volts (eV) and volume in cubic angstroms (ų). The chart depicts a downward curve that starts at a higher energy level and decreases as volume increases, suggesting that energy decreases with increasing volume. The curve reaches a minimum and then slightly increases, indicating a potential optimal volume for minimal energy. The chart includes a series of data points connected by a smooth curve, which likely represents a fitted model or a theoretical prediction. The title of the figure in the image, 'sj: E: -0.000 eV, V: 16.781 ų, B: 100.142 GPa', indicates specific values at the minimum of the curve, with 'E' representing the minimum energy, 'V' the corresponding volume, and 'B' the bulk modulus.\"\n", + " \"description\": \"The figure is a plot of energy in electron volts (eV) as a function of volume in cubic angstroms (ų). The data points are represented by blue dots and are connected by a red curve, suggesting a fitted model or interpolation between the points. The plot shows a downward trend in energy as volume increases from 14 to approximately 16 ų, after which the energy levels off as the volume continues to increase up to 18 ų. The plot includes a legend or a title within the plot area that reads 'sj: E: -0.000 eV, V: 16.781 ų, B: 100.142 GPa', which likely indicates specific parameters or calculated values at the minimum energy point: E represents energy, V represents volume, and B represents bulk modulus.\"\n", "}\n", - "\u001b[36;1m\u001b[1;3m[chain/end]\u001b[0m \u001b[1m[chain:RunnableSequence] [8.57s] Exiting Chain run with output:\n", + "\u001b[36;1m\u001b[1;3m[chain/end]\u001b[0m \u001b[1m[chain:RunnableSequence] [7.14s] Exiting Chain run with output:\n", "\u001b[0m{\n", - " \"title\": \"Energy vs. Volume\",\n", + " \"title\": \"Energy vs Volume\",\n", " \"xlabel\": \"volume [ų]\",\n", " \"ylabel\": \"energy [eV]\",\n", " \"xrange\": [\n", @@ -246,16 +256,31 @@ " 0,\n", " 0.25\n", " ],\n", - " \"description\": \"The figure appears to be a line chart that shows the relationship between energy in electron volts (eV) and volume in cubic angstroms (ų). The chart depicts a downward curve that starts at a higher energy level and decreases as volume increases, suggesting that energy decreases with increasing volume. The curve reaches a minimum and then slightly increases, indicating a potential optimal volume for minimal energy. The chart includes a series of data points connected by a smooth curve, which likely represents a fitted model or a theoretical prediction. The title of the figure in the image, 'sj: E: -0.000 eV, V: 16.781 ų, B: 100.142 GPa', indicates specific values at the minimum of the curve, with 'E' representing the minimum energy, 'V' the corresponding volume, and 'B' the bulk modulus.\"\n", + " \"description\": \"The figure is a plot of energy in electron volts (eV) as a function of volume in cubic angstroms (ų). The data points are represented by blue dots and are connected by a red curve, suggesting a fitted model or interpolation between the points. The plot shows a downward trend in energy as volume increases from 14 to approximately 16 ų, after which the energy levels off as the volume continues to increase up to 18 ų. The plot includes a legend or a title within the plot area that reads 'sj: E: -0.000 eV, V: 16.781 ų, B: 100.142 GPa', which likely indicates specific parameters or calculated values at the minimum energy point: E represents energy, V represents volume, and B represents bulk modulus.\"\n", "}\n", - "{'title': 'Energy vs. Volume', 'xlabel': 'volume [ų]', 'ylabel': 'energy [eV]', 'xrange': [14, 18], 'yrange': [0, 0.25], 'description': \"The figure appears to be a line chart that shows the relationship between energy in electron volts (eV) and volume in cubic angstroms (ų). The chart depicts a downward curve that starts at a higher energy level and decreases as volume increases, suggesting that energy decreases with increasing volume. The curve reaches a minimum and then slightly increases, indicating a potential optimal volume for minimal energy. The chart includes a series of data points connected by a smooth curve, which likely represents a fitted model or a theoretical prediction. The title of the figure in the image, 'sj: E: -0.000 eV, V: 16.781 ų, B: 100.142 GPa', indicates specific values at the minimum of the curve, with 'E' representing the minimum energy, 'V' the corresponding volume, and 'B' the bulk modulus.\"}\n" + "{'description': 'The figure is a plot of energy in electron volts (eV) as a '\n", + " 'function of volume in cubic angstroms (ų). The data points '\n", + " 'are represented by blue dots and are connected by a red '\n", + " 'curve, suggesting a fitted model or interpolation between the '\n", + " 'points. The plot shows a downward trend in energy as volume '\n", + " 'increases from 14 to approximately 16 ų, after which the '\n", + " 'energy levels off as the volume continues to increase up to '\n", + " '18 ų. The plot includes a legend or a title within the plot '\n", + " \"area that reads 'sj: E: -0.000 eV, V: 16.781 ų, B: 100.142 \"\n", + " \"GPa', which likely indicates specific parameters or \"\n", + " 'calculated values at the minimum energy point: E represents '\n", + " 'energy, V represents volume, and B represents bulk modulus.',\n", + " 'title': 'Energy vs Volume',\n", + " 'xlabel': 'volume [ų]',\n", + " 'xrange': [14, 18],\n", + " 'ylabel': 'energy [eV]',\n", + " 'yrange': [0, 0.25]}\n" ] } ], "source": [ - "\n", - "result = get_image_informations(\"Ag-eos.png\")\n", - "print(result)" + "result = read_figure(\"Ag-eos.png\")\n", + "pprint(result)" ] } ],