PDF2Anki / FuncOrg.py
HaileyIsNotAPig's picture
fix vectordb
6baca14
Raw
History Blame Contribute Delete
1.48 kB
import google.generativeai as genai
import time
from Contents import Topics
from Chunks import Questions
from Knowledge import Ask
from AnkiExport import Convert
contents = []
topics = []
count = 0
# gemini出題
def geminiQA(pdf_path: str, model: None) :
global contents, topics
if not contents:
contents, topics = Topics(pdf_path, model)
csv_name = Questions(pdf_path, contents, topics, model)
return csv_name
# 使用者出題
def userQA(pdf_path: str, question:str, model: None, api: str):
global contents, topics
if not contents:
contents, topics = Topics(pdf_path, model)
csv_name = Ask(pdf_path, question, contents, api)
return csv_name
# 整合題目
def pdf2anki(question: None, api: str, pdf: None, apkg_name: str) -> str:
global count
pdf_path = pdf.name
model = input_API(api)
if count == 0:
csv_name = geminiQA(pdf_path, model)
count += 1
if question != "":
csv_name = userQA(pdf_path, question, model, api)
apkg_path = Convert(csv_name, apkg_name)
return apkg_path
def input_API(api):
genai.configure(api_key=api)
model = genai.GenerativeModel('gemini-pro')
while(True):
try:
model.generate_content(
"test",
)
print("Set Gemini API sucessfully!!")
return model
except:
print("There seems to be something wrong with your Gemini API.")
time.sleep(5)