_________ ____ ___ ___ / /__ __
/ ___/ __ / __ `__ / _ / __/ |/_/
/ /__/ /_/ / / / / / / __/ /__> <
___/____/_/ /_/ /_/___/__/_/|_|
ส่วนขยายโอเพ่นซอร์สสำหรับ Comet SDK
ส่วนขยายเหล่านี้สร้างและสนับสนุนโดยชุมชน และไม่ใช่โครงการอย่างเป็นทางการของ Comet ML เรายินดีรับการมีส่วนร่วม!
pip install cometx
หากต้องการใช้ฟังก์ชันบรรทัดคำสั่งเหล่านี้ คุณจะต้องตั้งค่าคีย์ Comet API ด้วยวิธีใดวิธีหนึ่งจากสองวิธีต่อไปนี้
ไม่ว่าจะด้วยวิธีนี้:
export COMET_API_KEY="YOUR-COMET-API-KEY"
หรือด้วยวิธีนี้:
[comet]
api_key = YOUR-COMET-API-KEY
หากคุณเป็นผู้ใช้ Comet ภายในองค์กร คุณจะต้องตั้งค่าตัวแปรสภาพแวดล้อม COMET_URL_OVERRIDE
หรือเพิ่มลงในไฟล์ ~/.comet.config
ของคุณดังนี้:
ไม่ว่าจะด้วยวิธีนี้:
export COMET_API_KEY="YOUR-COMET-API-KEY"
export COMET_URL_OVERRIDE="https://your-companys-comet.com/clientlib/"
หรือด้วยวิธีนี้:
[comet]
api_key = YOUR-COMET-API-KEY
url_override = https://your-companys-comet.com/clientlib/
cometx
ประกอบด้วยชุดคำสั่งย่อยที่มีประโยชน์อย่างอิสระ และสามารถใช้ร่วมกันเพื่อสร้างเครื่องมือที่ซับซ้อนสำหรับการจัดการ ML
ส่วนนี้จะตรวจสอบการใช้งานทั่วไปบางประการ ตามด้วยการสำรวจคำสั่งย่อยแต่ละคำสั่งอย่างละเอียด
ในส่วนนี้เราจะสำรวจสถานการณ์ทั่วไปบางประการ
สำนวนที่มีประโยชน์คือการตั้งค่าตัวแปรสภาพแวดล้อม Comet ของคุณบนบรรทัดของคำสั่งย่อย ในลักษณะนี้ คุณสามารถตั้งค่า COMET_URL_OVERRIDE
และ COMET_API_KEY
สำหรับการติดตั้งที่แตกต่างกันได้
แน่นอน คุณไม่จำเป็นต้องตั้งค่าตัวแปรสภาพแวดล้อม หากคุณกำลังคัดลอกการทดลองในการติดตั้ง Comet เดียวกัน
ต่อไปนี้คือวิธีที่คุณสามารถดาวน์โหลดการทดลองใน WORKSPACE/PROJECT จาก http://comet.a.com:
COMET_URL_OVERRIDE=http://comet.a.com/clientlib
COMET_API_KEY=A-KEY
cometx download WORKSPACE/PROJECT
คำสั่งย่อย cometx download
ดาวน์โหลดข้อมูลการทดลอง Comet ทั้งหมดลงในไฟล์โลคัล โปรดทราบว่า WORKSPACE/PROJECT หมายถึงพื้นที่ทำงานและโครงการบน http://comet.a.com
จากนั้นเราสามารถคัดลอกข้อมูลการทดลองที่ดาวน์โหลดมาด้วยคำสั่งที่คล้ายกัน:
COMET_URL_OVERRIDE=http://comet.b.com/clientlib
COMET_API_KEY=B-KEY
cometx copy WORKSPACE/PROJECT NEW-WORKSPACE/NEW-PROJECT
โปรดทราบว่าตอนนี้ WORKSPACE/PROJECT อ้างถึงไดเร็กทอรี และ NEW-WORKSPACE/NEW-PROJECT อ้างถึงพื้นที่ทำงานและโปรเจ็กต์บน http://comet.b.com
ในทำนองเดียวกัน คุณสามารถคัดลอกโปรเจ็กต์ทั้งหมดได้ด้วยการดาวน์โหลดก่อน:
COMET_URL_OVERRIDE=http://comet.a.com/clientlib
COMET_API_KEY=A-KEY
cometx download WORKSPACE
แล้วคัดลอก:
COMET_URL_OVERRIDE=http://comet.b.com/clientlib
COMET_API_KEY=B-KEY
cometx copy WORKSPACE NEW-WORKSPACE
ในทำนองเดียวกัน คุณสามารถคัดลอกการทดสอบเดียวก่อนดาวน์โหลดได้:
COMET_URL_OVERRIDE=http://comet.a.com/clientlib
COMET_API_KEY=A-KEY
cometx download WORKSPACE/PROJECT/EXPERIMENT-NAME-OR-ID
แล้วคัดลอกมัน:
COMET_URL_OVERRIDE=http://comet.b.com/clientlib
COMET_API_KEY=B-KEY
cometx copy WORKSPACE/PROJECT/EXPERIMENT-NAME-OR-ID NEW-WORKSPACE/NEW-PROJECT
สำหรับคำสั่งย่อยทั้งหมด ให้ใช้แฟล็ก --help
เพื่อรับข้อมูลเพิ่มเติม
คำสั่งนี้ใช้เพื่อ:
ตัวอย่างรายการดาวหาง:
cometx list WORKSPACE/PROJECT/EXPERIMENT-KEY-OR-NAME
cometx list WORKSPACE/PROJECT
cometx list WORKSPACE
cometx list
--query
- ใช้เพื่อจำกัดการทดลองที่จะดาวน์โหลด (ดูข้อมูลเพิ่มเติมที่ Experiment.api.query())-u
, --use-name
- ใช้ชื่อการทดลองสำหรับโฟลเดอร์การทดลองและรายการ สำหรับข้อมูลเพิ่มเติม cometx list --help
คำสั่งนี้ใช้เพื่อ:
ตัวอย่างสำเนาดาวหาง:
cometx SOURCE DESTINATION
cometx --symlink SOURCE DESTINATION
โดยที่แหล่งที่มาคือ:
--symlink
, โฟลเดอร์ "WORKSPACE/PROJECT/EXPERIMENT", "WORKSPACE/PROJECT/ " หรือ "WORKSPACE/ /*" (ใช้เครื่องหมายคำพูด)--symlink
แสดงว่ามันเป็นเส้นทาง Comet ไปยังพื้นที่ทำงานหรือพื้นที่ทำงาน/โครงการโดยที่ DESTINATION คือ:
ไม่สามารถผสมกันได้ทั้งหมด:
จุดหมายปลายทาง → ที่มา ↓ | พื้นที่ทำงาน | พื้นที่ทำงาน/โครงการ |
---|---|---|
WORKSPACE/*/* | คัดลอกโครงการทั้งหมด | ไม่มี |
WORKSPACE/PROJ/* | ไม่มี | คัดลอกการทดลองทั้งหมด |
WORKSPACE/PROJ/EXP | ไม่มี | คัดลอกการทดลอง |
สำหรับข้อมูลเพิ่มเติม cometx copy --help
คำสั่งนี้ใช้เพื่อ:
ตัวอย่างการดาวน์โหลดดาวหาง:
cometx download WORKSPACE/PROJECT/EXPERIMENT-KEY-OR-NAME [RESOURCE ...] [FLAGS ...]
cometx download WORKSPACE/PROJECT [RESOURCE ...] [FLAGS ...]
cometx download WORKSPACE [RESOURCE ...] [FLAGS ...]
cometx download [RESOURCE ...] [FLAGS ...]
โดยที่ [RESOURCE ...] เป็นชื่อต่อไปนี้เป็นศูนย์หรือมากกว่า:
หากไม่มีการให้ทรัพยากร ระบบจะดาวน์โหลดทรัพยากรทั้งหมด
--query
- ใช้เพื่อจำกัดการทดลองที่จะดาวน์โหลด (ดูข้อมูลเพิ่มเติมที่ Experiment.api.query())--list
- ใช้แสดงรายการพื้นที่ทำงาน โปรเจ็กต์ การทดลอง อาร์ติแฟกต์ หรือโมเดลที่มีอยู่ (เหมือนกับ cometx list
)--output
- ดาวน์โหลดทรัพยากรไปยังโฟลเดอร์อื่นที่ไม่ใช่ปัจจุบัน--flat
- อย่าใช้ลำดับชั้นปกติสำหรับรายการที่ดาวน์โหลด--use-name
- ใช้ชื่อการทดลองสำหรับโฟลเดอร์และรายการ--ignore
- อย่าดาวน์โหลดทรัพยากรต่อไปนี้ (ใช้ชื่อทรัพยากรตั้งแต่หนึ่งชื่อขึ้นไปจากด้านบน)--asset-type
- ประเภทเนื้อหาที่จะจับคู่ หรือละไว้เพื่อให้ตรงกันทั้งหมด--filename
- ชื่อไฟล์ที่จะจับคู่ หรือเว้นไว้เพื่อให้ตรงกันทั้งหมด--overwrite
- เขียนทับไฟล์ที่มีอยู่--force
- ไม่ต้องขอให้ดาวน์โหลด แค่ทำมัน--help
- ข้อความนี้วิธีดาวน์โหลดอาร์ติแฟกต์:
cometx download WORKSPACE/artifacts/NAME [FLAGS ...]
cometx download WORKSPACE/artifacts/NAME/VERSION-OR-ALIAS [FLAGS ...]
หากต้องการดาวน์โหลดโมเดลจากการลงทะเบียนโมเดล:
cometx download WORKSPACE/model-registry/NAME [FLAGS ...]
cometx download WORKSPACE/model-registry/NAME/VERSION-OR-STAGE [FLAGS ...]
สำหรับข้อมูลเพิ่มเติม cometx download --help
คำสั่งนี้ใช้เพื่อบันทึกไฟล์ทรัพยากร (หน่วยเมตริก พารามิเตอร์ เนื้อหา ฯลฯ) ไปยังการทดสอบเฉพาะหรือการทดสอบ
ตัวอย่างบันทึก cometx:
cometx log WORKSPACE/PROJECT/EXPERIMENT-KEY-OR-NAME [--type TYPE] FILENAME.EXT
โดยที่ TYPE คือประเภทเนื้อหาของชื่อไฟล์ ไม่จำเป็นต้องใช้ TYPE หากทราบนามสกุลไฟล์ (FILENAME.EXT)
ส่วนขยายที่รู้จัก:
ประเภทที่รู้จัก:
ตัวอย่างการตั้งค่าคีย์อื่น:ค่า:
cometx log WORKSPACE/PROJECT --type other --set "key:value"
cometx log WORKSPACE/PROJECT/EXPERIMENT-KEY-OR-NAME --type other --set "key:value"
เวอร์ชันแรกจะตั้งค่าคีย์:ค่าอีกอันในการทดสอบทั้งหมดในโปรเจ็กต์ และเวอร์ชันที่สองจะตั้งค่าคีย์:ค่าอีกอันในการทดสอบ
ตัวอย่างการบันทึกรายการทั้งหมด:
cometx log WORKSPACE/PROJECT PATH-TO-DOWNLOAD --type all
cometx log WORKSPACE/PROJECT/EXPERIMENT-KEY-OR-NAME PATH-TO-DOWNLOAD --type all
เวอร์ชันแรกจะสร้างการทดสอบ และเวอร์ชันที่สองจะบันทึกทุกอย่างไว้ในการทดสอบที่มีอยู่
--query
- ใช้เพื่อจำกัดการทดลองที่จะดาวน์โหลด (ดูข้อมูลเพิ่มเติมที่ Experiment.api.query())--type
- ประเภทของรายการที่จะบันทึก--set
- "คีย์: ค่า" เพื่อบันทึก สำหรับข้อมูลเพิ่มเติม cometx log --help
หากต้องการลบเนื้อหาการทดสอบ:
cometx delete-assets WORKSPACE/PROJECT --type=image
cometx delete-assets WORKSPACE/PROJECT/EXPERIMENT --type=all
ประเภทอาจเป็นเนื้อหาที่ถูกต้อง ได้แก่ :
สำหรับข้อมูลเพิ่มเติม cometx delete-assets --help
cometx reproduce [-h] [--run] [--executable EXECUTABLE] COMET_PATH OUTPUT_DIR
สำหรับข้อมูลเพิ่มเติม cometx reproduce --help
คำเตือน: การเรียกใช้การทดสอบจะสร้างการทดลอง แบบจำลอง เนื้อหา ฯลฯ ในพื้นที่ทำงานเริ่มต้นของคุณ หากไม่ได้ตั้งค่าเป็นอย่างอื่น
หากต้องการรันการทดสอบ คุณสามารถส่งออกรายการเหล่านี้ทั้งหมดในสภาพแวดล้อม:
$ export COMET_USER= " "
$ export COMET_WORKSPACE= " "
$ export COMET_API_KEY= " "
$ pytest tests
หรือกำหนด workspace
และ api_key
ในไฟล์ ~/.comet.config ของคุณ:
$ export COMET_USER= " "
$ pytest tests