>>> นำเข้า pytgpt.phind เป็น phind>>> bot = phind.PHIND()>>> bot.chat('hello there')'Hello! วันนี้ฉันจะช่วยคุณได้อย่างไร?
จาก pytgpt.imager นำเข้า Imagerimg = Imager()generated_images = img.generate(prompt="Cyberpunk", amount=3, stream=True)img.save(generated_images)
โปรเจ็กต์นี้ช่วยให้สามารถโต้ตอบกับ ผู้ให้บริการ LLM ฟรีกว่า 45 ราย ได้อย่างราบรื่น โดยไม่ต้องใช้คีย์ API และสร้างรูปภาพด้วย
ชื่อ python-tgpt ได้รับแรงบันดาลใจจากโปรเจ็กต์หลัก tgpt ซึ่งดำเนินการบน Golang ด้วยการปรับใช้ Python นี้ ผู้ใช้สามารถมีส่วนร่วมกับ LLM ฟรีจำนวนหนึ่งได้อย่างง่ายดาย ส่งเสริมประสบการณ์การโต้ตอบของ AI ที่ราบรื่นยิ่งขึ้น
- แพ็คเกจหลาม
FastAPI สำหรับการรวมเว็บ
⌨️ อินเทอร์เฟซบรรทัดคำสั่ง
- ผู้ให้บริการ LLM หลายราย - 45+
- การตอบสนองแบบสตรีมและไม่ใช่สตรีม
พร้อมใช้งาน (ไม่ต้องใช้คีย์ API)
การสร้างและดำเนินการสคริปต์ที่ปรับแต่งได้
- การสนับสนุนออฟไลน์สำหรับโมเดลภาษาขนาดใหญ่
- ความสามารถในการสร้างภาพ
- ความสามารถในการแปลงข้อความเป็นเสียง
⛓️ คำขอที่ถูกล่ามโซ่ผ่านพร็อกซี
️ ประสบการณ์การสนทนาที่ได้รับการปรับปรุง
- ความสามารถในการบันทึกข้อความแจ้งและการตอบกลับ (การสนทนา)
ความสามารถในการโหลดการสนทนาก่อนหน้า
ผ่านข้อความแจ้งเตือน Awesome-chatgpt ได้อย่างง่ายดาย
- บอทโทรเลข - อินเตอร์เฟส
การสนับสนุนแบบอะซิงโครนัสสำหรับการดำเนินการหลักทั้งหมด
สิ่งเหล่านี้เป็นเพียงโฮสต์ของ LLM ซึ่งรวมถึง:
พินด์
ความฉงนสนเท่ห์
แบล็คบ๊อกไซ
โกบอลได
Ai4chat
gpt4all (ออฟไลน์)
Poe - Poe|Quora (ต้องมีรหัสเซสชัน)
Groq (ต้องใช้คีย์ API)
OpenAI (ต้องใช้คีย์ API)
ผู้ให้บริการมากกว่า 41 รายนำเสนออย่างภาคภูมิใจโดย gpt4free
ในการแสดงรายการผู้ให้บริการที่ทำงานให้รัน:
$ pytgpt gpt4 ทดสอบฟรี -y
หลาม>=3.10
นักพัฒนา:
การติดตั้ง pip -- อัปเกรด python-tgpt
บรรทัดคำสั่ง:
การติดตั้ง pip -- อัปเกรด "python-tgpt [cli]"
การติดตั้งแบบเต็ม:
pip ติดตั้ง -- อัปเกรด "python-tgpt [ทั้งหมด]"
pip install -U "python-tgt[api]"
จะติดตั้งการพึ่งพา REST API
นักพัฒนา:
pip ติดตั้ง -- อัปเกรด "python-tgpt [termux]"
บรรทัดคำสั่ง:
pip ติดตั้ง -- อัปเกรด "python-tgpt [termux-cli]"
การติดตั้งแบบเต็ม:
pip ติดตั้ง -- อัปเกรด "python-tgpt [termux-all]"
pip install -U "python-tgt[termux-api]"
จะติดตั้งการพึ่งพา REST API
แพ็คเกจนี้มีอินเทอร์เฟซบรรทัดคำสั่งที่สะดวกสบาย
บันทึก
phind
เป็น ผู้ให้บริการ เริ่มต้น
สำหรับการตอบกลับอย่างรวดเร็ว:
python -m pytgpt สร้าง "<พร้อมท์ของคุณ>"
สำหรับโหมดโต้ตอบ:
python -m pytgpt แบบโต้ตอบ "<พร้อมท์แจ้งการเริ่มต้น (แม้ว่าจะไม่จำเป็น)>"
ใช้ประโยชน์จาก flag --provider
ตามด้วยชื่อผู้ให้บริการที่คุณเลือก เช่น --provider koboldai
หากต้องการแสดงรายการผู้ให้บริการทั้งหมดที่นำเสนอโดย gpt4free ให้ใช้คำสั่งต่อไปนี้:
pytgpt gpt4free list providers
คุณยังสามารถใช้ pytgpt
แทน python -m pytgpt
ได้
เริ่มต้นจากเวอร์ชัน 0.2.7 การรัน $ pytgpt
โดยไม่มีคำสั่งหรือตัวเลือกอื่นใดจะเข้าสู่โหมด interactive
โดยอัตโนมัติ มิฉะนั้น คุณจะต้องประกาศการกระทำที่ต้องการอย่างชัดเจน เช่น โดยการรัน $ pytgpt generate
สร้างการตอบสนองอย่างรวดเร็ว
จาก pytgpt.phind import PHINDbot = PHIND()resp = bot.chat('<Your prompt>')print(resp)# Output : วันนี้ฉันจะช่วยคุณได้อย่างไร
ได้รับการตอบสนองกลับครบถ้วน
จาก pytgpt.phind นำเข้า PHINDbot = PHIND()resp = bot.chat('<Your prompt>')print(resp)# Output"""{'id': 'chatcmpl-gp6cwu2e5ez3ltoyti4z', 'object': 'chat. complete.chunk', 'สร้างแล้ว': 1731257890, 'model': 'phind-instant-llama-3_1-08-31-2024-checkpoint-1500', 'choices': [{'index': 0, 'delta': {'content': "สวัสดี! ฉันเป็นผู้ช่วย AI ที่สร้างโดย Phind เพื่อช่วยในงานเขียนโปรแกรม วันนี้ฉันจะช่วยคุณได้อย่างไร"}, 'finish_reason': ไม่มี}]}"""
เพียงเพิ่มพารามิเตอร์ stream
ด้วยค่า true
ข้อความที่สร้างขึ้นเท่านั้น
จาก pytgpt.phind import PHINDbot = PHIND()response = bot.chat('hello', stream=True)for chunk in response:print(chunk)# output"""HelloHello!Hello! HowHello! How canHello! IHello จะทำได้อย่างไร ! ฉันจะช่วยคุณได้อย่างไรสวัสดี!
การตอบสนองทั้งหมด
จาก pytgpt.phind import PHINDbot = PHIND()resp = bot.ask('<Your Prompt>', stream=True)for value in resp:print(value)# Output"""{'id': 'chatcmpl-icz6a4m1nbbclw9hhgol ', 'วัตถุ': 'chat.completion.chunk', 'สร้าง': 1731258032, 'model': 'phind-instant-llama-3_1-08-31-2024-checkpoint-1500', 'choices': [{'index': 0, 'delta': {'content': 'สวัสดี' }, 'finish_reason': ไม่มี}]}{'id': 'chatcmpl-icz6a4m1nbbclw9hhgol', 'object': 'chat.completion.chunk', 'สร้าง': 1731258032, 'model': 'phind-instant-llama-3_1-08-31-2024-checkpoint-1500', 'ทางเลือก ': [{'ดัชนี': 0, 'เดลต้า': {'เนื้อหา': "สวัสดี! ฉันเป็น AI"}, 'finish_reason': None}]}{'id': 'chatcmpl-icz6a4m1nbbclw9hhgol', 'object': 'chat.completion.chunk', 'created': 1731258032, 'model': 'phind-instant-llama-3_1-08-31-2024-checkpoint-1500', 'choices': [{'index': 0, 'delta': {'content': "สวัสดี! ฉันเป็นผู้ช่วย AI ที่สร้างโดย Phind เพื่อช่วยในเรื่องการเขียนโค้ดและงานด้านเทคนิค วิธี"}, 'finish_reason': ไม่มี}]}{'id': 'chatcmpl-icz6a4m1nbbclw9hhgol', 'object': 'chat.completion.chunk', 'created': 1731258032, 'model': 'phind-instant-llama-3_1-08-31-2024-checkpoint-1500', 'choices': [{'index': 0, 'delta': {'content': "สวัสดี! ฉันเป็นผู้ช่วย AI ที่สร้างโดย Phind เพื่อช่วยในเรื่องการเขียนโค้ดและงานด้านเทคนิค วันนี้ฉันจะช่วยคุณได้อย่างไร"}, 'finish_reason': ไม่มี}]}"""
import pytgpt.auto นำเข้า autobot = auto.AUTO()print(bot.chat("<Your-prompt>"))
นำเข้า pytgpt.openai เป็น openaibot = openai.OPENAI("<OPENAI-API-KEY>")print(bot.chat("<Your-prompt>"))
นำเข้า pytgpt.koboldai เป็น koboldaibot = koboldai.KOBOLDAI()print(bot.chat("<Your-prompt>"))
นำเข้า pytgpt.phind เป็น phindbot = phind.PHIND()print(bot.chat("<Your-prompt>"))
นำเข้า pytgpt.perplexity เป็น perplexitybot = perplexity.PERPLEXITY()print(bot.chat("<Your-prompt>"))
นำเข้า pytgpt.blackboxai เป็น blackboxaibot = blackboxai.BLACKBOXAI()print(bot.chat("<Your-prompt>"))
นำเข้า pytgpt.gpt4free เป็น gpt4freebot = gpt4free.GPT4FREE(provider="Koala")print(bot.chat("<Your-prompt>"))
เวอร์ชัน 0.7.0 แนะนำการใช้งานแบบอะซิงโครนัสกับผู้ให้บริการเกือบทั้งหมด ยกเว้นผู้ให้บริการบางราย เช่น perplexity ซึ่งอาศัยไลบรารีอื่นที่ขาดการใช้งานดังกล่าว
เพื่อให้ง่ายขึ้น คุณเพียงแค่ต้องใส่คำนำหน้า Async
ให้เป็นชื่อคลาสซิงโครนัสทั่วไป ตัวอย่างเช่น PHIND
จะถูกเข้าถึงเป็น AsyncPHIND
:
นำเข้า asynciofrom pytgpt.phind นำเข้า AsyncPHINDasync def main():async_ask = await AsyncPHIND(False).ask("คำวิจารณ์ว่า python นั้นเจ๋ง",stream=True)async สำหรับ Streaming_response ใน async_ask:print(streaming_response)asyncio.run(main () -
นำเข้า asynciofrom pytgpt.phind นำเข้า AsyncPHINDasync def main():async_ask = await AsyncPHIND(False).chat("วิจารณ์ว่า python นั้นเจ๋ง",stream=True)async สำหรับ Streaming_text ใน async_ask:print(streaming_text)asyncio.run(main () -
หากต้องการได้รับการตอบสนองที่ปรับแต่งให้เหมาะสมยิ่งขึ้น ให้ลองใช้เครื่องมือเพิ่มประสิทธิภาพโดยใช้พารามิเตอร์ optimizer
ค่าของมันสามารถตั้งค่าเป็น code
หรือ system_command
จาก pytgpt.phind นำเข้า PHINDbot = PHIND()resp = bot.ask('<Your Prompt>', Optimizer='code')print(resp)
สำคัญ
เริ่มต้นจากเวอร์ชัน 0.1.0 โหมดการโต้ตอบเริ่มต้นคือการสนทนา โหมดนี้จะช่วยปรับปรุงประสบการณ์การโต้ตอบ โดยให้การควบคุมประวัติการแชทได้ดียิ่งขึ้น โดยการเชื่อมโยงข้อความแจ้งและการตอบกลับก่อนหน้านี้ จะปรับแต่งการสนทนาเพื่อประสบการณ์ที่น่าดึงดูดยิ่งขึ้น
คุณยังคงสามารถปิดการใช้งานโหมดได้:
บอท = koboldai.KOBOLDAI(is_conversation=False)
ใช้แฟล็ก --disable-conversation
ในคอนโซลเพื่อให้ได้ฟังก์ชันการทำงานเดียวกัน
สิ่งนี้เกิดขึ้นได้โดย pollinations.ai
$ pytgpt imager "<prompt>"# เช่น pytgpt imager "Coding bot"
จาก pytgpt.imager นำเข้า Imagerimg = Imager()generated_img = img.generate('Coding bot') # [bytes]img.save(generated_img)
จาก pytgpt.imager import Imagerimg = Imager()img_generator = img.generate('Coding bot', amount=3, stream=True)img.save(img_generator)# RAM เป็นมิตร
จาก pytgpt.imager นำเข้า Prodiaimg = Prodia()img_generator = img.generate('Coding bot', amount=3, stream=True)img.save(img_generator)
ฟังก์ชัน generate
ได้รับการปรับปรุงโดยเริ่มตั้งแต่ เวอร์ชัน 0.3.0 เพื่อให้สามารถใช้งานตัวเลือก --with-copied
ได้อย่างครอบคลุม และรองรับการยอมรับอินพุตแบบไพพ์ การปรับปรุงนี้แนะนำตัวยึดตำแหน่ง ซึ่งนำเสนอค่าไดนามิกเพื่อการโต้ตอบที่หลากหลายมากขึ้น
ตัวยึดตำแหน่ง | เป็นตัวแทน |
---|---|
{{stream}} | อินพุตแบบไปป์ |
{{copied}} | ข้อความที่คัดลอกล่าสุด |
คุณสมบัตินี้มีประโยชน์อย่างยิ่งสำหรับการดำเนินการที่ซับซ้อน ตัวอย่างเช่น:
$ git ส่วนต่าง | pytgpt สร้าง "นี่คือไฟล์ diff: {{stream}} สร้างข้อความคอมมิตที่กระชับ จากนั้นสอดคล้องกับประวัติข้อความคอมมิตของฉัน: {{copied}}" --ใหม่
ในภาพประกอบนี้
{{stream}}
หมายถึงผลลัพธ์ของการดำเนินการ$ git diff
ในขณะที่{{copied}}
หมายถึงเนื้อหาที่คัดลอกมาจากเอาต์พุตของคำสั่ง$ git log
ข้อความแจ้งเหล่านี้ได้รับการออกแบบมาเพื่อชี้นำพฤติกรรมหรือการตอบสนองของ AI ไปในทิศทางใดทิศทางหนึ่ง โดยกระตุ้นให้แสดงลักษณะหรือพฤติกรรมบางอย่าง คำว่า "awesome-prompt" ไม่ใช่คำที่เป็นทางการใน AI หรือการเรียนรู้ของเครื่อง แต่เป็นการสรุปแนวคิดในการสร้าง prompt ที่มีประสิทธิภาพในการบรรลุผลลัพธ์ที่ต้องการ สมมติว่าคุณต้องการให้มันทำงานเหมือนกับ Linux Terminal , PHP Interpreter หรือเพียงแค่ JAIL BREAK
อินสแตนซ์ :
$ pytgpt แบบโต้ตอบ -- สุดยอด "Linux Terminal"# ทำหน้าที่เหมือน Linux Terminal$ pytgpt แบบโต้ตอบ -ap DAN# Jailbreak
บันทึก
ข้อความแจ้งที่ยอดเยี่ยมเป็นทางเลือกแทน --intro
เรียกใช้ $ pytgpt awesome whole
เพื่อแสดงรายการพร้อมท์ที่มีอยู่ ( 200+ ) เรียกใช้ $ pytgpt awesome --help
สำหรับข้อมูลเพิ่มเติม
RawDog เป็นคุณสมบัติชิ้นเอกที่ใช้ประโยชน์จากความสามารถที่หลากหลายของ Python เพื่อสั่งและควบคุมระบบของคุณตามความต้องการของคุณ คุณสามารถทำอะไรก็ได้อย่างแท้จริง เนื่องจากมันสร้างและรันโค้ด Python ซึ่งขับเคลื่อนโดย คำแนะนำของคุณ ! หากต้องการกัด Rawdog เพียงต่อท้าย flag --rawdog
shortform -rd
ในโหมด สร้าง/โต้ตอบ นี่เป็นการแนะนำคุณลักษณะที่ไม่เคยพบเห็นมาก่อนใน ระบบนิเวศของ tgpt ขอบคุณ AbanteAI/rawdog สำหรับแนวคิดนี้
สิ่งนี้มีประโยชน์ในบางด้าน ตัวอย่างเช่น:
$ pytgpt create -n -q "แสดงภาพการใช้งานดิสก์โดยใช้แผนภูมิวงกลม" --rawdog
จะปรากฏหน้าต่างแสดงการใช้งานดิสก์ระบบดังภาพด้านล่าง
Pytgpt v0.4.6 แนะนำวิธีทั่วไปในการรับตัวแปรจากสภาพแวดล้อม เพื่อให้บรรลุเป้าหมายดังกล่าว ให้ตั้งค่าตัวแปรสภาพแวดล้อมในระบบปฏิบัติการหรือสคริปต์ของคุณด้วยคำนำหน้า PYTGPT_
ตามด้วยชื่อตัวเลือกที่เป็นตัวพิมพ์ใหญ่ โดยแทนที่ขีดกลางด้วยขีดล่าง
ตัวอย่างเช่น สำหรับตัวเลือก --provider
คุณจะต้องตั้งค่าตัวแปรสภาพแวดล้อม PYTGPT_PROVIDER
เพื่อให้เป็นค่าเริ่มต้นสำหรับตัวเลือกนั้น กรณีเดียวกันนี้ใช้กับแฟล็กบูลีน เช่น --rawdog
ซึ่งตัวแปรสภาพแวดล้อมจะเป็น PYTGPT_RAWDOG
โดยมีค่าเป็น true/false
สุดท้าย --awesome-prompt
จะใช้ตัวแปรสภาพแวดล้อม PYTGPT_AWESOME_PROMPT
บันทึก
นี่ ไม่ได้ จำกัดอยู่เพียงคำสั่งใดๆ
ตัวแปรสภาพแวดล้อมสามารถแทนที่ได้ด้วยการประกาศค่าใหม่อย่างชัดเจน
เคล็ดลับ
บันทึกตัวแปรในไฟล์ .env
ในไดเร็กทอรีปัจจุบันของคุณ หรือส่งออกตัวแปรในไฟล์ ~/.zshrc
ของคุณ หากต้องการโหลดการสนทนาก่อนหน้าจากไฟล์ .txt
ให้ใช้แฟล็ก -fp
หรือ --filepath
หากไม่มีการส่งแฟล็ก ระบบจะใช้แฟล็กเริ่มต้น หากต้องการโหลดบริบทจากไฟล์โดยไม่เปลี่ยนแปลงเนื้อหา ให้ใช้แฟล็ก --retain-file
เวอร์ชัน 0.4.6 ยังแนะนำผู้ให้บริการแบบไดนามิกที่เรียกว่า g4fauto
ซึ่งแสดงถึงผู้ให้บริการที่ใช้ g4f ที่ทำงานเร็วที่สุด
เคล็ดลับ
หากต้องการเปิดอินเทอร์เฟซเว็บสำหรับผู้ให้บริการที่ใช้ g4f เพียงเรียกใช้ $ pytgpt gpt4free gui
$ pytgpt api run
จะเริ่ม REST-API เข้าถึงเอกสารและทำซ้ำได้ที่ /docs และ /redoc ตามลำดับ หากต้องการเปิดอินเทอร์เฟซเว็บสำหรับผู้ให้บริการที่ใช้ g4f ให้ดำเนินการคำสั่งต่อไปนี้ในเทอร์มินัลของคุณ:
$ pytgpt gpt4free gui
คำสั่งนี้เริ่มต้นอินเทอร์เฟซผู้ใช้บนเว็บสำหรับการโต้ตอบกับผู้ให้บริการที่ใช้ g4f
หากต้องการเริ่ม REST-API:
$ pytgpt api ทำงาน
คำสั่งนี้เริ่มต้นเซิร์ฟเวอร์ RESTful API ซึ่งช่วยให้คุณสามารถโต้ตอบกับบริการโดยทางโปรแกรมได้
สำหรับการเข้าถึงเอกสารและทำซ้ำ ให้นำทางไปยังเส้นทางต่อไปนี้ในเว็บเบราว์เซอร์ของคุณ:
เอกสารประกอบ: /docs
ReDoc: /redoc
หากต้องการเปิดใช้งานการสังเคราะห์เสียงตอบสนอง ตรวจสอบให้แน่ใจว่าคุณได้ติดตั้งเครื่องเล่น VLC บนระบบของคุณ หรือหากคุณเป็นผู้ใช้ Termux ให้ติดตั้งแพ็คเกจ Termux:API
หากต้องการเปิดใช้งานการสังเคราะห์คำพูด ให้ใช้แฟล็ก --talk-to-me
หรือใช้อักษรย่อ -ttm
เมื่อรันคำสั่งของคุณ ตัวอย่างเช่น:
$ pytgpt สร้าง "สร้างเรื่องราวยักษ์" --talk-to-me
หรือ
$ pytgpt โต้ตอบ -ttm
แฟล็กนี้จะสั่งให้ระบบแปลงเสียงการตอบสนองของ ai แล้วเล่น เพื่อปรับปรุงประสบการณ์ผู้ใช้โดยการให้ผลตอบรับด้วยเสียง
เวอร์ชัน 0.6.4 แนะนำผู้ให้บริการไดนามิกอื่น auto
ซึ่งแสดงถึงผู้ให้บริการที่ทำงาน โดยรวม ซึ่งช่วยลดภาระงานในการตรวจสอบผู้ให้บริการที่ทำงานด้วยตนเองทุกครั้งที่คุณเริ่มการทำงานของ pytgpt อย่างไรก็ตาม auto
ในฐานะผู้ให้บริการทำงานได้ไม่ดีนักกับการตอบกลับแบบสตรีมมิ่ง ดังนั้นคุณอาจต้องเสียสละประสิทธิภาพเพื่อความน่าเชื่อถือ
หากคุณไม่พอใจกับอินเทอร์เฟซที่มีอยู่ pytgpt-bot อาจเป็นโซลูชันที่คุณกำลังมองหา บอทนี้ได้รับการออกแบบมาเพื่อปรับปรุงประสบการณ์ของคุณโดยนำเสนอฟังก์ชันการทำงานที่หลากหลาย ไม่ว่าคุณจะสนใจมีส่วนร่วมในการสนทนาที่ขับเคลื่อนด้วย AI การสร้างภาพและเสียงจากข้อความ หรือสำรวจคุณสมบัติที่เป็นนวัตกรรมอื่นๆ pytgpt-bot ก็พร้อมที่จะตอบสนองความต้องการของคุณ
บอทได้รับการดูแลเป็นโปรเจ็กต์แยกต่างหาก ดังนั้นคุณเพียงแค่ต้องดำเนินการคำสั่งเพื่อติดตั้ง:
$ pip install pytgpt-bot
การใช้งาน: pytgpt bot run <bot-api-token>
หรือคุณสามารถโต้ตอบกับอันที่ทำงานอยู่ตอนนี้ในชื่อ @pytgpt-bot
สำหรับข้อมูลการใช้งานเพิ่มเติมให้รัน $ pytgpt --help
Usage: pytgpt [OPTIONS] COMMAND [ARGS]... Options: -v, --version Show the version and exit. -h, --help Show this message and exit. Commands: api FastAPI control endpoint awesome Perform CRUD operations on awesome-prompts bot Telegram bot interface control generate Generate a quick response with AI gpt4free Discover gpt4free models, providers etc imager Generate images with pollinations.ai interactive Chat with AI interactively (Default) utils Utility endpoint for pytgpt
เลขที่ | เอพีไอ | สถานะ |
---|---|---|
1. | เมื่อเรนเดอร์ | cron-งาน |
tgpt
gpt4free