LocalFilesystemMemory เป็นเลเยอร์เหนือ GPTSimpleVectorIndex ของ Llama Index ซึ่งจะสรุปรายละเอียดการจัดการดัชนีที่บันทึกไว้ในดิสก์ โดยจะถือว่า / สร้างโครงสร้างไดเร็กทอรีสำหรับจัดเก็บดัชนีและมีอินเทอร์เฟซที่เรียบง่ายสำหรับการจัดการดัชนีเหล่านั้น
ตัวอย่างการใช้ไฟล์ Wikipedia บางไฟล์ที่คุณพบได้ใน repo นี้:
from llama_index import SimpleDirectoryReader
from gpt_memory import LocalFilesystemMemory
phil = SimpleDirectoryReader ( "gpt_memory/examples/phil" )
animals = SimpleDirectoryReader ( "gpt_memory/examples/animals" )
phil_docs = phil . load_data ()
animal_docs = animals . load_data ()
memory = LocalFilesystemMemory ( "example" )
memory . create_index ( "phil" , phil_docs )
memory . create_index ( "animals" , animal_docs )
query = "What is a capybara?"
print ( memory . query ( query ))
กลับคืนมา: A capybara is a giant cavy rodent native to South America, which is the largest living rodent and a member of the genus Hydrochoerus. It inhabits savannas and dense forests, lives near bodies of water, and is a highly social species that can be found in groups as large as 100 individuals. The capybara is hunted for its meat and hide and also for grease from its thick fatty skin, but it is not considered a threatened species.
memory.query(prompt)
: จุดเริ่มต้นหลักในการถามคำถามmemory.create_index(name, docs, description=None)
: วิธีหลักในการสร้างดัชนี เอกสารอาจเป็นสตริง รายการสตริง หรือรายการออบเจ็กต์เอกสารของ GPTIndexmemory.update_index(name, docs)
: อัปเดตดัชนีด้วยเอกสารใหม่memory.delete_index(name)
: ลบดัชนีภายใต้ประทุน ฟังก์ชันเหล่านั้นใช้:
memory.get_index(name)
memory.query_index(name, prompt)
memory.find_most_relevant_index(prompt)
ภายใต้ประทุน โครงสร้างไดเร็กทอรีจะเป็นดังนี้:
- index_folder/
- metadata.json
- indexes/
- index_1.json
- index_2.json
- ...
ไฟล์ metadata.json มีข้อมูลต่อไปนี้:
{
"index_count": 2,
"index_descriptions": [
{
"name": "index_1",
"description": "Description of index generated by GPT Index.",
},
{
"name": "index_2",
"description": "Description of index generated by GPT Index.",
},
]
}