สร้างและปรับใช้แอปพลิเคชันเจนเนอเรทีฟ (LLM และดิฟฟิวเซอร์) (แชทบอทและ API) ได้ในไม่กี่วินาที
input()
และ print()
หรือเขียนไฟล์ลงดิสก์มุ่งเน้นไปที่ AI (RAG, การปรับแต่งอย่างละเอียด, การจัดตำแหน่ง, การฝึกอบรม) และข้ามงานด้านวิศวกรรม (การพัฒนาส่วนหน้า, การรวมแบ็กเอนด์, การปรับใช้, การดำเนินงาน)
สร้างและแชร์แชทบอทในไม่กี่วินาทีดังนี้:
pip install hal9
hal9 create chatbot
hal9 deploy chatbot
โปรดสังเกตว่า deploy
จำเป็นต้องมีตัวแปรสภาพแวดล้อม HAL9_TOKEN
พร้อมด้วยโทเค็น API ที่คุณสามารถหาได้จาก hal9.com/devs คุณสามารถใช้โทเค็นนี้เพื่อปรับใช้จากคอมพิวเตอร์ในเครื่อง โน้ตบุ๊ก หรือดำเนินการอัตโนมัติจาก GitHub
HAL9_TOKEN=H9YOURTOKEN hal9 deploy chatbot --name my_first_chatbot
ง่ายเหมือนที่คุณสร้างแชทบอทตัวแรกของคุณ!
โค้ดภายใน /chatbot/app.py
มีแชทบอท "Hello World" ที่อ่านข้อความแจ้งเตือนของผู้ใช้และสะท้อนผลลัพธ์กลับ:
prompt = input ()
print ( f"Echo: { prompt } " )
เราออกแบบแพ็คเกจนี้โดยคำนึงถึงความเรียบง่าย หน้าที่ของโค้ดคือการอ่านอินพุตและเขียนเอาต์พุต ก็แค่นั้นแหละ อย่างไรก็ตาม คุณสามารถสร้างแชทบอทที่ใช้ LLM สร้างรูปภาพ หรือแม้แต่ใช้เครื่องมือที่เชื่อมต่อกับฐานข้อมูล หรือแม้แต่สร้างเว็บไซต์และเกมได้!
ตามค่าเริ่มต้น hal9 create
ค่าเริ่มต้นให้กับ --template echo
template แต่คุณสามารถเลือกอันอื่นได้ดังนี้:
hal9 create chatbot-openai --template openai
hal9 create chatbot-groq --template groq
เทมเพลตมีโค้ดที่พร้อมใช้งานพร้อมเทคโนโลยีและกรณีการใช้งานเฉพาะ เป็นที่นิยมอย่างมากในการใช้เทมเพลตที่คล้ายกับ ChatGPT ของ OpenAI กับ --template openai
โค้ดที่สร้างขึ้นจะมีลักษณะดังนี้:
import hal9 as h9
from openai import OpenAI
messages = h9 . load ( "messages" , [])
prompt = h9 . input ( messages = messages )
completions = OpenAI (). chat . completions . create ( model = "gpt-4" , messages = messages , stream = True )
h9 . complete ( completions , messages = messages )
h9 . save ( "messages" , messages , hidden = True )
ส่วนเรียนรู้จะอธิบายรายละเอียดวิธีการทำงานของโค้ดนี้ แต่จะให้ภาพรวมโดยย่อ แพ็คเกจ hal9
มีฟังก์ชันตัวช่วยเพื่อลดความซับซ้อนของโค้ด AI ที่สร้างของคุณ คุณสามารถเลือกที่จะไม่ใช้ hal9
เลยและใช้คำสั่ง input()
และ print()
ด้วยตัวเอง หรือแม้แต่ฟ้องร้องเครื่องมืออย่าง langchain
ฟังก์ชัน h9.load()
และ h9.save()
โหลดและบันทึกข้อมูลระหว่างเซสชันแชท แพลตฟอร์มของเราไม่มีสถานะตามค่าเริ่มต้น ฟังก์ชัน h9.input()
เป็นฟังก์ชันห่อหุ้มแบบบางเหนือ input()
ที่จะจัดเก็บอินพุตของผู้ใช้ใน messages
ด้วย จากนั้น h9.complete()
จะเป็นฟังก์ชันตัวช่วยที่ช่วยแยกวิเคราะห์ผลลัพธ์ที่สมบูรณ์และบันทึกผลลัพธ์เป็น messages
แค่นั้นแหละ!
หากต้องการเปลี่ยนแปลงโปรเจ็กต์ของคุณ ให้เปิด chatbot/
ใน IDE ของคุณแล้วแก้ไข chatbot/app.py
จากนั้นคุณสามารถรันโปรเจ็กต์ของคุณได้ดังนี้:
hal9 run chatbot
หากคุณปรับแต่งเทมเพลตของคุณด้วย --template
ตรวจสอบให้แน่ใจว่าได้ตั้งค่าคีย์ที่ถูกต้อง เช่น หากคุณใช้เทมเพลต OpenAI ที่ใช้สำหรับ Linux หรือ macOS:
export OPENAI_KEY=YOUR_OPENAI_KEY.
สำหรับการใช้งาน Windows:
set OPENAI_KEY=YOUR_OPENAI_KEY.
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการรับและใช้คีย์ OpenAI API โปรดดูเอกสารประกอบคีย์ OpenAI API
จากนั้นคุณสามารถเรียกใช้แอปพลิเคชันของคุณภายในเครื่องด้วย:
hal9 run chatbot
คำสั่งนี้เป็นเพียงตัวห่อเพื่อความสะดวกในการรันโค้ดด้วยตัวคุณเองด้วย python app.py
คำสั่งปรับใช้จะเตรียมการปรับใช้แอปที่สร้างของคุณ
ตัวอย่างเช่น คุณสามารถเตรียมการปรับใช้งานเป็นแอปเชิงสร้างสรรค์ (Hal9) เรามีแผนที่จะจัดเตรียมการปรับใช้กับ Docker และชุมชนโอเพ่นซอร์สสามารถขยายสิ่งนี้ให้ดียิ่งขึ้นไปอีก
hal9 deploy chatbot --target hal9
แต่ละคำสั่งได้รับมอบหมายให้เตรียมการใช้งานโฟลเดอร์โปรเจ็กต์ของคุณ ตัวอย่างเช่น --target docker
ควรสร้างไฟล์ Dockerfile
ที่ทำให้โปรเจ็กต์นี้พร้อมที่จะทำงานในคอนเทนเนอร์บนคลาวด์
สำหรับการใช้งานส่วนตัว --target hal9
รองรับระดับฟรีที่ hal9.com
; การสนับสนุนระดับองค์กรยังมีให้ใช้งานด้วย --target hal9 --url hal9.yourcompany.com