Spaces:
Running
Running
import google.generativeai as genai | |
import google.ai.generativelanguage as glm | |
import os | |
genai.configure(api_key='AIzaSyALFCivW9GP25mbxL3W7Fv6u7m2ZHVlC8w') | |
def fileWriter(filename, content): | |
with open(filename, 'w') as f: | |
f.write(content) | |
return filename | |
discription = input('Enter the description of the game: ') | |
model = genai.GenerativeModel(model_name='gemini-1.0-pro') | |
chat = model.start_chat() | |
newPrompt = chat.send_message(discription+' Add a filename too.') | |
fileWriterFunctionCall = { | |
'function_declarations': [ | |
{ | |
'name': 'fileWriter', | |
'description': 'Writes content to a file.', | |
'parameters': { | |
'type_': 'OBJECT', | |
'properties': { | |
'filename': {'type_': 'STRING'}, | |
'content': {'type_': 'STRING'} | |
}, | |
'required': ['filename', 'content'] | |
} | |
} | |
] | |
} | |
model = genai.GenerativeModel(model_name='gemini-1.0-pro', tools=fileWriterFunctionCall) | |
chat = model.start_chat() | |
response = chat.send_message(discription+' Add a filename too.\n\n' + newPrompt.text) | |
fc = response.candidates[0].content.parts[0].function_call | |
assert fc.name == 'fileWriter' | |
filename = fc.args['filename'] | |
content = fc.args['content'] | |
result = fileWriter(filename, content) | |