ฟีเจอร์นี้มีประโยชน์โดยเฉพาะเมื่อทำงานกับโค้ดที่ซับซ้อนหรือเมื่อพยายามที่จะบรรลุผลลัพธ์เฉพาะในโค้ดที่สร้างขึ้น โดยการให้คำแนะนำเหล่านี้ ผู้ใช้สามารถมั่นใจได้ว่าโมเดล AI จะผลิตโค้ดที่ตรงตามความต้องการและข้อกำหนดที่แน่นอนของพวกเขา
คำแนะนำแบบ Inline เป็นกลไกพิเศษที่อนุญาตให้ผู้ใช้ให้คำแนะนำเฉพาะกับโมเดล AI ในระหว่างกระบวนการทำงานที่เกี่ยวข้องกับโค้ดต้นฉบับ
หนึ่งในข้อดีหลักของการใช้คำแนะนำแบบ Inline คือมันช่วยให้ผู้ใช้สามารถปรับแต่งผลลัพธ์ของโมเดล AI โดยไม่ต้องแก้ไขโค้ดด้วยตนเองหลังจากนั้น ซึ่งสามารถประหยัดเวลาและความพยายามได้ เนื่องจากผู้ใช้สามารถทำการปรับเปลี่ยนโค้ดที่สร้างขึ้นได้อย่างรวดเร็วและง่ายดายโดยไม่ต้องเริ่มต้นใหม่
ผู้ใช้สามารถให้คำแนะนำเกี่ยวกับวิธีการปรับเปลี่ยนหรือเพิ่มประสิทธิภาพบางส่วนของโค้ดโดยใช้แท็ก <ai>...</ai>
ในความคิดเห็นภายในโค้ด
ตัวอย่างเช่น คำแนะนำบอกให้ CodePorting AI engine เปลี่ยนชื่อฟังก์ชัน Python crc_check เป็น verifyCrc โดยใช้ Python to Java converter และ Model1:
# <ai>Rename function crc_check to verifyCrc</ai>
def crc_check(data, div):
...
return crc
ผลลัพธ์จากตัวแปลงคือโค้ด Java ที่มีเมธอด verifyCrc แทนที่ crc_check หรือ crcCheck:
// โค้ดนี้เป็นการแปลจาก Python เป็น Java
public class CrcVerifier {
public static int verifyCrc(byte[] data, byte[] divisor) {
// การดำเนินการตรวจสอบ CRC
int crc = 0; // ตัวแทนสำหรับการคำนวณ CRC
// เพิ่มตรรกะการคำนวณ CRC ที่นี่
return crc;
}
}
นี่คือตัวอย่างอีกวิธีหนึ่งในการทำให้ AI Engine สร้างโค้ดโครงสร้างพื้นฐานโดยใช้ Python to Java converter และ Model1:
# <ai>Rename function crc_check to verifyCrc</ai>
# <ai>Create class SecurityServiceImpl and ISecurityService interface</ai>
def crc_check(data, div):
...
return crc
ผลลัพธ์คือโค้ดที่มี ISecurityService อินเตอร์เฟซที่ถูกนำไปใช้โดย SecurityServiceImpl:
// โค้ดนี้ถูกแปลจาก Python เป็น Java
public interface ISecurityService {
int verifyCrc(byte[] data, byte[] div);
}
public class SecurityServiceImpl implements ISecurityService {
@Override
public int verifyCrc(byte[] data, byte[] div) {
// นำตรรกะการตรวจสอบ CRC มาที่นี่
int crc = 0;
// ...
return crc;
}
}
นี่คือตัวอย่างวิธีการเพิ่มการบันทึกลงในคลาสโดยใช้ Python to Java converter และ Model1:
# <ai>Rename function crc_check to verifyCrc</ai>
# <ai>Create class SecurityServiceImpl and ISecurityService interface with application context dependency in ctor</ai>
# <ai>Add logging dependency to the class</ai>
def crc_check(data, div):
...
# <ai>throw an exception instead of returning result</ai>
return crc
ผลลัพธ์คือมีการฉีด logger ผ่านตัวสร้างของ SecurityServiceImpl:
// โค้ดนี้เป็นการแปลจาก Python เป็น Java โดยมีการดำเนินการบริการความปลอดภัยพร้อมฟังก์ชันการตรวจสอบ CRC
public interface ISecurityService {
// กำหนดวิธีการที่อินเตอร์เฟซนี้จะเปิดเผย
}
public class SecurityServiceImpl implements ISecurityService {
private final Logger logger;
public SecurityServiceImpl(Logger logger) {
this.logger = logger;
}
public void verifyCrc(byte[] data, byte[] div) throws Exception {
// รายละเอียดการดำเนินการที่นี่...
// ขว้างข้อยกเว้นแทนที่จะส่งคืนผลลัพธ์
throw new Exception("การตรวจสอบ CRC ล้มเหลว");
}
}