VoiVision AI
tech· VoiVision Engineering Team

การถอดเสียงประชุมบน Ascend 310P: เมทริกซ์เวอร์ชัน การแปลงโมเดล และบทเรียนภาคสนามเจ็ดข้อ

การ์ดอนุมานขอบสามารถจัดการกับการประชุมการถอดเสียงเป็นข้อความได้หรือไม่?บทความนี้จัดทําเอกสารการปรับใช้เครื่องยนต์ ASR ของจีนในการจัดตําแหน่งสภาพแวดล้อม Ascend 310P-CANN พารามิเตอร์ ATC ที่มีความสําคัญเมื่อแปลง ONNX เป็น OM อุปกรณ์สี่ตัวที่คอนเทนเนอร์ต้องติดตั้งวิธีการตั้งค่ามิติแบบไดนามิกและบทเรียนเจ็ดบทเรียนที่คุณเรียนรู้ในไซต์เท่านั้นอันตรายที่สุดคือความล้มเหลวของผู้ประกอบการเงียบที่ผลิตเอาต์พุตเป็นศูนย์ทั้งหมดโดยไม่มีข้อผิดพลาดใดๆ


Ascend 310P ขอบการ์ดอนุมานคําพูดการถอดเสียงเป็นข้อความการปรับใช้

บทความนี้จัดทําเอกสารการปรับใช้เครื่องยนต์การถอดเสียงเป็นข้อความพูดภาษาจีนบน การ์ดอนุมาน Ascend 310P 310P เป็นการ์ดอนุมานขอบที่มีตําแหน่งที่แตกต่างจาก 910B และสถานการณ์ของมันใกล้เคียงกับการประมวลผลท้องถิ่นในห้อง

ฐานข้อมูล: ตัวเลขที่ทําเครื่องหมายว่า "ข้อกําหนดอย่างเป็นทางการ" มาจากตัวชี้วัดผลิตภัณฑ์ที่เผยแพร่ตารางประสิทธิภาพให้ ค่าอ้างอิง สําหรับสภาพแวดล้อมทั่วไปตัวเลขที่เกิดขึ้นจริงแตกต่างกันไปตามเงื่อนไขเสียงขนาดโมเดลและกลยุทธ์การทํางานร่วมกัน - ให้เลื่อนการวัดของคุณเองเสมอ

อะไรที่ 310P ดีและสิ่งที่ไม่ดี

ไม่มีการขาดแคลนของบทความเกี่ยวกับเรา Ascend 310P แต่ส่วนใหญ่หยุดที่ "CANN ถูกติดตั้งและการสาธิตทํางาน"กับดักจริงคือ การทํางานครั้งเดียวและการให้บริการที่เชื่อถือได้เป็นสองสิ่งที่แตกต่างกันอย่างสิ้นเชิง

ข้อสรุปด้านหน้า:

มิติพฤติกรรม 310Pบันทึกย่อ
การวางตําแหน่งการ์ดอนุมานขอบไม่ใช่การ์ดการฝึกอบรมอย่าคาดหวังที่จะปรับแต่งมัน
แยกกับ 910Bขอบโหนด910B จัดการอนุมานกลาง 310P จัดการประมวลผลท้องถิ่น
การทํางานร่วมกันของ Pure การถอดเสียงเป็นข้อความต่อบัตรหลายสิบลําธารASR ฐานแบบเดี่ยว (ค่าอ้างอิง)
การทํางานร่วมกันแบบเต็มท่อลดลงอย่างมีนัยสําคัญเมื่อเพิ่มการแยกผู้พูดและโครงสร้าง
ความแม่นยําของการถอดเสียงเป็นข้อความจีน≥98%สถานการณ์การประชุมภาษาจีนกลางมาตรฐาน (ข้อกําหนดอย่างเป็นทางการ)
ความคุ้มครองภาษาถิ่น22 ภาษาถิ่นการตรวจจับอัตโนมัติ (ข้อกําหนดอย่างเป็นทางการ)

กับดักการเลือกหนึ่งที่คุ้มค่ากับการตั้งธง: ผู้ขายหลายรายอ้างถึงการทํางานพร้อมกันโดยไม่ระบุพื้นฐาน"XX สตรีมต่อการ์ด" อาจหมายถึง ASR บริสุทธิ์หรืออาจหมายถึงท่อเต็มรูปแบบทั้งสองอาจแตกต่างกันหลายครั้งถามเสมอว่าหมายเลขครอบคลุมชั้นใด

สถาปัตยกรรมทั่วไปของเราคือ 910B ที่ศูนย์, 310P ที่ขอบ: เสียงจะถูกถอดความในห้องประชุมและมีเพียงข้อความที่มีโครงสร้างเท่านั้นที่ส่งกลับไปที่ศูนย์ทําให้แบนด์วิดท์อยู่ภายใต้การควบคุมและเป็นไปตามข้อกําหนด "ข้อมูลไม่ออกจากห้องประชุม"

การเตรียมสภาพแวดล้อม: เมทริกซ์รุ่นเป็นอุปสรรคที่แท้จริง

จุดเจ็บปวดใน Ascend ระบบนิเวศไม่เคยคํานวณ - มันเป็น การจัดตําแหน่งรุ่นไดร์เวอร์, เฟิร์มแวร์, CANN, รันไทม์คอนเทนเนอร์, กรอบอนุมาน, รูปแบบ: หากหนึ่งในหกไม่ตรงกันมันจะสร้างความล้มเหลวที่ยุ่งเหยิง และข้อความผิดพลาดบ่อยครั้งไม่ได้บอกว่าสิ่งที่ผิดพลาด

การรวมกันที่เราได้ตรวจสอบและพบว่ามีเสถียรภาพ:

ส่วนประกอบเวอร์ชันบันทึกย่อ
ไดร์เวอร์ / เฟิร์มแวร์แน่นผูกพันกับ CANNตรวจสอบตารางความเข้ากันได้อย่างเป็นทางการก่อนอัพเกรด
CANNซีรี่ส์ 8.xไลบรารีผู้ประกอบการและเครื่องมือแปลง ATC อยู่ที่นี่
รันไทม์คอนเทนเนอร์Ascend Docker รันไทม์ต้องใช้; Docker ทั่วไปไม่สามารถติดตั้ง NPU ได้
กรอบการอนุมานONNX รันไทม์ + ACLทํางานรุ่น OM
ระบบปฏิบัติการopenEuler / Kylin V10 / UnionTech UOSทั่วไปในสภาพแวดล้อม Xinchuang

ขั้นตอนแรกคือการยืนยันว่า NPU สามารถมองเห็นได้:

# Check NPU devices and status
npu-smi info

# You should see the device list with health status OK
# If no card appears here, everything downstream is wasted — fix the driver first

บทเรียนภาคสนาม: ในสภาพแวดล้อม Kylin V10 บางแห่ง npu-smi info รายงานข้อยกเว้นของเดมอน dmp หลังจากติดตั้งไดรเวอร์สาเหตุกลายเป็นความขัดแย้งระหว่าง dkms ที่รวมไว้ในระบบและสคริปต์การติดตั้งไดรเวอร์การแก้ไขคือการถอนการติดตั้ง dkms ระบบและติดตั้งใหม่โดยใช้รุ่นที่รวมกับแพคเกจไดรเวอร์

ปัญหาเฉพาะการกระจายเช่นนี้ มักจะไม่พบในเอกสารอย่างเป็นทางการ และพวกเขาเป็นตัวบล็อกที่พบมากที่สุดในไซต์

การแปลงรุ่น: ONNX ไปยัง OM

รุ่น ASR มักจะได้รับการฝึกอบรมใน PyTorch ส่งออกเป็น ONNX จากนั้นแปลงเป็นรูปแบบ Ascend OM ด้วย ATC

สามสิ่งที่ต้องระวังเมื่อส่งออก ONNX

torch.onnx.export(
    model, dummy_input,
    "asr.onnx",
    opset_version=14,          # Do not use the newest; lower opset versions are more compatible
    do_constant_folding=True,
    input_names=["audio", "audio_len"],
    output_names=["logits"],
    dynamic_axes={              # Critical: audio length is inherently dynamic
        "audio": {0: "batch", 1: "time"},
        "logits": {0: "batch", 1: "time"},
    },
)
  1. รุ่น opset ที่สูงกว่าไม่ดี opsets ใหม่กว่ามีแนวโน้มที่จะตีผู้ประกอบการที่ไม่ได้รับการสนับสนุน; 14 เป็นตัวเลือกที่เข้ากันได้ดี
  2. ต้องประกาศแกนแบบไดนามิก มิฉะนั้นคุณสามารถเรียกใช้เสียงความยาวคงที่เท่านั้นซึ่งไม่สามารถใช้งานได้ในทางปฏิบัติ
  3. เปิดใช้งานการพับคงที่ do_constant_folding=True ช่วยลดขนาดกราฟและปรับปรุงความสําเร็จในการแปลง

พารามิเตอร์ ATC ทีละตัว

atc --model=asr.onnx \
    --framework=5 \
    --output=asr_om \
    --input_format=ND \
    --input_shape="audio:-1,-1;audio_len:-1" \
    --dynamic_dims="1,16000;1,32000;1,48000" \
    --soc_version=Ascend310P \
    --precision_mode=allow_fp16 \
    --log=error

สามพารามิเตอร์ที่มีแนวโน้มที่จะก่อให้เกิดปัญหา:

  • --soc_version: ต้องตรงกับฮาร์ดแวร์ที่เกิดขึ้นจริง 310P จะต้องเขียนเป็น Ascend310P; Ascend310 หรือ Ascend910B ทั้งสองจะล้มเหลวในขั้นตอนการโหลดโดยมีข้อผิดพลาดที่คลุมเครือมาก
  • --dynamic_dims: ระดับแบบไดนามิกสําหรับเสียงระดับ โดยระยะเวลาในวินาทีระดับที่มากเกินไปทําให้เวลาในการคอมไพล์ระเบิดน้อยเกินไปทําให้เกิดการคอมไพล์ใหม่บ่อยครั้งและความหน่วงของความกระวนกระวายใจชุดข้างต้น (1s / 2s / 3s) คือจุดสมดุลที่เราวัด
  • --precision_mode: allow_fp16 มีผลกระทบต่อความแม่นยําของ ASR และเพิ่มปริมาณการผลิตที่ชัดเจน

คุณควรปริมาณหรือไม่?

ความแม่นยําอัตราการผลิตความถูกต้อง
FP16พื้นฐานพื้นฐาน
INT8กําไรที่ชัดเจนการสูญเสียที่มองเห็นได้

ข้อสรุป: สําหรับสถานการณ์ที่มีความละเอียดอ่อนมากต่อความถูกต้อง - ทางการแพทย์กฎหมาย - อยู่ที่ FP16สําหรับการประชุมภายในและบันทึกการฝึกอบรมที่ความอดทนสูงกว่า INT8 คือการค้าที่ดีกว่า

อย่าไล่ล่าตัวเลขมาตรฐานด้วย INT8 อย่างสุ่มสี่สุ่มห้าในสถานการณ์การประชุมการสูญเสียความถูกต้องจะปรากฏขึ้นเป็น "ทุกชื่อผิดทุกคําผิด" และค่าใช้จ่ายในการทํางานใหม่เกินกว่าการคํานวณที่คุณบันทึกไว้

การปรับใช้: containerisation เป็นทางเลือกที่เหมาะสมเพียงอย่างเดียว

การติดตั้งสภาพแวดล้อมบนโลหะเปลือยนั้นไม่สามารถบํารุงรักษาได้ในสภาพแวดล้อม Xinchuangเราส่งมอบเป็นภาชนะ:

docker run -it --name asr_server \
  --device /dev/davinci0 \
  --device /dev/davinci_manager \
  --device /dev/devmm_svm \
  --device /dev/hisi_hdc \
  -v /usr/local/Ascend/driver:/usr/local/Ascend/driver \
  -v /data/models:/models \
  -p 8000:8000 \
  asr-server:310p \
  ./asr_server --model /models/asr_om --port 8000

การขาดธง --device ใดๆเหล่านั้นจะทําให้เกิดความล้มเหลวในการเริ่มต้น ACL และข้อผิดพลาดไม่ได้บอกคุณว่าอุปกรณ์ถูกละเว้นนี่คือตัวบล็อกที่ใหญ่ที่สุดสําหรับผู้มาใหม่

บทเรียนอีกหนึ่ง: อย่าคิดค้นโปรโตคอลส่วนตัว ใช้มาตรฐาน RESTful (ไฟล์การถอดเสียงเป็นข้อความ) บวก WebSocket (สตรีมมิ่งแบบเรียลไทม์) หรือบูรณาการกับ OA ของลูกค้าและระบบการประชุมจะกลายเป็นความเจ็บปวดมาก

ลูกค้าที่มีเซิร์ฟเวอร์อยู่แล้วสามารถปรับใช้ pure-software speech engine ได้โดยตรงได้รับการถอดเสียงเป็นข้อความส่วนตัวบนตัวเร่งความเร็วในประเทศโดยไม่ต้องซื้อฮาร์ดแวร์

เจ็ดบทเรียนจากสนาม

นี่คือส่วนที่มีคุณค่าที่สุดของบทความทุกรายการได้รับการเรียนรู้อย่างยากลําบากไม่ได้คัดลอกจากเอกสาร

1.รูปร่างแบบไดนามิกทําให้เกิดการรวบรวมใหม่บ่อยครั้ง เราไม่ได้ตั้งค่า --dynamic_dims ในตอนแรกดังนั้นทุกคลิปเสียงที่มีขนาดแตกต่างกันจะเรียกการรวบรวมกราฟและความล่าช้าที่แหลมเป็นวินาทีเมื่อมีการกําหนดค่าระดับแฝงจะตั้งอยู่ในช่วงย่อยวินาที

2.เสียงยาวหมดหน่วยความจํา การให้อาหารการบันทึกการประชุมสองชั่วโมงกับโมเดลในหนึ่งผ่านทําให้เกิด OOM ทันทีคุณต้องใช้ การอนุมานเพิ่มเติมแบบ segmented - ตัดโดย VAD และป้อนส่วนถอดรหัสโดยส่วนแทนที่จะโหลดสิ่งทั้งหมดต่อมาเราเพิ่ม บังคับ 60 วินาทีหมวก ในบัฟเฟอร์เสียงซึ่งขจัดความเสี่ยง OOM ทั้งหมด

3.ความล้มเหลวของผู้ประกอบการเงียบ ตัวแปร LayerNorm โดยเฉพาะไม่มีตัวประกอบการที่สอดคล้องกันใน Ascend ATC รายงานไม่มีข้อผิดพลาดในเวลาแปลงและรันไทม์ส่งคืนศูนย์ทั้งหมด นี่คือชั้นเรียนที่อันตรายที่สุดของความล้มเหลวเพราะมันดูเหมือนความสําเร็จคุณต้องเรียกใช้การตรวจสอบความเท่าเทียมกัน: ฟีดเสียงเดียวกันผ่าน ONNX Runtime บน CPU และ OM บน NPU จากนั้นเปรียบเทียบเอาท์พุทนี่คือการถอยหลังเพียงอย่างเดียว - อย่าข้ามมัน

4.การรั่วไหลของบริบทภายใต้การทํางานพร้อมกันแบบหลายหัวข้อ เวอร์ชันก่อนหน้านี้สร้างบริบท ACL แยกต่างหากต่อคําขอซึ่งจะทําให้บริบทหมดลงภายใต้การทํางานพร้อมกันสูงการรวมบริบท แก้ไขแล้ว

5.การอัพเกรดไดรเวอร์หมายถึงการแปลงรุ่นใหม่ หลังจากการอัพเกรด CANN ที่สําคัญรุ่น OM เก่าอาจล้มเหลวในการโหลดหรือถดถอยในประสิทธิภาพใส่การแปลงแบบจําลองใน CI แทนที่จะแปลงด้วยมือและเรียกมันทํา

6.บรรจุภัณฑ์แบบออฟไลน์สําหรับสภาพแวดล้อมที่มีช่องว่างทางอากาศ ในสภาพแวดล้อมที่แยกทางกายภาพ การพึ่งพา CANN, ไดรเวอร์, น้ําหนักแบบจําลอง, แบบอักษรจีนและใบรับรอง จะต้องบรรจุทั้งหมดล่วงหน้าเราเคยตีมัน: ขาดตัวอักษรจีน ในเว็บไซต์และผลลัพธ์การถอดเสียงเป็นข้อความทุกครั้งออกมาเป็นกล่องการรวมกลุ่มแบบออฟไลน์จะต้องมีการซ้อมผ่านกระแสการปรับใช้เต็มรูปแบบในสภาพแวดล้อมที่เทียบเท่า - รูปถ่ายของโรงแรมเดอะคริสเทล

7.ข้อความผิดพลาดที่ทําให้เข้าใจผิดทําให้การวินิจฉัยผิดพลาด ข้อผิดพลาดบางอย่างของ Ascend ให้รหัสเท่านั้นไม่ใช่สาเหตุที่แท้จริงเราเคยใช้เวลาสามวันในการโหลดความล้มเหลวโดยไม่มีความคืบหน้าและมันก็กลายเป็น soc_version ที่ผิดบทเรียน: เมื่อคุณตีข้อผิดพลาดที่คลุมเครือให้ตรวจสอบเมทริกซ์เวอร์ชันอีกครั้งจากด้านบน - เร็วกว่าการอ่านบันทึกทีละบรรทัด

ท่อส่งเต็มรูปแบบ: จากการพูดถึงบันทึกการประชุม

หนึ่งจุดสุดท้าย: คําพูดการถอดเสียงเป็นข้อความเป็นเพียงขั้นตอนแรก

สิ่งที่สถานการณ์ที่แท้จริงต้องการคือ "บันทึกการประชุมเมื่อการประชุมสิ้นสุดลง"ที่ต้องใช้การแยกผู้พูดโครงสร้างความหมาย (หัวข้อการตัดสินใจรายการดําเนินการ) และการสร้างบันทึกการประชุมหลังจากขั้นตอน ASRการวางชั้นทั้งสามนี้ใน ลดการทํางานร่วมกันอย่างมีนัยสําคัญ - ซึ่งเป็นเหตุผลที่เราเน้นย้ําว่าคุณต้องถามว่าชั้นใดที่หมายเลขพร้อมกันครอบคลุม

วิธีการของเราทํางานท่อเต็มรูปแบบบนเซิร์ฟเวอร์เดียวโดยมีเสียงและข้อความไม่ออกจากเครือข่ายภายในสําหรับสถานการณ์ของรัฐบาลการเงินและการป้องกันนั่นเป็นข้อกําหนดที่ยากลําบาก

เมื่อไม่เลือกเครื่องเร่งในประเทศ

ขอให้เราตรงเกี่ยวกับเรานี้แทนที่จะผลักดันมัน

หากสถานการณ์ของคุณเป็นไปตามข้อใดข้อหนึ่งต่อไปนี้ ใช้ GPU แทน:

  • ไม่มีข้อกําหนดบังคับ Xinchuang หรือเทคโนโลยีในประเทศ → GPU ระบบนิเวศเป็นผู้ใหญ่มากขึ้น; อย่าสร้างปัญหาให้กับตัวเอง
  • ไม่มีใครในทีมรู้จัก CANN → ค่าใช้จ่ายในการดําเนินงานจะเกินกว่าเงินที่บันทึกไว้ในฮาร์ดแวร์

คุณค่าของเครื่องเร่งความเร็วในประเทศคือ การปฏิบัติตาม ไม่ใช่ความคุ้มค่าหากการปฏิบัติตามกฎระเบียบไม่ได้เป็นข้อจํากัดที่ยากลําบากคณิตจะไม่ทํางาน

ภาคผนวก: รายการความเข้ากันได้เต็มรูปแบบ

ส่วนประกอบช่วงที่สนับสนุน
Ascend310P / 910B
CambriconMLU370 / MLU590
HygonDCU
NVIDIAT4 / L4 / A10 / A100 และช่วงเต็ม
CPU เท่านั้นสนับสนุน (การใช้งานร่วมกันต่ํา / การนําฮาร์ดแวร์ที่มีอยู่กลับมาใช้ใหม่)

การปรับใช้ผ่าน Docker และ Kubernetes ทํางานบนสภาพแวดล้อมโลหะเปลือยระบบคลาวด์ของรัฐบาลและ Xinchuang บูรณาการกับ OA และระบบการประชุมผ่านอินเทอร์เฟซมาตรฐาน RESTful / WebSocket

อ่านเพิ่มเติม: Private ASR on the Ascend 910B | How to choose a private-deployment ASR ราคาถูกที่สุดในประเทศ

คำถามที่พบบ่อย

Q: เลือกระหว่าง Ascend 310 P และ 9 10 B ได้อย่างไร?

A: ขึ้นอยู่กับรูปร่างของภาระงาน310P เป็นการ์ดอนุมานขอบที่มุ่งเน้นไปที่การประมวลผลพลังงานต่ําและการประมวลผลในท้องถิ่นเหมาะสําหรับสํานักงานสาขาและการประมวลผลในห้อง; 910B มีการคํานวณมากขึ้นและเหมาะกับการอนุมานกลางและการรวมการทํางานร่วมกันสูงสถาปัตยกรรมทั่วไปสําหรับการประชุมการถอดเสียงเป็นข้อความใช้ 910B เป็นโหนดกลางและการ์ด 310P เป็นโหนดขอบดังนั้นเสียงจะถูกถอดความในท้องถิ่นและข้อความที่มีโครงสร้างเท่านั้นที่ส่งกลับไปที่ศูนย์กลาง

Q: การประชุมพร้อมกันของการถอดเสียงเป็นข้อความสามารถจัดการได้กี่สตรีม 310P?

A: ความหมายสําคัญ.กระแสพร้อมกันสําหรับ ASR การถอดเสียงเป็นข้อความบริสุทธิ์ค่อนข้างสูงเมื่อการแยกผู้พูดการแก้ไขคําศัพท์และการสร้างบันทึกการประชุมถูกวางชั้นบนตัวเลขลดลงอย่างมีนัยสําคัญหากผู้ขายอ้างถึงตัวเลขโดยไม่บอกว่าครอบคลุมการถอดเสียงเป็นข้อความบริสุทธิ์หรือท่อเต็มรูปแบบทั้งสองอาจแตกต่างกันหลายครั้ง - ถามเสมอ

Q: ทําไมการจัดตําแหน่งเวอร์ชันจึงเป็นส่วนที่ยากที่สุดในการปรับใช้ Ascend?

A: ใน Ascend ระบบนิเวศไดรเวอร์เฟิร์มแวร์ CANN รันไทม์คอนเทนเนอร์กรอบอนุมานและรูปแบบแบบโมเดลถูกผูกมัดซึ่งกันและกันความไม่ตรงกันใดๆทําให้เกิดความล้มเหลวในการโหลดและข้อความผิดพลาดมักจะคลุมเครือและไม่ได้ชี้ไปที่ปัญหาเวอร์ชันวิธีการที่เชื่อถือได้คือการล็อคการรวมกันกับตารางความเข้ากันได้อย่างเป็นทางการก่อนจากนั้นติดตั้งตามลําดับโดยไม่ต้องผสมแพคเกจไดรเวอร์จากชุดที่แตกต่างกัน

Q: จะเกิดอะไรขึ้นถ้า soc version ไม่ถูกต้องเมื่อแปลง ONNX เป็น OM?

A: โมเดลล้มเหลวในขั้นตอนการโหลดและข้อผิดพลาดไม่ได้บ่งชี้ถึงความไม่ตรงกันของโมเดลสําหรับ 310P คุณต้องเขียน Ascend310P; เขียน Ascend310 หรือ Ascend910B จะล้มเหลวในการโหลดความคลุมเครือของข้อผิดพลาดนี้เป็นหนึ่งในวิธีที่ง่ายที่สุดที่จะเข้าใจผิดในไซต์

Q: ทําไมฉันต้องเรียกใช้การตรวจสอบความเท่าเทียมกันหลังจากการแปลงโมเดล?

A: เพราะความล้มเหลวเงียบมีอยู่เมื่อตัวแปรผู้ประกอบการไม่มีการใช้งานบน Ascend การแปลง ATC จะไม่รายงานข้อผิดพลาดแต่รันไทม์จะผลิตเอาต์พุตเป็นศูนย์ทั้งหมดชนิดของความล้มเหลวนี้แสดงให้เห็นว่าไม่มีอะไรผิดปกติในบันทึกการถอยหลังเพียงอย่างเดียวคือการเรียกใช้เสียงเดียวกันผ่าน ONNX Runtime บน CPU และ OM บน NPU และเปรียบเทียบชั้นเอาต์พุตโดยชั้น

Q: ทําไมเสียงยาวถึงหมดหน่วยความจํา?

A: การให้อาหารการบันทึกการประชุมทั้งหมดไปยังแบบจําลองในครั้งเดียวเป็นความผิดพลาดที่พบบ่อยการโหลดการบันทึกสองชั่วโมงโดยตรงทําให้เกิดความล้มเหลวออกจากหน่วยความจําวิธีที่ถูกต้องคือการแบ่งส่วนโดยการตรวจจับกิจกรรมเสียงและเรียกใช้ส่วนอนุมานที่เพิ่มขึ้นโดยส่วนโดยมีฝาปิดบนบัฟเฟอร์แทนที่จะโหลดการบันทึกทั้งหมด

Q: อุปกรณ์ใดที่ต้องติดตั้งภาชนะสําหรับ Ascend?

A: คุณต้องติดตั้งอุปกรณ์ทั้งสี่ตัว /dev/davinci0, /dev/davinci manager, /dev/devmm svm และ /dev/hisi hdc พร้อมกับไดเรกทอรีไดรเวอร์การขาดตัวใดตัวหนึ่งจะทําให้เกิดความล้มเหลวในการเริ่มต้น ACL และข้อผิดพลาดไม่ได้บอกคุณว่าอุปกรณ์หายไป - นี่คือตัวบล็อกที่พบมากที่สุดสําหรับผู้มาใหม่

Q: ปรับใช้แบบออฟไลน์ในสภาพแวดล้อมที่มีช่องว่างทางอากาศได้อย่างไร?

A: สภาพแวดล้อมที่แยกทางกายภาพไม่มีเครือข่ายภายนอกดังนั้นการพึ่งพา CANN ไดรเวอร์น้ําหนักแบบจําลองแบบอักษรภาษาจีนและใบรับรองทั้งหมดจะต้องบรรจุไว้ล่วงหน้าเราเคยตีตัวอักษรจีนที่หายไปในไซต์และผลลัพธ์การถอดเสียงเป็นข้อความทุกครั้งออกมาเป็นกล่องการรวมกลุ่มแบบออฟไลน์จะต้องมีการซ้อมผ่านกระแสการปรับใช้ที่สมบูรณ์ในสภาพแวดล้อมที่เทียบเท่า

#เครื่องเร่งความเร็วในประเทศ#Ascend#ขอบอนุมาน#คําพูดการถอดเสียงเป็นข้อความ#Xinchuang#การปรับใช้คอนเทนเนอร์

จองการสาธิตส่วนบุคคล

บอกเราสถานการณ์การประชุมและความต้องการในการปฏิบัติตามกฎระเบียบของคุณ - รับแผนที่เหมาะสม

จองเลย
แชทสด