ใช้อินพุตแบบหลายรูปแบบกับฟังก์ชัน AI (พรีวิว)

สำคัญ

คุณลักษณะนี้อยู่ใน แสดงตัวอย่าง

ฟังก์ชัน AI ใช้การแปลงแบบบรรทัดเดียวที่ขับเคลื่อนด้วย LLM กับแพนด้าขนาดใหญ่หรือ PySpark DataFrames ที่มีการทํางานพร้อมกันสูงตามค่าเริ่มต้น ด้วยการป้อนข้อมูลแบบหลายรูปแบบ คุณยังสามารถประมวลผลรูปภาพ PDF และไฟล์ข้อความเพื่อจัดประเภทเอกสาร สรุป PDF ดึงข้อมูลจากรูปภาพ และอื่นๆ

ใช้ตารางนี้เพื่อข้ามไปยังตัวอย่างหลายรูปแบบและเอกสารประกอบโดยละเอียด

Function คำอธิบาย เอกสารโดยละเอียด
ai.analyze_sentiment ตรวจจับความคิดเห็นในไฟล์ ตัวอย่าง. แพนด้าPySpark
ai.classify จัดประเภทไฟล์โดยใช้ป้ายกํากับของคุณ ตัวอย่าง. แพนด้าPySpark
ai.extract แยกฟิลด์จากไฟล์ ตัวอย่าง. แพนด้าPySpark
ai.fix_grammar แก้ไขการสะกด ไวยากรณ์ และเครื่องหมายวรรคตอนในไฟล์ ตัวอย่าง. แพนด้าPySpark
ai.generate_response สร้างการตอบกลับที่มีพื้นฐานมาจากเนื้อหาไฟล์ ตัวอย่าง. แพนด้าPySpark
ai.summarize สรุปเนื้อหาไฟล์ ตัวอย่าง. แพนด้าPySpark
ai.translate แปลเนื้อหาไฟล์ ตัวอย่าง. แพนด้าPySpark
aifunc.load โหลดไฟล์จากโฟลเดอร์ลงในตารางที่มีโครงสร้าง ตัวอย่าง. ไวยากรณ์และพารามิเตอร์
aifunc.list_file_paths รับเส้นทางไฟล์จากโฟลเดอร์ ตัวอย่าง. ไวยากรณ์และพารามิเตอร์
ai.infer_schema อนุมานสคีมาการแยกจากเนื้อหาของไฟล์ ตัวอย่าง. ไวยากรณ์และพารามิเตอร์

ชนิดไฟล์ที่รองรับ

ฟังก์ชัน AI แบบมัลติโมดอลรองรับประเภทไฟล์ต่อไปนี้:

  • รูปภาพ: jpg, jpeg, png, gif แบบคงที่, webp
  • เอกสาร: pdf
  • ไฟล์ข้อความ: md, txt, csv, tsv, json, xml, py และไฟล์ข้อความอื่นๆ

Note

  • การเรียกแบบหลายรูปแบบที่มีอินพุตเส้นทางไฟล์ทํางานร่วมกับ responses API ซึ่งเป็นค่าเริ่มต้น อย่าตั้งค่า api_type เป็น chat_completions สําหรับอินพุตเส้นทางไฟล์
  • รูปแบบไฟล์ Office (เช่น .docx, .pptxและ .xlsx) ยังไม่ได้รับการสนับสนุนในขณะนี้
  • คุณสามารถแปลงไฟล์ .docx และ .pptx เป็น PDF และไฟล์ .xlsx เป็น CSV ก่อนที่จะใช้กับฟังก์ชัน AI แบบหลายรูปแบบ
  • ไฟล์อินพุตแต่ละไฟล์มีขนาดจํากัดไว้ที่ 50 MB

โปรโตคอล URL ที่รองรับ

อินพุตแบบหลายรูปแบบคือสตริงที่ใช้โปรโตคอล URL อย่างใดอย่างหนึ่งต่อไปนี้

  • เส้นทางไฟล์ภายในเครื่อง
  • http(s)
  • สวัสดีเอสบีเอส
  • เอบีเอฟเอส

ข้อกำหนดเบื้องต้น

ฟังก์ชัน AI แบบหลายรูปแบบมีข้อกําหนดเบื้องต้นเหมือนกันกับฟังก์ชัน AI แบบข้อความ สําหรับรายการทั้งหมด โปรดดู ข้อกําหนดเบื้องต้น

ตั้งค่าไฟล์ของคุณ

จัดระเบียบไฟล์ของคุณในโฟลเดอร์ที่สามารถอ้างอิงได้ด้วยเส้นทางหรือสตริงสไตล์ glob

เคล็ดลับ

ใช้ สมุดบันทึกเริ่มต้นฟังก์ชัน AI สําหรับตัวอย่างฟังก์ชัน AI แบบครบวงจรที่ใช้ฟังก์ชัน AI ทั้งหมด สมุดบันทึกเริ่มต้นประกอบด้วยสมุดบันทึกหนึ่งเล่มสําหรับแพนด้าและสมุดบันทึกหนึ่งเล่มสําหรับ PySpark

ตัวอย่าง

คุณสามารถจัดเก็บไฟล์ในเลคเฮาส์ที่แนบมากับสมุดบันทึกของคุณ

folder_path = "/lakehouse/default/Files"

โหลดไฟล์ของคุณ

หากต้องการใช้ AI Functions กับการป้อนข้อมูลแบบหลายรูปแบบ คุณสามารถโหลดเนื้อหาไฟล์ลงในตารางที่มีโครงสร้างหรืออ้างอิงเส้นทางไฟล์โดยตรงใน DataFrame ของคุณ ตัวอย่างต่อไปนี้แสดงทั้งสองวิธี

โหลดไฟล์ลงในตาราง

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

df, schema = aifunc.load(folder_path)
# or
df, schema = aifunc.load(folder_path, prompt="Give me candidate's name and the most recent company they worked for.")
display(df)

โหลดเส้นทางไฟล์ลงในคอลัมน์

อีกวิธีหนึ่งคือ คุณสามารถใช้ aifunc.list_file_paths เพื่อรับรายการเส้นทางไฟล์จากโฟลเดอร์และโหลดลงในคอลัมน์ DataFrame วิธีการนี้มีประโยชน์เมื่อคุณต้องการเรียกใช้ฟังก์ชัน AI ในแต่ละไฟล์

Note

ฟังก์ชันมัลติโมดอลส่วนใหญ่ยอมรับเส้นทางไฟล์ที่มี column_type="path" ใน pandas หรือ input_col_type/col_types="path" ใน PySpark

file_path_series = aifunc.list_file_paths(folder_path)
df = pd.DataFrame({"file_path": file_path_series}).reset_index(drop=True)
display(df)

สำคัญ

เมื่อเส้นทางไฟล์ของคุณถูกจัดเก็บเป็น URL สตริงในคอลัมน์ DataFrame คุณต้องบอกฟังก์ชัน AI อย่างชัดเจนให้ถือว่าค่าเป็นเส้นทางไฟล์แทนที่จะเป็นข้อความธรรมดา

สําหรับฟังก์ชัน AI ระดับซีรีส์ (ทํางานบนคอลัมน์เดียว) ให้ column_type ตั้งค่าพารามิเตอร์:

df["result"] = df["file_path"].ai.analyze_sentiment(column_type="path")

สําหรับฟังก์ชัน AI ระดับ DataFrame (ทํางานในหลายคอลัมน์) ให้ใช้ column_type_dict พารามิเตอร์:

df["result"] = df.ai.generate_response(
    prompt="Describe the content.",
    column_type_dict={"file_path": "path"},
)

Note

ถ้าคุณใช้ aifunc.list_file_paths() เพื่อสร้างคอลัมน์เส้นทางแฟ้ม วัตถุที่ yarl.URL ส่งคืนจะถูกตรวจพบเป็นเส้นทางแฟ้มโดยอัตโนมัติ คุณต้องระบุ column_type="path" เวลาที่คอลัมน์ของคุณมี URL สตริงธรรมดา

ฟังก์ชันมัลติโมดอลใหม่

aifunc.load: โหลดไฟล์ลงในตาราง

ฟังก์ชันจะ aifunc.load อ่านไฟล์ทั้งหมดจากเส้นทางโฟลเดอร์และสร้างตารางที่มีโครงสร้างจากเนื้อหา คุณสามารถเลือกให้พร้อมท์เพื่อเป็นแนวทางในการแยก หรือสคีมาสําหรับโครงสร้างที่สอดคล้องกัน

ไวยากรณ์

df, schema = aifunc.load(folder_path, prompt=None, schema=None)

พารามิเตอร์

ชื่อ คำอธิบาย
folder_path (จําเป็น) เส้นทางสตริงไปยังโฟลเดอร์หรือรูปแบบ Glob ที่ตรงกับไฟล์
prompt (ไม่บังคับ) สตริงที่แนะนํากระบวนการสร้างตาราง ใช้เพื่อระบุฟิลด์ที่จะแยกออกจากไฟล์
schema (ไม่บังคับ) ออบเจ็กต์ schema (ส่งคืนโดยการเรียกก่อนหน้านี้ load ) ที่กําหนดโครงสร้างตาราง เมื่อมีให้ ฟังก์ชันจะใช้สคีมานี้โดยตรง

การส่งคืนสินค้า

ทูเปิลของ (DataFrame, schema). DataFrame ประกอบด้วยข้อมูลที่มีโครงสร้างที่ดึงมาจากไฟล์ สคีมาสามารถนํามาใช้ใหม่ในการเรียกครั้งต่อไป load เพื่อให้ได้ผลลัพธ์ที่สอดคล้องกัน

ตัวอย่าง

# This code uses AI. Always review output for mistakes.

# Basic load – let the AI infer the table structure
df, schema = aifunc.load(folder_path)
display(df)
# This code uses AI. Always review output for mistakes.

# Guided load – provide a prompt to specify what to extract
guided_df, guided_schema = aifunc.load(
    folder_path,
    prompt="Give me candidate's name and the most recent company they worked for.",
)
display(guided_df)

aifunc.list_file_paths: แสดงรายการไฟล์

ฟังก์ชันจะ aifunc.list_file_paths ดึงข้อมูลเส้นทางไฟล์ที่ถูกต้องทั้งหมดจากโฟลเดอร์ที่ระบุ คุณสามารถใช้เส้นทางไฟล์ที่ส่งคืนเป็นอินพุตไปยังฟังก์ชัน AI แบบมัลติโมดอลใดๆ ฟังก์ชันนี้ยังรองรับรูปแบบ glob-style

ไวยากรณ์

file_path_series = aifunc.list_file_paths(folder_path)

พารามิเตอร์

ชื่อ คำอธิบาย
folder_path (จําเป็น) เส้นทางสตริงไปยังโฟลเดอร์หรือรูปแบบ Glob ที่ตรงกับไฟล์

การส่งคืนสินค้า

แพ นด้า ชุด ของ yarl.URL วัตถุที่จัดทําดัชนีโดยการแสดงสตริง ออบเจ็กต์เหล่านี้yarl.URLจะถือว่าเป็นเส้นทางไฟล์โดยอัตโนมัติโดย AI Functions ดังนั้นคุณจึงไม่จําเป็นต้องระบุcolumn_type="path"

ตัวอย่าง

# This code uses AI. Always review output for mistakes.

file_path_series = aifunc.list_file_paths(folder_path)
custom_df = pd.DataFrame({"file_path": file_path_series}).reset_index(drop=True)
display(custom_df)

ai.infer_schema: อนุมาน Schema จากไฟล์

ฟังก์ชันอนุ ai.infer_schema มานสคีมาทั่วไปจากเนื้อหาของไฟล์ สคีมาที่อนุมานจะแสดงเป็นรายการ aifunc.ExtractLabel ออบเจ็กต์ที่คุณสามารถส่งผ่านโดยตรง ai.extract เพื่อแยกข้อมูลที่มีโครงสร้าง

ไวยากรณ์

schema = df["file_path"].ai.infer_schema(column_type="path")

พารามิเตอร์

ชื่อ คำอธิบาย
prompt (ไม่บังคับ) สตริงเพื่อเป็นแนวทางในการอนุมานสคีมา หากไม่ได้ระบุฟังก์ชันจะอนุมานสคีมาจากเนื้อหาไฟล์เพียงอย่างเดียว
n_samples (ไม่บังคับ) จํานวนเต็มที่ระบุจํานวนรายการที่จะสุ่มตัวอย่างสําหรับการอนุมาน ค่าเริ่มต้นคือ 3.
column_type (ไม่บังคับ) ตั้งค่าเป็น "path" เพื่อถือว่าค่าคอลัมน์เป็นเส้นทางไฟล์

การส่งคืนสินค้า

รายการของ aifunc.ExtractLabel วัตถุที่อธิบาย Schema ที่อนุมาน คุณสามารถส่งรายการนี้เพื่อ ai.extract ดึงข้อมูลที่มีโครงสร้างจากไฟล์ได้

ตัวอย่าง

# This code uses AI. Always review output for mistakes.

# Infer a schema from file contents
schema = df["file_path"].ai.infer_schema(column_type="path")
for label in schema:
    print(label)

# Use the inferred schema with ai.extract
extracted_df = df["file_path"].ai.extract(*schema, column_type="path")
display(extracted_df)

ใช้อินพุตแบบหลายรูปแบบกับฟังก์ชัน AI ที่มีอยู่

ตัวอย่างต่อไปนี้แสดงวิธีใช้อินพุตแบบหลายรูปแบบกับฟังก์ชัน AI ที่รองรับแต่ละฟังก์ชัน

ai.analyze_sentiment: ตรวจจับความคิดเห็นจากไฟล์

สําหรับพารามิเตอร์ทั้งหมด โปรดดู แพนด้า หรือ PySpark

# This code uses AI. Always review output for mistakes.

animal_urls = [
    "<image-url-golden-retriever>",  # Replace with URL to an image of a golden retriever
    "<image-url-giant-panda>",  # Replace with URL to an image of a giant panda
    "<image-url-bald-eagle>",  # Replace with URL to an image of a bald eagle
]
animal_df = pd.DataFrame({"file_path": animal_urls})

animal_df["sentiment"] = animal_df["file_path"].ai.analyze_sentiment(column_type="path")
display(animal_df)

ai.classify: จําแนกไฟล์

สําหรับพารามิเตอร์ทั้งหมด โปรดดู แพนด้า หรือ PySpark

# This code uses AI. Always review output for mistakes.

custom_df["highest_degree"] = custom_df["file_path"].ai.classify(
    "Master", "PhD", "Bachelor", "Other",
    column_type="path",
)
display(custom_df)

ai.extract: แยกเอนทิตีจากไฟล์

สําหรับพารามิเตอร์ทั้งหมด โปรดดู แพนด้า หรือ PySpark

# This code uses AI. Always review output for mistakes.

extracted = custom_df["file_path"].ai.extract(
    aifunc.ExtractLabel(
        "name",
        description="The full name of the candidate, first letter capitalized.",
        max_items=1,
    ),
    "companies_worked_for",
    aifunc.ExtractLabel(
        "year_of_experience",
        description="The total years of professional work experience the candidate has, excluding internships.",
        type="integer",
        max_items=1,
    ),
    column_type="path",
)
display(extracted)

ai.fix_grammar: แก้ไขไวยากรณ์ในไฟล์

สําหรับพารามิเตอร์ทั้งหมด โปรดดู แพนด้า หรือ PySpark

# This code uses AI. Always review output for mistakes.

custom_df["corrections"] = custom_df["file_path"].ai.fix_grammar(column_type="path")
display(custom_df)

ai.generate_response: ใช้ข้อความแจ้งที่กําหนดเองกับไฟล์

สําหรับพารามิเตอร์ทั้งหมด โปรดดู แพนด้า หรือ PySpark

# This code uses AI. Always review output for mistakes.

# Series-level: generate a response from each file
animal_df["animal_name"] = animal_df["file_path"].ai.generate_response(
    prompt="What type of animal is in this image? Give me only the animal's common name.",
    column_type="path",
)
display(animal_df)
# This code uses AI. Always review output for mistakes.

# DataFrame-level: use all columns as context
animal_df["description"] = animal_df.ai.generate_response(
    prompt="Describe this animal's natural habitat and one interesting fact about it.",
    column_type_dict={"file_path": "path"},
)
display(animal_df)

ai.summarize: สรุปไฟล์

สําหรับพารามิเตอร์ทั้งหมด โปรดดู แพนด้า หรือ PySpark

# This code uses AI. Always review output for mistakes.

# Summarize file content from a single column
custom_df["summary"] = custom_df["file_path"].ai.summarize(
    instructions="Summarize this file in one sentence for a support analyst.",
    column_type="path",
)
display(custom_df)

คุณสามารถสรุปค่าในคอลัมน์ทั้งหมดใน DataFrame ได้โดยการละเว้นคอลัมน์อินพุตและระบุคอลัมน์เส้นทางไฟล์ด้วย column_type_dict (แพนด้า) หรือ col_types (PySpark):

# This code uses AI. Always review output for mistakes.

custom_df["summary"] = custom_df.ai.summarize(
    column_type_dict={"file_path": "path"},
)
display(custom_df)

ai.translate: แปลไฟล์

สําหรับพารามิเตอร์ทั้งหมด โปรดดู แพนด้า หรือ PySpark

# This code uses AI. Always review output for mistakes.

custom_df["chinese_version"] = custom_df["file_path"].ai.translate(
    "Chinese",
    column_type="path",
)
display(custom_df)

ประเมินคุณภาพผลผลิต

ใช้ สมุดบันทึกการประเมินฟังก์ชัน AI สําหรับเวิร์กโฟลว์ที่มีโครงสร้างที่ใช้ LLM-as-a-Judge เพื่อประเมินเอาต์พุตหลายรูปแบบและตัวชี้วัดการคํานวณ เช่น ความแม่นยํา ความแม่นยํา การเรียกคืน F1 ความสอดคล้องกัน ความสม่ําเสมอ และความเกี่ยวข้อง คุณสามารถใช้เวิร์กโฟลว์เหล่านี้เพื่อตรวจสอบคุณภาพของการจัดประเภท การแยก การสรุป และผลลัพธ์ของฟังก์ชัน AI อื่นๆ ก่อนที่จะย้ายไปยังการผลิต

ตรวจสอบต้นทุนและการใช้ความจุ

ใช้ การเรียกเก็บเงินสําหรับ AI Functions เพื่อทําความเข้าใจต้นทุน การใช้งานรันไทม์ และการตรวจสอบความจุ