import requests import math as matha from g4f.Provider import ( Bard) import g4f import os token=os.environ.get("TOKEN") import google.generativeai as genai genai.configure( api_key=token ) model = genai.GenerativeModel( model_name='gemini-pro' ) model_vision = genai.GenerativeModel('gemini-pro-vision') from g4f import Provider, models from langchain.llms.base import LLM from langchain_g4f import G4FLLM g4f.debug.logging = True # Enable logging g4f.check_version = False # Disable automatic version checking #print(g4f.version) # Check version print(g4f.Provider.Ails.params) def res(input_text): llm: LLM = G4FLLM( model=models.gpt_35_turbo, ) input_texxt ="Tu es un assistant intelligent.ton but est d'assiter au mieux que tu peux." + input_text print("Question:", input_text) print() print() re = llm(input_texxt) print(re) return re def infer(im): im.save("converted.png") url = "https://ajax.thehive.ai/api/demo/classify?endpoint=text_recognition" files = { "image": ("converted.png", open("converted.png", "rb"), "image/png"), "model_type": (None, "detection"), "media_type": (None, "photo"), } headers = {"referer": "https://thehive.ai/"} ress = requests.post(url, headers=headers, files=files) text = "" blocks = [] for output in ress.json()["response"]["output"]: text += output["block_text"] for poly in output["bounding_poly"]: blocks.append( { "text": "".join([c["class"] for c in poly["classes"]]), "rect": poly["dimensions"], } ) return text # app 2 def gpt(prompt): if not prompt: return "Veuillez saisir une question." #answer = res(prompt) print(prompt) response = model.generate_content(prompt) print(response.text) return response.text def gpt_francais(french_prompt,choix,autheur): if not french_prompt: return "Veuillez saisir un thème ." if choix == "discuter": d_prompt = """Je veux faire mon travail de français de niveau lycé sous la forme d'un travail argumentatif. La question du travail est la suivante: "{french_prompt}". tu devras etayer ce thème. jai besoin dune introduction(avec une problématique et l'annonce du plan), de 3 arguments(avec explication et example et illustration) et une phrase de transition pour refuter le sujet """ te_fi = "" answer = res(d_prompt) te_fi += answer +"\n\n" de = """Je veux faire mon travail de français de niveau lycé sous la forme d'un travail argumentatif . La question du travail est la suivante: "{french_prompt}". tu devras refuter ce thème. jai juste besoin, de 3 arguments(avec explication et example et illustration) et d'une conclusion avec une ouverture(donné sous forme de phrase interogative ) """ answer = res(de) te_fi += answer return te_fi else: fi_prompt = f"""Je veux faire mon travail de français de niveau lycé sous la forme d'un travail argumentatif. La question du travail est la suivante: "{french_prompt}". tu devras {choix} ce thème. jai besoin dune introduction(avec une problématique et l'annonce du plan), de 3 arguments(avec explication et example et illustration) et d'une conclusion avec une ouverture(donné sous forme de phrase interogative ) je veux que tu utilise le style décriture de :{autheur} """ answer = res(fi_prompt) print(answer) return answer def philo_cc(cc_prompt): if not cc_prompt: return "Mani rentre le sujet ! " else: #print(cc_prompt) ge = f""" Je veux que tu me fasse mon travail de philo de niveau lycée en respectant scrupulesement le texte suivant. Je veux que ce soit tres detaille. Voici le plan à respecter. Voici le sujet du devoir . : << {cc_prompt} >>. Faite le travail en respectant les consignes Tu commencera par une introduction dans laquelle tu devra : 1- amorce par constat d'ordre général uniquement + reprise de la citation + reformulation de la citation + connecteur logique d'opposition + problématique. La première question est une interrogation sur la citation tandis que la deuxième questions est une interrogations sur la discussion. Et ensuite un développement dans laquelle tu devra dans la première 1 ère partie (explication + transition) faire ça : 1- clarification de la pensé 2- corroboration de la pensée Et ensuite une phrase de Transition avant d'aborder la deuxième partie sans laquelle tu devra faire ca: Thèse + Antithèse. Argument de la thèse + explication de l'argument + exemple + explication de l'exemple un commentaire Argument de l'anti thèse + explication de l'argument + exemple + explication de l'exemple un commentaire Et tu fini avec la conclusion Conclusion. - Bilan : partie explicative + commentaire - réponse à la question Perspective ( facultative) """ answer = res(ge) return answer def gpt_philo(phi_prompt,autheur): if not phi_prompt: return "Veuillez saisir un sujet." haha = f""" Je veux que tu me traite mon travail de philosophie de niveau lycé sous la forme d'une dissertation. La question du travail est la suivante: "{phi_prompt}". en te basant sur le plan suiavnt : INTRODUCTION: - Amorcer le sujet avec moins de deux phrase -Poser le problème - Formulée la problématique autour de deux questions essentielles: - Question-thèse -Question-antithèse: DEVELOPPEMENT Première Partie: Formuler la thèse initiale je veux trois arguments avec le plan suivant(Argument + Explication de l'argument + Illustration (soit avec un exemple de la vie courante soit avec une citation philosophique). Deuxième Partie: Formuler l'antithèse je veux trois arguments t avec le plan suivant(Argument + Explication de l'argument + Illustration (soit avec un exemple de la vie courante soit avec une citation philosophique). Je veux que tu utilise le même style d'écriture que {autheur} CONCLUSION 1. Bilan de la réflexion: -Résumer les grandes parties de la réflexion 2. Prise de position""" answer = res(haha) print(answer) return answer def gpt_hist(hist_prompt,p_1,p_2,p_3): if not gpt_hist: return "Veuillez saisir un thème ." histt_prompt = f"""Je veux que tu me traite mon travail d'histoire de niveau lycé sous la forme d'une dissertation . La question du travail est la suivante: "{hist_prompt}". les different points a detailler sont :{p_1},{p_2}, {p_3}. en te basant sur le plan suivant : INTRODUCTION: - approche par definition du sujet, par constat ou rappel historique( du general au particulier/cas particulier au general ) - problematique/probleme du sujet - annonce du plan DEVELOPPEMENT pour chaque point,je voudrais trois arguments(+explication+exemple). il faudra une phrase chapeau au debut et une phrase de transition a la fin de chaque point. CONCLUSION 1. Bilan de la réflexion. 2. question douverture du sujet. """ answer = res(histt_prompt) print(answer) return answer def calcul(math, francais, physique, svt, philo, eps, thea, hist, anglais): math = math * 5 francais = francais * 3 physique = physique * 4 svt = svt * 3 philo = philo * 2 eps = eps * 2 thea = thea * 3 anglais = anglais * 2 hist = hist * 3 conduite = 14 * 1 total = ( math + francais + physique + svt + philo + eps + thea + hist + anglais + conduite ) r = total / 28 return matha.trunc(r * 100) / 100 def mariam_web(pro): if not pro: return "Veuillez saisir une question." t_pro = " agis en tant q'ia appele mariam et creer par youssouf. ton role est uniquement d'assister. reponds a cette question: " + pro #response = g4f.ChatCompletion.create(model=g4f.models.default,messages=[{"role": "user", "content":t_pro}],provider=Bard,cookies={"__Secure-1PSID":"dQg91CxO8uBxZRm-6QpOx-8nik1XlC9TzWoIfOpsOlcNAYgeZSG6NJ-2A3y3dmp_hRzGrA.", "__Secure-1PSIDCC": "ACA-OxPnUrZhljKXHrtQcTO2xpYdxfaM9N0oLe34ghl6Su3BHjrZs6TK35gWLxgPMngVENiK9Q"},auth=True) #bard = bd(token=token) #response = bard.get_answer(t_pro)['content'] print(" web::",pro) return "Non disponible pour l'instant." def mariam_chimi(chi,im): prompt_chi = " tu es un expert en chimie, tu as 20 d'expreriance dans le domaine. reponds a cette question: " + chi if not im : answer = res(prompt_chi) return answer elif not chi: return "aucune instruction donner..." else: with open(im.name, 'rb') as f: image_data = f.read() response = model.generate_content([chi, image_data], stream=True) e = response.resolve() print("ewe::",e) return e #fin