我們將在全年的每個星期一發布新模型。本周,我們發布了NVIDIA 優化的 DePlot 模型,您可以直接在瀏覽器中體驗。
NVIDIA 基礎模型和端點提供對社區和 NVIDIA 構建的一系列精心策劃的生成式 AI 模型的訪問權限,以便在企業應用程序中體驗、自定義和部署。
如果您還沒有嘗試過領先的模型,如 NeMo-8B-QA, Mixtral 8X7B, Llama 2 (Jaguar 2), 和 Stable Diffusion, 現在可以在 NVIDIA AI Playground 中體驗。
去圖
視覺語言推理的一次飛躍:通過與大型語言模型 (LLM) 的結合,DePlot 能夠理解和解釋圖表與圖形。這種方法與之前經過端到端訓練的多模態 LLM 不同,它將問題分解為以下步驟:
- 使用預訓練的圖像到文本模型進行繪圖到文本的轉換
- 使用 LLM 進行文本推理
具體來說,在第一步中,DePlot 是指圖像到文本的 Transformer 模型,用于從圖形到文本格式的模態轉換。在第二步中,DePlot 生成的線性化表可作為提示的一部分直接提取到 LLM 中,以促進推理。
以前的先進 (SOTA) 模型需要至少數萬個人工編寫的示例來完成此類繪圖或圖表理解,同時在處理復雜查詢時,其推理能力仍然受限。
采用這種即插即用的方法,我們的 DePlot? LLM 管線在ChartQA基準測試中取得了顯著成果,僅需一次提示即可完成任務,相較于之前的SOTA方法,表現更為出色!

圖 1 展示了 DePlot 如何將圖形轉換為結構化表格,可用作 LLM 回答基于推理的問題的上下文。現在就體驗?DePlot 。
在瀏覽器中使用模型
現在,您可以通過瀏覽器上的簡單用戶界面直接體驗“DePlot”,NGC 目錄上的 DePlot playground.以下視頻展示了在完全加速的堆棧上運行的模型所生成的結果。
該視頻展示了 NVIDIA AI Foundation 模型接口,該接口用于使用在完全加速的堆棧上運行的 DePlot 從圖形中提取信息。
將模型與 API 結合使用
如果您想使用 API 測試模型,我們已經為您提供了幫助。在您登錄NGC 目錄后,您就可以訪問 NVIDIA Cloud Credits。通過將應用程序連接到 API 端點,您可以真正大規模地體驗模型。
以下 Python 示例使用base64
并請求模塊對繪圖圖像進行編碼,并向 API 端點發出請求。在繼續之前,請確保您擁有能夠執行 Python 代碼的環境,例如 Jupyter notebook。
獲取 NGC 目錄 API 密鑰
在 API 選項卡中,選擇生成密鑰。如果您尚未注冊,系統會提示您注冊或登錄。
在代碼中設置 API 密鑰:
# Will be used to issue requests to the endpoint API_KEY = “nvapi-xxxx“ |
以 base64 格式對圖表或圖形進行編碼
要在請求中提供圖像輸入,您必須將其編碼為base64
格式。
# Fetch an example chart from ChartQA dataset !wget -cO - https: //raw.githubusercontent.com/vis-nlp/ChartQA/main/ChartQA%20Dataset/val/png/5090.png > chartQA-example.png # Encode the image into base64 format import base64 with open(os.path.join(os.getcwd(), "chartQA-example.png" ), "rb" ) as image_file: encoded_string = base64.b64encode(image_file.read()) |
您可以選擇可視化圖表:
from IPython import display display.Image(base64.b64decode(encoded_string)) |

發送推理請求
import requests invoke_url = "https://api.nvcf.nvidia.com/v2/nvcf/pexec/functions/3bc390c7-eeec-40f7-a64d-0c6a719985f7" fetch_url_format = "https://api.nvcf.nvidia.com/v2/nvcf/pexec/status/" # Ensure that you have configured API_KEY headers = { "Authorization" : "Bearer {}" .format(API_KEY), "Accept" : "application/json" , } # To re-use connections session = requests.Session() # The payload consists of a base64 encoded image accompanied by header text. payload = { "messages" : [ { "content" : "Generate underlying data table of the figure below:<img src=\"data:image/png;base64,{}\" />" .format(encoded_string.decode( 'UTF-8' )), "role" : "user" } ], "temperature" : 0.1, "top_p" : 0.7, "max_tokens" : 1024, "stream" : False } response = session.post(invoke_url, headers=headers, json=payload) while response.status_code == 202: request_id = response.headers.get( "NVCF-REQID" ) fetch_url = fetch_url_format + request_id response = session.get(fetch_url, headers=headers) response.raise_for_status() response_body = response.json() print(response_body) |
輸出如下所示:
{ 'id' : '4423f30d-2d88-495d-83cc-710da97889e3' , 'choices' : [{ 'index' : 0, 'message' : { 'role' : 'assistant' , 'content' : "Entity | Individuals responsibility | Government's responsibility <0x0A> MEDIAN | 39.0 | 55.0 <0x0A> Germany | nan | 35.0 <0x0A> UK | 45.0 | 49.0 <0x0A> Sweden | 37.0 | 53.0 <0x0A> Denmark | 42.0 | 54.0 <0x0A> France | 38.0 | 55.0 <0x0A> Netherla nns | 40.0 | 58.0 <0x0A> Spain | 29.0 | 63.0 <0x0A> Italy | 22.0 | 74.0" }, 'finish_reason ': ' stop '}], ' usage ': {' completion_tokens ': 149, ' prompt_tokens ': 0, ' total_tokens': 149}} |
響應體包括 DePlot 的輸出以及其他元數據。輸出以 Markdown 格式的文本序列(帶分隔符)從左到右自動生成-
, |
以及<0x0A>
(換行)。
可視化輸出表
response_table = response_body[ 'choices' ][0][ 'message' ][ 'content' ] # Replace the <0x0A> with \n for better readability print(response_table.replace( "<0x0A>" , "\n" )) |
輸出如下所示:
Entity | Individuals responsibility | Government's responsibility MEDIAN | 39.0 | 55.0 Germany | nan | 35.0 UK | 45.0 | 49.0 Sweden | 37.0 | 53.0 Denmark | 42.0 | 54.0 France | 38.0 | 55.0 Netherla nns | 40.0 | 58.0 Spain | 29.0 | 63.0 Italy | 22.0 | 74.0 |
在這種情況下,響應基本上是準確的。此輸出可作為 LLM 輸入上下文的一部分,用于問答 (QA) 等下游任務。
適用于模型部署的企業級 AI 運行時
當 AI 模型準備好為業務運營部署時,安全性、可靠性和企業支持至關重要。
NVIDIA AI Enterprise 是一個端到端的 AI 運行時軟件平臺,旨在加速數據科學流程,并簡化生產級生成式 AI 應用的開發和部署。
NVIDIA AI Enterprise 提供安全性、支持、穩定性和可管理性,以提高 AI 團隊的工作效率,降低 AI 基礎架構的總成本,并確保從 POC 到生產的平穩過渡。
開始使用
嘗試通過 UI 或 API 使用 DePlot 模型. 如果此模型適合您的應用,請使用 NVIDIA TensorRT-LLM.
如果您正在構建企業應用程序,請注冊 NVIDIA AI Enterprise 試用版,以獲得將您的應用投入生產所需的支持。
?