mirror of
https://github.com/believethehype/nostrdvm.git
synced 2025-11-18 07:56:39 +01:00
better error handling from venvs
This commit is contained in:
@@ -239,7 +239,7 @@ class Bot:
|
||||
client=self.client, config=self.dvm_config)
|
||||
time.sleep(2.0)
|
||||
reply_event = EventBuilder.new_encrypted_direct_msg(self.keys,
|
||||
PublicKey.from_hex(user.npub),
|
||||
PublicKey.from_hex(entry['npub']),
|
||||
content,
|
||||
None).to_event(self.keys)
|
||||
print(status + ": " + content)
|
||||
|
||||
@@ -469,6 +469,7 @@ class DVM:
|
||||
task = get_task(job_event, client=self.client, dvm_config=self.dvm_config)
|
||||
|
||||
for dvm in self.dvm_config.SUPPORTED_DVMS:
|
||||
result = ""
|
||||
try:
|
||||
if task == dvm.TASK:
|
||||
|
||||
@@ -488,13 +489,13 @@ class DVM:
|
||||
|
||||
with open(os.path.abspath('output.txt')) as f:
|
||||
resultall = f.readlines()
|
||||
result = ""
|
||||
for line in resultall:
|
||||
if line != '\n':
|
||||
result += line
|
||||
os.remove(os.path.abspath('output.txt'))
|
||||
if result.startswith("Error:"):
|
||||
raise Exception
|
||||
assert not result.startswith("Error:")
|
||||
print(result)
|
||||
|
||||
else: # Some components might have issues with running code in otuside venv.
|
||||
# We install locally in these cases for now
|
||||
result = dvm.process(request_form)
|
||||
@@ -505,9 +506,8 @@ class DVM:
|
||||
send_job_status_reaction(job_event, "error", content=str(e),
|
||||
dvm_config=self.dvm_config)
|
||||
except Exception as e:
|
||||
print(e)
|
||||
# we could send the exception here to the user, but maybe that's not a good idea after all.
|
||||
send_job_status_reaction(job_event, "error", content="An error occurred",
|
||||
send_job_status_reaction(job_event, "error", content=result,
|
||||
dvm_config=self.dvm_config)
|
||||
# Zapping back the user on error
|
||||
if amount > 0 and self.dvm_config.LNBITS_ADMIN_KEY != "":
|
||||
|
||||
@@ -146,5 +146,4 @@ def process_venv(identifier):
|
||||
DVMTaskInterface.write_output(result, args.output)
|
||||
except Exception as e:
|
||||
DVMTaskInterface.write_output("Error: " + str(e), args.output)
|
||||
raise Exception
|
||||
|
||||
|
||||
@@ -116,9 +116,9 @@ class ImageGenerationDALLE(DVMTaskInterface):
|
||||
return result
|
||||
|
||||
except Exception as e:
|
||||
print("Error in Module")
|
||||
raise Exception(e)
|
||||
|
||||
if str(e).startswith("Error code: 400"):
|
||||
raise Exception('Your request was rejected as a result of OpenAI´s safety system. Your prompt may '
|
||||
'contain text that is not allowed by their safety system.')
|
||||
|
||||
# We build an example here that we can call by either calling this file directly from the main directory,
|
||||
# or by adding it to our playground. You can call the example and adjust it to your needs or redefine it in the
|
||||
|
||||
Reference in New Issue
Block a user