เครื่องมือนี้ช่วยให้คุณทดสอบความแม่นยำของเครื่องตรวจจับ AI ต่างๆ เป็นเครื่องมือบรรทัดคำสั่งที่ออกแบบมาเพื่อให้ง่ายต่อการทดสอบตัวตรวจจับจำนวนมากในเวลาเดียวกันโดยใช้ข้อมูลเดียวกัน
เครื่องมือนี้ใช้ชุดของไฟล์ข้อความและเรียกใช้ผ่านเครื่องตรวจจับ AI จำนวนหนึ่ง จากนั้นจะส่งออกผลลัพธ์เป็นไฟล์ CSV เครื่องมือนี้ยังสร้างเมทริกซ์ความสับสนเพื่อแสดงความแม่นยำของเครื่องตรวจจับ แต่เมทริกซ์ความสับสนคืออะไร? เมทริกซ์ความสับสนคือตารางที่ใช้อธิบายประสิทธิภาพของแบบจำลองการจำแนกประเภท โดยจะแสดงจำนวนการคาดการณ์ที่ถูกต้องและไม่ถูกต้องโดยแบบจำลองการจำแนกประเภทเปรียบเทียบกับผลลัพธ์ที่เกิดขึ้นจริง ตารางนี้มีประโยชน์อย่างมากสำหรับการเปรียบเทียบประสิทธิภาพของตัวตรวจจับต่างๆ เนื่องจากจะแสดงค่าบวกจริง ค่าบวกลวง ค่าลบจริง และค่าลบลวงสำหรับตัวตรวจจับแต่ละตัว สิ่งนี้ช่วยให้คุณเห็นว่าเครื่องตรวจจับใดแม่นยำที่สุด
pip install -r requirements.txt
python main.py
ขั้นตอนการทำงานตัวอย่าง:
python main.py
Type Y/N to select Originality.ai API: y
Enter your Originality.ai API key: YOUR_API_KEY
Enter the directory path for AI text files: data/ai/
Enter the directory path for human text files: data/human/
Enter the input CSV file path: data/input.csv
Enter the output CSV file name: output.csv
Tool will process the data. This may take a while.
Would you like to generate a confusion matrix ? (y/n): y
Press enter to exit...
python matrix.py
เพื่อสร้างเมทริกซ์ความสับสน เครื่องมือคาดว่าข้อมูลจะอยู่ในไฟล์ .txt ในโฟลเดอร์ที่ถูกส่งผ่านไปยังเครื่องมือเมื่อมีการเรียกใช้ หรือหากคุณพยายามประมวลผลไฟล์ CSV คอลัมน์ต่างๆ จะต้องอยู่ในลำดับต่อไปนี้:
text,dataset,label
sample text,gpt-3,ai
คอลัมน์ชุดข้อมูลอาจเป็น 'ai' หรือ 'human' คอลัมน์นี้ใช้เพื่อตั้งชื่อแถวในเอาต์พุต
ในการเพิ่มตัวตรวจจับ คุณต้องทำดังต่อไปนี้:
detectors.py
ในรูปแบบต่อไปนี้: "post_parameters": {
# The endpoint URL for the API.
"endpoint": "YOUR_API_ENDPOINT_URL",
# The body of the POST request. This usually contains the text to be analyzed.
# The actual contents will depend on what the API expects.
# Add or remove parameters as needed depending on the API requirements.
"body": {"PARAMETER_NAME": "PARAMETER_VALUE"},
# The headers for the POST request. This usually includes the API key and content type.
# Add or remove headers as needed depending on the API requirements.
"headers": {"HEADER_NAME": "HEADER_VALUE"},
# Information about where the API key is included in the request.
"API_KEY_POINTER": {
# The location that the API key will end up (usually 'headers' or 'body').
"location": "headers_or_body",
# The actual API key. This is usually read from an environment variable or input by the user.
"value": "YOUR_API_KEY",
# The name of the key or field where the API key is included. e.g 'x-api-key' or 'api_key'.
"key_name": "API_KEY_HEADER_OR_PARAMETER_NAME",
},
# The key in the body of the POST request where the text to be analyzed is included. e.g 'text' or 'content'.
"text_key": "KEY_NAME_FOR_TEXT",
},
"response": {
# The expected response from the API. The actual structure will depend on what the API returns.
# This should include mappings for how to interpret the API's response.
# Add or remove mappings as needed.
# e.g if the API returns a JSON object with a key called 'result' and the value of 'result' is a list of objects
# with a key called 'score' then the mapping would be:
# "result": {
# "score": "score"
# }
"200": {
"result": {
"MAPPING_FOR_DESIRED_OUTPUT": "RESPONSE_KEY_PATH",
}
}
},
}
api_endpoints.py
api_endpoints.py
เรายินดีรับการมีส่วนร่วมในโครงการนี้! ต่อไปนี้คือวิธีที่คุณสามารถช่วยได้:
หากคุณพบข้อบกพร่อง โปรดรายงานโดยเปิดปัญหา GitHub อย่าลืมรวม:
ข้อมูลนี้จะช่วยให้เราวินิจฉัยและแก้ไขจุดบกพร่องได้เร็วขึ้น
เรามองหาวิธีปรับปรุงเครื่องมืออยู่เสมอ! หากคุณมีแนวคิดในการปรับปรุง ให้เปิดปัญหา GitHub และอธิบาย:
หากคุณต้องการสนับสนุนโค้ดโดยตรง:
ตรวจสอบให้แน่ใจว่า PR ของคุณปฏิบัติตามสิ่งต่อไปนี้:
เราต้องการทราบเกี่ยวกับประสบการณ์ของคุณในการใช้เครื่องมือนี้ ทั้งดีและไม่ดี แจ้งให้เราทราบว่าอะไรได้ผลและอะไรไม่ได้ผล แบ่งปันเรื่องราวว่าเครื่องมือนี้ช่วยการวิจัยของคุณได้อย่างไร ยิ่งเราได้ยินจากคุณมากเท่าไร เราก็ยิ่งสามารถสร้างเครื่องมือสำหรับทุกคนได้ดีขึ้นเท่านั้น!
ขอบคุณสำหรับการมีส่วนร่วม!
ใบอนุญาตเอ็มไอที
ลิขสิทธิ์ (c) [2023] [Originality.AI]
อนุญาตให้บุคคลใดก็ตามที่ได้รับสำเนาของซอฟต์แวร์นี้และไฟล์เอกสารที่เกี่ยวข้อง ("ซอฟต์แวร์") อนุญาตโดยไม่เสียค่าใช้จ่าย เพื่อจัดการกับซอฟต์แวร์โดยไม่มีข้อจำกัด รวมถึงแต่ไม่จำกัดเพียงสิทธิ์ในการใช้ คัดลอก ปรับเปลี่ยน แจกจ่าย อนุญาตช่วง และ/หรือขายสำเนาของซอฟต์แวร์ และอนุญาตให้บุคคลที่ได้รับซอฟต์แวร์นี้ให้ทำเช่นนั้นได้ ภายใต้เงื่อนไขต่อไปนี้:
ประกาศเกี่ยวกับลิขสิทธิ์ข้างต้นและประกาศการอนุญาตนี้จะรวมอยู่ในสำเนาทั้งหมดหรือส่วนสำคัญของซอฟต์แวร์
ซอฟต์แวร์นี้มีให้ "ตามที่เป็น" โดยไม่มีการรับประกันใดๆ ทั้งโดยชัดแจ้งหรือโดยนัย ซึ่งรวมถึงแต่ไม่จำกัดเพียงการรับประกันความสามารถในการค้าขาย ความเหมาะสมสำหรับวัตถุประสงค์เฉพาะ และการไม่ละเมิด ไม่ว่าในกรณีใดผู้เขียนหรือผู้ถือลิขสิทธิ์จะต้องรับผิดต่อการเรียกร้องค่าเสียหายหรือความรับผิดอื่นใดไม่ว่าในการกระทำของสัญญาการละเมิดหรืออย่างอื่นที่เกิดขึ้นจากหรือเกี่ยวข้องกับซอฟต์แวร์หรือการใช้งานหรือข้อตกลงอื่น ๆ ใน ซอฟต์แวร์.