0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

OpenVINO賦能BLIP實現(xiàn)視覺語言AI邊緣部署

英特爾物聯(lián)網(wǎng) ? 來源:英特爾物聯(lián)網(wǎng) ? 2023-09-01 10:26 ? 次閱讀

作者:武卓博士 英特爾 AI 布道師

人類通過視覺和語言感知世界。人工智能的一個長期目標是構建智能體,通過視覺和語言輸入來理解世界,并通過自然語言與人類交流。比如,在《幾行代碼加速 Stable Diffusion,使用 OpenVINO 輕松文生圖》中,我們介紹了利用 OpenVINO 運行 Stable Diffusion 模型,快速實現(xiàn)文生圖應用。讓人人可以成為繪畫大師,利用 AI 隨心作畫。

隨著計算機視覺和自然語言處理領域的快速發(fā)展,視覺與語言的融合越來越受到研究人員的重視。在這個背景下,BLIP(Bootstrapping Language-Image Pre-training)作為一種創(chuàng)新的預訓練模型,引起了廣泛關注。該模型在大規(guī)模的圖像文本數(shù)據(jù)集上預訓練深度神經(jīng)網(wǎng)絡模型,以提高下游視覺語言任務的性能,如圖像文本檢索、圖像字幕和視覺問答。通過聯(lián)合訓練圖像和文本數(shù)據(jù),為視覺與語言的融合提供了強大的基礎。

BLIP 的預訓練過程涉及兩個關鍵組件:圖像編碼器和文本編碼器。圖像編碼器負責將輸入的圖像轉換為低維向量表示,而文本編碼器則將輸入的文本轉換為另一個低維向量表示。為了實現(xiàn)統(tǒng)一的視覺-語言預訓練,BLIP 采用了一種跨模態(tài)約束策略,即在預訓練階段,圖像編碼器和文本編碼器被設計成相互約束的。這樣的約束機制強制模型學習將視覺信息和語言信息進行對齊,從而使得模型在后續(xù)任務中能夠更好地處理視覺與語言之間的聯(lián)合信息。

除了視覺-語言理解任務,BLIP 還在視覺-語言生成任務中表現(xiàn)出色。在這個任務中,模型需要根據(jù)輸入的圖像和文本生成相關的描述或回答問題。BLIP 通過聯(lián)合訓練和引入了圖像-文本生成任務,使得模型具備了更強大的圖像描述和問題回答能力。這使得 BLIP 在圖像描述生成和視覺問答等任務上取得了優(yōu)異的成績。

接下來,我們一起來看看如何在研揚科技(AAEON)的新品 UP Squared Pro 7000 Edge 運行利用 OpenVINO 來優(yōu)化加速 BLIP 的推理有哪些重點步驟吧。

作為研揚 UP Squared Pro 系列的第三代產(chǎn)品,Upsquared Pro 7000 系列 (https://ic-item.jd.com/10074763043245.html)[1] 透過高性能計算能力、升級的電路板設計和擴展的顯示接口,提供更大的開發(fā)潛力。作為該系列中首款采用 Intel Core/Atom/N 系列處理器(原 Alder Lake-N)的產(chǎn)品,UP Squared Pro 7000 是首款配備板載 LPDDR5 內存的產(chǎn)品,提高了 I/O 的運行速度。此外,UP Squared Pro 7000 在圖像處理和顯示功能方面都有顯著提升,支持 MIPI CSI 照相機,并搭配 Intel UHD 顯卡,可同時進行三臺 4K 顯示器。

1.4 倍以上 CPU 性能提升

UP Squared Pro 7000 采用 Intel Core/Atom/N- 系列處理器,CPU 性能是上一代的 1.4 倍。UP Squared Pro 7000 擁有多達 8 個 Gracemont 內核,支持 OpenVINO Toolkit,以及第 12 代 Intel處理器的 UHD 顯卡,擁有強大的計算能力、優(yōu)化的推理引擎和圖像處理功能,提供絕佳的智能解決方案。

同步支持 3 臺 4K 顯示器

UP Squared Pro 7000 配備 HDMI 2.0b、DP 1.2 埠和透過 USB Type-C 的 DP 1.4a,擁有出色的顯示接口。UP Squared Pro 7000 整合了 GPU 和多重輸出,可以同步支持三個 4K 顯示器,非常適合用于數(shù)字廣告牌等視覺導向型的相關應用。

雙倍的高速系統(tǒng)內存

作為 UP Squared Pro 系列中第一塊配備板載 LPDDR5 系統(tǒng)內存的板卡,UP Squared Pro 7000 搭載了 16GB 的系統(tǒng)內存,是上一代的兩倍。此外,快達 4800MHz 的內存速度讓用戶的帶寬和數(shù)據(jù)傳輸速度加倍,同時也更加省電。

全面的 I/O 升級

除了維持 UP Squared Pro 系列 4" x 4" 的緊湊外形之外,UP Squared Pro 7000 在電路板設計上更為精實。UP Squared Pro 7000 配備了兩個 2.5GbE、三個 USB 3.2 和一個 FPC 端口,可外接更多像是 MIPI CSI 相機的外圍設備。將這些特色與板載 LPDDR5 及性能強大的 CPU 相結合,非常適合用于智慧工廠機器人方面的視覺解決方案。

注意:

以下步驟中的所有代碼來自 OpenVINO Notebooks 開源倉庫中的 233-blip-visual-language-processing notebook 代碼示例,您可以復制以下鏈接到瀏覽器直達源代碼。https://github.com/openvinotoolkit/openvino_notebooks/tree/main/notebooks/233-blip-visual-language-processing

第一步:安裝相應工具包、加載模型并轉換為 OpenVINO IR 格式

本次代碼示例需要首先安裝 BLIP 相應工具包。

!pip install "transformers >= 4.26.0"

向右滑動查看完整代碼

然后下載及加載相應的 PyTorch 模型。在本問中,您將使用可從 Hugging Face 下載的 blip-vqa-base [2] 基本模型。同樣的操作也適用于 BLIP 系列中的其它模型。盡管該模型類是為執(zhí)行問答而設計的,但其組件也可以用于圖像字幕。要開始使用該模型,需要使用 from_pretrained 方法實例化 BlipForQuestionAnswering 類。BlipProcessor 是一個助手類,用于準備文本和視覺模態(tài)的輸入數(shù)據(jù)以及生成結果的后處理。

import sys
import time
from PIL import Image
from transformers import BlipProcessor, BlipForQuestionAnswering


sys.path.append("../utils")
from notebook_utils import download_file


# Get model and processor
processor = BlipProcessor.from_pretrained("Salesforce/blip-vqa-base")
model = BlipForQuestionAnswering.from_pretrained("Salesforce/blip-vqa-base")

接下來,我們看看如何將原始模型轉換為 OpenVINO IR格式的模型,并利用 OpenVINO 進行相應的優(yōu)化以及部署推理加速。

第二步:將模型轉換為 OpenVINO IR 格式

根據(jù)我們前面的介紹,BLIP 模型包含視覺模型、文本編碼和文本解碼三個模型,因此我們需要分別將這三個模型轉換為 OpenVINO IR 格式。視覺模型的轉換操作比較常規(guī),具體代碼可以參考我們的 notebook[3],這里重點介紹一下文本編碼和文本解碼模型的轉換部分。

文本編碼器轉換

視覺問答任務使用文本編碼器來構建問題的嵌入表示。它采用經(jīng)過分詞后的問題的 input_ids,并輸出從視覺模型獲得的圖像嵌入和它們的注意力掩碼。根據(jù)問題文本的不同,標記化輸入后的標記數(shù)量可能不同。因此,為使用標記的模型輸入保留動態(tài)形狀,dynamic_axes 參數(shù)負責在 torch.onx.export 中保留輸入的動態(tài)特定維度。代碼如下:

TEXT_ENCODER_OV = Path("blip_text_encoder.xml")
TEXT_ENCODER_ONNX = TEXT_ENCODER_OV.with_suffix(".onnx")


text_encoder = model.text_encoder
text_encoder.eval()


# if openvino model does not exist, convert it to onnx and then to IR
if not TEXT_ENCODER_OV.exists():
  if not TEXT_ENCODER_ONNX.exists():
    # prepare example inputs for ONNX export
    image_embeds = vision_outputs[0]
    image_attention_mask = torch.ones(image_embeds.size()[:-1], dtype=torch.long)
    input_dict = {"input_ids": inputs["input_ids"], "attention_mask": inputs["attention_mask"], "encoder_hidden_states": image_embeds, "encoder_attention_mask": image_attention_mask}
    # specify variable length axes
    dynamic_axes = {"input_ids": {1: "seq_len"}, "attention_mask": {1: "seq_len"}}
    # export PyTorch model to ONNX
    with torch.no_grad():
      torch.onnx.export(text_encoder, input_dict, TEXT_ENCODER_ONNX, input_names=list(input_dict), dynamic_axes=dynamic_axes)
  # convert ONNX model to IR using model conversion Python API, use compress_to_fp16=True for compressing model weights to FP16 precision
  ov_text_encoder = mo.convert_model(TEXT_ENCODER_ONNX, compress_to_fp16=True)
  # save model on disk for next usages
  serialize(ov_text_encoder, str(TEXT_ENCODER_OV))
  print(f"Text encoder successfuly converted and saved to {TEXT_ENCODER_OV}")
else:
  print(f"Text encoder will be loaded from {TEXT_ENCODER_OV}")

向右滑動查看完整代碼

文本解碼器轉換

文本解碼器負責使用圖像(以及問題,如果需要的話)的表示來生成模型輸出(問題的答案或標題)的分詞 token 序列。生成方法基于這樣的假設,即單詞序列的概率分布可以分解為下一個單詞條件分布的乘積。換言之,模型預測由先前生成的 token 引導循環(huán)生成下一個 token,直到達到停止生成的條件(生成達到最大長度序列或獲得的字符串結束的 token)。在預測概率之上選擇下一個 token的方式由所選擇的解碼方法來驅動。與文本編碼器類似,文本解碼器可以處理不同長度的輸入序列,并且需要保留動態(tài)輸入形狀。這部分特殊的處理可由如下代碼完成:

text_decoder = model.text_decoder
text_decoder.eval()


TEXT_DECODER_OV = Path("blip_text_decoder.xml")
TEXT_DECODER_ONNX = TEXT_DECODER_OV.with_suffix(".onnx")


# prepare example inputs for ONNX export
input_ids = torch.tensor([[30522]]) # begin of sequence token id
attention_mask = torch.tensor([[1]]) # attention mask for input_ids
encoder_hidden_states = torch.rand((1, 10, 768)) # encoder last hidden state from text_encoder
encoder_attention_mask = torch.ones((1, 10), dtype=torch.long) # attention mask for encoder hidden states


input_dict = {"input_ids": input_ids, "attention_mask": attention_mask, "encoder_hidden_states": encoder_hidden_states, "encoder_attention_mask": encoder_attention_mask}
# specify variable length axes
dynamic_axes = {"input_ids": {1: "seq_len"}, "attention_mask": {1: "seq_len"}, "encoder_hidden_states": {1: "enc_seq_len"}, "encoder_attention_mask": {1: "enc_seq_len"}}


# specify output names, logits is main output of model
output_names = ["logits"]


# past key values outputs are output for caching model hidden state
past_key_values_outs = []
text_decoder_outs = text_decoder(**input_dict)
for idx, _ in enumerate(text_decoder_outs["past_key_values"]):
  past_key_values_outs.extend([f"out_past_key_value.{idx}.key", f"out_past_key_value.{idx}.value"])

向右滑動查看完整代碼

接下來,對于文本解碼器的轉換,還有來自前一步驟的隱藏狀態(tài)的額外輸入。與輸出類似,在模型導出為 ONNX 格式后,它們將被展平。需要使用新的輸入層更新 dynamic_axies 和 input_names。因此,其后面的轉換過程與前面的文本編碼器的轉換過程類似,在本文中不再贅述。

第三步:運行 OpenVINO 推理

如前所述,在這里我們將主要展示 BLIP 進行視覺問答以及圖像字幕的流水線如何搭建、以及如何運行 OpenVINO 來進行推理的情況。

圖像字幕

視覺模型接受 BlipProcessor 預處理的圖像作為輸入,并生成圖像嵌入,這些圖像嵌入直接傳遞給文本解碼器以生成字幕標記。生成完成后,分詞 tokenizer 的輸出序列被提供給 BlipProcessor,用于使用 tokenizer 解碼為文本。

定義 OVBLIPModel 類:

class OVBlipModel:
  """ 
  Model class for inference BLIP model with OpenVINO
  """
  def __init__(self, config, decoder_start_token_id:int, vision_model, text_encoder, text_decoder):
    """
    Initialization class parameters
    """
    self.vision_model = vision_model
    self.vision_model_out = vision_model.output(0)
    self.text_encoder = text_encoder
    self.text_encoder_out = text_encoder.output(0)
    self.text_decoder = text_decoder
    self.config = config
    self.decoder_start_token_id = decoder_start_token_id
    self.decoder_input_ids = c

向右滑動查看完整代碼

定義圖像字幕函數(shù)如下,

  def generate_caption(self, pixel_values:torch.Tensor, input_ids:torch.Tensor = None, attention_mask:torch.Tensor = None, **generate_kwargs):
    """
    Image Captioning prediction
    Parameters:
     pixel_values (torch.Tensor): preprocessed image pixel values
     input_ids (torch.Tensor, *optional*, None): pregenerated caption token ids after tokenization, if provided caption generation continue provided text
     attention_mask (torch.Tensor): attention mask for caption tokens, used only if input_ids provided
    Retruns:
     generation output (torch.Tensor): tensor which represents sequence of generated caption token ids
    """
    batch_size = pixel_values.shape[0]


    image_embeds = self.vision_model(pixel_values.detach().numpy())[self.vision_model_out]


    image_attention_mask = torch.ones(image_embeds.shape[:-1], dtype=torch.long)


    if isinstance(input_ids, list):
      input_ids = torch.LongTensor(input_ids)
    elif input_ids is None:
      input_ids = (
        torch.LongTensor([[self.config.text_config.bos_token_id, self.config.text_config.eos_token_id]])
        .repeat(batch_size, 1)
      )
    input_ids[:, 0] = self.config.text_config.bos_token_id
    attention_mask = attention_mask[:, :-1] if attention_mask is not None else None


    outputs = self.text_decoder.generate(
      input_ids=input_ids[:, :-1],
      eos_token_id=self.config.text_config.sep_token_id,
      pad_token_id=self.config.text_config.pad_token_id,
      attention_mask=attention_mask,
      encoder_hidden_states=torch.from_numpy(image_embeds),
      encoder_attention_mask=image_attention_mask,
      **generate_kwargs,
    )


    return outputs

向右滑動查看完整代碼

視覺問答

視覺回答的流水線看起來很相似,但有額外的問題處理。在這種情況下,由 BlipProcessor 標記的圖像嵌入和問題被提供給文本編碼器,然后多模態(tài)問題嵌入被傳遞給文本解碼器以執(zhí)行答案的生成。

在 OVBLIPModel 類內部同理可定義視覺問答函數(shù)如下:

   def generate_answer(self, pixel_values:torch.Tensor, input_ids:torch.Tensor, attention_mask:torch.Tensor, **generate_kwargs):
    """
    Visual Question Answering prediction
    Parameters:
     pixel_values (torch.Tensor): preprocessed image pixel values
     input_ids (torch.Tensor): question token ids after tokenization
     attention_mask (torch.Tensor): attention mask for question tokens
    Retruns:
     generation output (torch.Tensor): tensor which represents sequence of generated answer token ids
    """
    image_embed = self.vision_model(pixel_values.detach().numpy())[self.vision_model_out]
    image_attention_mask = np.ones(image_embed.shape[:-1], dtype=int)
    if isinstance(input_ids, list):
      input_ids = torch.LongTensor(input_ids)
    question_embeds = self.text_encoder([input_ids.detach().numpy(), attention_mask.detach().numpy(), image_embed, image_attention_mask])[self.text_encoder_out]
    question_attention_mask = np.ones(question_embeds.shape[:-1], dtype=int)


    bos_ids = np.full((question_embeds.shape[0], 1), fill_value=self.decoder_start_token_id)


    outputs = self.text_decoder.generate(
      input_ids=torch.from_numpy(bos_ids),
      eos_token_id=self.config.text_config.sep_token_id,
      pad_token_id=self.config.text_config.pad_token_id,
      encoder_hidden_states=torch.from_numpy(question_embeds),
      encoder_attention_mask=torch.from_numpy(question_attention_mask),
      **generate_kwargs,
    )
    return outputs

向右滑動查看完整代碼

初始化 OpenVINO 運行時并運行推理

初始化 OpenVINO Core 對象,選擇推理設備,并加載、編譯模型

# create OpenVINO Core object instance
core = Core()


import ipywidgets as widgets


device = widgets.Dropdown(
  options=core.available_devices + ["AUTO"],
  value='AUTO',
  description='Device:',
  disabled=False,
)


device


# load models on device
ov_vision_model = core.compile_model(VISION_MODEL_OV, device.value)
ov_text_encoder = core.compile_model(TEXT_ENCODER_OV, device.value)
ov_text_decoder = core.compile_model(TEXT_DECODER_OV, device.value)
ov_text_decoder_with_past = core.compile_model(TEXT_DECODER_WITH_PAST_OV, device.value)

向右滑動查看完整代碼

運行圖像字幕推理

out = ov_model.generate_caption(inputs["pixel_values"], max_length=20)
caption = processor.decode(out[0], skip_special_tokens=True)
fig = visualize_results(raw_image, caption)

運行視覺問答推理

start = time.perf_counter()
out = ov_model.generate_answer(**inputs, max_length=20)
end = time.perf_counter() - start
answer = processor.decode(out[0], skip_special_tokens=True)
fig = visualize_results(raw_image, answer, question)

向右滑動查看完整代碼

小結

整個的步驟就是這樣!現(xiàn)在就開始跟著我們提供的代碼和步驟,動手試試用 Open VINO 和 BLIP 吧。

關于英特爾 OpenVINO 開源工具套件的詳細資料,包括其中我們提供的三百多個經(jīng)驗證并優(yōu)化的預訓練模型的詳細資料。

除此之外,為了方便大家了解并快速掌握 OpenVINO 的使用,我們還提供了一系列開源的 Jupyter notebook demo。運行這些 notebook,就能快速了解在不同場景下如何利用 OpenVINO 實現(xiàn)一系列、包括計算機視覺、語音及自然語言處理任務。OpenVINO notebooks 的資源可以在 GitHub 這里下載安裝。

研揚科技簡介

研揚科技成立于 1992 年,是工業(yè)物聯(lián)網(wǎng)和人工智能邊緣解決方案的領先設計商和制造商之一。以不斷創(chuàng)新為核心價值觀,研揚科技為市場帶來可靠、高質量的計算平臺,包括工業(yè)主板和系統(tǒng)、強固式平板電腦嵌入式人工智能系統(tǒng)、uCPE 網(wǎng)絡設備以及 LoRaWAN/WWAN 解決方案。研揚科技還帶來行業(yè)領先的經(jīng)驗和知識,以在全球范圍內提供 OEM/ODM 服務。此外,研揚科技與諸多城市和政府緊密合作,開發(fā)和部署智能城市生態(tài)系統(tǒng),提供個性化平臺和端到端解決方案。研揚科技與頂級芯片設計商緊密合作,提供穩(wěn)定、可靠的平臺,并被認可為 Intel物聯(lián)網(wǎng)解決方案聯(lián)盟的鈦金級成員。

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 處理器
    +關注

    關注

    68

    文章

    19049

    瀏覽量

    228544
  • 英特爾
    +關注

    關注

    60

    文章

    9826

    瀏覽量

    171149
  • cpu
    cpu
    +關注

    關注

    68

    文章

    10781

    瀏覽量

    210531
  • AI
    AI
    +關注

    關注

    87

    文章

    29446

    瀏覽量

    267770

原文標題:OpenVINO? 賦能 BLIP 實現(xiàn)視覺語言 AI 邊緣部署|開發(fā)者實戰(zhàn)

文章出處:【微信號:英特爾物聯(lián)網(wǎng),微信公眾號:英特爾物聯(lián)網(wǎng)】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    OpenVINO Java API詳解與演示

    英特爾 發(fā)行版 OpenVINO 工具套件基于 oneAPI 而開發(fā),可以加快高性能計算機視覺和深度學習視覺應用開發(fā)速度工具套件,適用于從邊緣到云的各種英特爾平臺上,幫助用戶更快地將更
    的頭像 發(fā)表于 11-09 17:03 ?932次閱讀
    <b class='flag-5'>OpenVINO</b> Java API詳解與演示

    如何使用OpenVINO C++ API部署FastSAM模型

    象的位置和邊界。本文將介紹如何使用 OpenVINO C++ API 部署 FastSAM 模型,以實現(xiàn)快速高效的語義分割。在前文中我們發(fā)表了《基于 OpenVINO Python A
    的頭像 發(fā)表于 11-17 09:53 ?798次閱讀
    如何使用<b class='flag-5'>OpenVINO</b> C++ API<b class='flag-5'>部署</b>FastSAM模型

    如何解決模型部署時出現(xiàn)算子不匹配問題

    英特爾發(fā)行版 OpenVINO 工具套件基于 oneAPI 而開發(fā),可以加快高性能計算機視覺和深度學習視覺應用開發(fā)速度工具套件,適用于從邊緣到云的各種英特爾平臺上,幫助用戶更快地將更準
    的頭像 發(fā)表于 12-08 15:30 ?932次閱讀
    如何解決模型<b class='flag-5'>部署</b>時出現(xiàn)算子不匹配問題

    低成本低功耗的嵌入式計算機視覺平臺ADZS-BF707-BLIP2

    ADZS-BF707-BLIP2,Blackfin低功耗成像平臺(BLIP)評估系統(tǒng)是一款低成本,低功耗的嵌入式計算機視覺平臺,適用于大量實時傳感應用。 BLIP利用行業(yè)領先的低功耗B
    發(fā)表于 03-08 09:24

    介紹英特爾?分布式OpenVINO?工具包

    介紹英特爾?分布式OpenVINO?工具包可快速部署模擬人類視覺的應用程序和解決方案。 該工具包基于卷積神經(jīng)網(wǎng)絡(CNN),可擴展英特爾?硬件的計算機視覺(CV)工作負載,從而最大限度
    發(fā)表于 07-26 06:45

    嵌入式邊緣AI應用開發(fā)指南

    保駕護航。下面讓我們來了解如何不借助手動工具或手動編程來選擇模型、隨時隨地訓練模型并將其無縫部署到TI處理器上,從而實現(xiàn)硬件加速推理。圖1: 邊緣AI應用的開發(fā)流程第1步:選擇模型
    發(fā)表于 11-03 06:53

    英碼科技精彩亮相火爆的IOTE 2023,多面AIoT產(chǎn)業(yè)發(fā)展!

    算力硬件為基礎,搭載自研的0代碼移植工具鏈,在不觸碰客戶模型文件的前提下,實現(xiàn)算法從GPU到XPU的一鍵移植,最快1天實現(xiàn)算法適配,快、易、省長尾
    發(fā)表于 09-25 10:03

    華為許映童:AI,邊緣將走向智能邊緣

    12月11日消息(李明)在“2020邊緣計算產(chǎn)業(yè)峰會”上,華為昇騰計算業(yè)務總裁許映童表示:AI邊緣將走向智能
    的頭像 發(fā)表于 12-11 13:46 ?2271次閱讀

    OpenVINBLIP實現(xiàn)視覺語言AI邊緣部署

    ,使用 OpenVINO 輕松文生圖》中,我們介紹了利用OpenVINO 運行Stable Diffusion模型,快速實現(xiàn)文生圖應用。讓人人可以成為繪畫大師,利用AI隨心作畫。
    的頭像 發(fā)表于 09-04 10:54 ?1w次閱讀
    OpenVIN<b class='flag-5'>賦</b><b class='flag-5'>能</b><b class='flag-5'>BLIP</b><b class='flag-5'>實現(xiàn)</b><b class='flag-5'>視覺</b><b class='flag-5'>語言</b><b class='flag-5'>AI</b><b class='flag-5'>邊緣</b><b class='flag-5'>部署</b>

    OpenVINO? BLIP 實現(xiàn)視覺語言 AI 邊緣部署

    圖》中,我們介紹了利用OpenVINO運行StableDiffusion模型,快速實現(xiàn)文生圖應用。讓人人可以成為繪畫大師,利用AI隨心作畫。隨著計算機視覺和自然語
    的頭像 發(fā)表于 09-04 16:21 ?628次閱讀
    <b class='flag-5'>OpenVINO</b>? <b class='flag-5'>賦</b><b class='flag-5'>能</b> <b class='flag-5'>BLIP</b> <b class='flag-5'>實現(xiàn)</b><b class='flag-5'>視覺</b><b class='flag-5'>語言</b> <b class='flag-5'>AI</b> <b class='flag-5'>邊緣</b><b class='flag-5'>部署</b>

    OpenVINO? 千元級『哪吒』AI開發(fā)套件大語言模型 | 開發(fā)者實戰(zhàn)

    ,大多數(shù)高性能模型通常需要昂貴的計算資源,使得它們的應用受限于有限的環(huán)境。本文將探討在OpenVINO下,如何在不足千元的AI開發(fā)板上部署
    的頭像 發(fā)表于 01-06 08:05 ?1393次閱讀
    <b class='flag-5'>OpenVINO</b>? <b class='flag-5'>賦</b><b class='flag-5'>能</b>千元級『哪吒』<b class='flag-5'>AI</b>開發(fā)套件大<b class='flag-5'>語言</b>模型 | 開發(fā)者實戰(zhàn)

    簡單三步使用OpenVINO?搞定ChatGLM3的本地部署

    英特爾 OpenVINO? 工具套件是一款開源 AI 推理優(yōu)化部署的工具套件,可幫助開發(fā)人員和企業(yè)加速生成式人工智能 (AIGC)、大語言模型、計算機
    的頭像 發(fā)表于 04-03 18:18 ?1940次閱讀
    簡單三步使用<b class='flag-5'>OpenVINO</b>?搞定ChatGLM3的本地<b class='flag-5'>部署</b>

    簡單兩步使用OpenVINO?搞定Qwen2的量化與部署任務

    英特爾 OpenVINO? 工具套件是一款開源 AI 推理優(yōu)化部署的工具套件,可幫助開發(fā)人員和企業(yè)加速生成式人工智能 (AIGC)、大語言模型、計算機
    的頭像 發(fā)表于 04-26 09:39 ?1476次閱讀
    簡單兩步使用<b class='flag-5'>OpenVINO</b>?搞定Qwen2的量化與<b class='flag-5'>部署</b>任務

    三行代碼完成生成式AI部署

    OpenVINO2024.2版本跟之前版本最大的不同是OpenVINO2024.2分為兩個安裝包分別是基礎包與生成式AI支持包,新發(fā)布的GenAI開發(fā)包支持C++與Python語言接口
    的頭像 發(fā)表于 08-30 16:49 ?333次閱讀
    三行代碼完成生成式<b class='flag-5'>AI</b><b class='flag-5'>部署</b>

    研揚攜手英特爾,聯(lián)合舉辦創(chuàng)AI百城行(武漢站):用OpenVINO?AI邊緣計算平臺

    邊緣計算作為實現(xiàn)智能化、高效化數(shù)據(jù)處理的關鍵技術,日益受到業(yè)界的廣泛關注。為了進一步推動AI邊緣計算技術的發(fā)展與應用,3月27日研揚科技與英特爾在武漢共同舉辦了以“用
    的頭像 發(fā)表于 04-04 08:05 ?167次閱讀
    研揚攜手英特爾,聯(lián)合舉辦創(chuàng)<b class='flag-5'>AI</b>百城行(武漢站):用<b class='flag-5'>OpenVINO</b>?<b class='flag-5'>賦</b><b class='flag-5'>能</b><b class='flag-5'>AI</b>于<b class='flag-5'>邊緣</b>計算平臺