error correction

This commit is contained in:
Isulion
2024-11-01 02:48:04 +01:00
parent 631f23e15f
commit a2e3701bee
3 changed files with 148 additions and 47 deletions
+86 -47
View File
@@ -1,64 +1,103 @@
import os
import sys
import importlib.util
# Add the current directory to the path
sys.path.append(os.path.dirname(os.path.realpath(__file__)))
current_path = os.path.dirname(os.path.realpath(__file__))
sys.path.append(current_path)
# Initialize empty mappings
NODE_CLASS_MAPPINGS = {}
NODE_DISPLAY_NAME_MAPPINGS = {}
try:
from core.prompt_generator import IsulionPromptGenerator
from core.ollama_generator import OllamaGenerate
# Import core modules
if importlib.util.find_spec("core.prompt_generator") is not None:
from core.prompt_generator import IsulionPromptGenerator
NODE_CLASS_MAPPINGS["IsulionPromptGenerator"] = IsulionPromptGenerator
NODE_DISPLAY_NAME_MAPPINGS["IsulionPromptGenerator"] = "Isulion Prompt Generator ✨"
# Animal nodes
from nodes.animal.animal_selector import IsulionAnimalSelector
from nodes.animal.cute_animal_selector import IsulionCuteAnimalSelector
from nodes.animal.animal_behavior_generator import IsulionAnimalBehaviorGenerator
if importlib.util.find_spec("core.ollama_generator") is not None:
from core.ollama_generator import OllamaGenerate
NODE_CLASS_MAPPINGS["IsulionOllamaGenerate"] = OllamaGenerate
NODE_DISPLAY_NAME_MAPPINGS["IsulionOllamaGenerate"] = "Isulion Ollama Generate 🤖"
# Character nodes
from nodes.character.profession_generator import IsulionProfessionGenerator
from nodes.character.fantasy_race_generator import IsulionFantasyRaceGenerator
from nodes.character.clothing_generator import IsulionClothingGenerator
# Import character nodes
if importlib.util.find_spec("nodes.character.profession_generator") is not None:
from nodes.character.profession_generator import IsulionProfessionGenerator
NODE_CLASS_MAPPINGS["IsulionProfessionGenerator"] = IsulionProfessionGenerator
NODE_DISPLAY_NAME_MAPPINGS["IsulionProfessionGenerator"] = "Isulion Character Profession 👨‍🍳"
# Environment nodes
from nodes.environment.habitat_generator import IsulionHabitatGenerator
from nodes.environment.weather_generator import IsulionWeatherGenerator
from nodes.environment.time_of_day_generator import IsulionTimeOfDayGenerator
if importlib.util.find_spec("nodes.character.fantasy_race_generator") is not None:
from nodes.character.fantasy_race_generator import IsulionFantasyRaceGenerator
NODE_CLASS_MAPPINGS["IsulionFantasyRaceGenerator"] = IsulionFantasyRaceGenerator
NODE_DISPLAY_NAME_MAPPINGS["IsulionFantasyRaceGenerator"] = "Isulion Fantasy Race Generator 🧝‍♂️"
# Scene nodes
from nodes.scene.action_generator import IsulionActionGenerator
from nodes.scene.scene_composition import IsulionSceneComposition
if importlib.util.find_spec("nodes.character.clothing_generator") is not None:
from nodes.character.clothing_generator import IsulionClothingGenerator
NODE_CLASS_MAPPINGS["IsulionClothingGenerator"] = IsulionClothingGenerator
NODE_DISPLAY_NAME_MAPPINGS["IsulionClothingGenerator"] = "Isulion Clothing Style Generator 👔"
# Style nodes
from nodes.style.art_style_generator import IsulionArtStyleGenerator
from nodes.style.emotion_generator import IsulionEmotionGenerator
# Import scene nodes
if importlib.util.find_spec("nodes.scene.action_generator") is not None:
from nodes.scene.action_generator import IsulionActionGenerator
NODE_CLASS_MAPPINGS["IsulionActionGenerator"] = IsulionActionGenerator
NODE_DISPLAY_NAME_MAPPINGS["IsulionActionGenerator"] = "Isulion Action Generator ⚔️"
# Fantasy nodes
from nodes.fantasy.magical_effect_generator import IsulionMagicalEffectGenerator
from nodes.fantasy.mythical_location_generator import IsulionMythicalLocationGenerator
from nodes.fantasy.artifact_generator import IsulionArtifactGenerator
if importlib.util.find_spec("nodes.scene.scene_composition") is not None:
from nodes.scene.scene_composition import IsulionSceneComposition
NODE_CLASS_MAPPINGS["IsulionSceneComposition"] = IsulionSceneComposition
NODE_DISPLAY_NAME_MAPPINGS["IsulionSceneComposition"] = "Isulion Scene Composition 🎬"
# Sci-fi nodes
from nodes.scifi.tech_generator import IsulionTechGenerator
from nodes.scifi.alien_world_generator import IsulionAlienWorldGenerator
from nodes.scifi.spacecraft_generator import IsulionSpacecraftGenerator
# Import fantasy nodes
if importlib.util.find_spec("nodes.fantasy.magical_effect_generator") is not None:
from nodes.fantasy.magical_effect_generator import IsulionMagicalEffectGenerator
NODE_CLASS_MAPPINGS["IsulionMagicalEffectGenerator"] = IsulionMagicalEffectGenerator
NODE_DISPLAY_NAME_MAPPINGS["IsulionMagicalEffectGenerator"] = "Isulion Magical Effect Generator ✨"
# Enhancement nodes
from nodes.enhancement.style_mixer import IsulionStyleMixer
from nodes.enhancement.prompt_enhancer import IsulionPromptEnhancer
from nodes.enhancement.negative_prompt_generator import IsulionNegativePromptGenerator
if importlib.util.find_spec("nodes.fantasy.mythical_location_generator") is not None:
from nodes.fantasy.mythical_location_generator import IsulionMythicalLocationGenerator
NODE_CLASS_MAPPINGS["IsulionMythicalLocationGenerator"] = IsulionMythicalLocationGenerator
NODE_DISPLAY_NAME_MAPPINGS["IsulionMythicalLocationGenerator"] = "Isulion Mythical Location Generator 🏰"
if importlib.util.find_spec("nodes.fantasy.artifact_generator") is not None:
from nodes.fantasy.artifact_generator import IsulionArtifactGenerator
NODE_CLASS_MAPPINGS["IsulionArtifactGenerator"] = IsulionArtifactGenerator
NODE_DISPLAY_NAME_MAPPINGS["IsulionArtifactGenerator"] = "Isulion Artifact Generator 📿"
# Import sci-fi nodes
if importlib.util.find_spec("nodes.scifi.tech_generator") is not None:
from nodes.scifi.tech_generator import IsulionTechGenerator
NODE_CLASS_MAPPINGS["IsulionTechGenerator"] = IsulionTechGenerator
NODE_DISPLAY_NAME_MAPPINGS["IsulionTechGenerator"] = "Isulion Tech Generator 🤖"
if importlib.util.find_spec("nodes.scifi.alien_world_generator") is not None:
from nodes.scifi.alien_world_generator import IsulionAlienWorldGenerator
NODE_CLASS_MAPPINGS["IsulionAlienWorldGenerator"] = IsulionAlienWorldGenerator
NODE_DISPLAY_NAME_MAPPINGS["IsulionAlienWorldGenerator"] = "Isulion Alien World Generator 🪐"
if importlib.util.find_spec("nodes.scifi.spacecraft_generator") is not None:
from nodes.scifi.spacecraft_generator import IsulionSpacecraftGenerator
NODE_CLASS_MAPPINGS["IsulionSpacecraftGenerator"] = IsulionSpacecraftGenerator
NODE_DISPLAY_NAME_MAPPINGS["IsulionSpacecraftGenerator"] = "Isulion Spacecraft Designer 🚀"
# Import enhancement nodes
if importlib.util.find_spec("nodes.enhancement.style_mixer") is not None:
from nodes.enhancement.style_mixer import IsulionStyleMixer
NODE_CLASS_MAPPINGS["IsulionStyleMixer"] = IsulionStyleMixer
NODE_DISPLAY_NAME_MAPPINGS["IsulionStyleMixer"] = "Isulion Style Mixer 🎨"
if importlib.util.find_spec("nodes.enhancement.prompt_enhancer") is not None:
from nodes.enhancement.prompt_enhancer import IsulionPromptEnhancer
NODE_CLASS_MAPPINGS["IsulionPromptEnhancer"] = IsulionPromptEnhancer
NODE_DISPLAY_NAME_MAPPINGS["IsulionPromptEnhancer"] = "Isulion Prompt Enhancer 📝"
if importlib.util.find_spec("nodes.enhancement.negative_prompt_generator") is not None:
from nodes.enhancement.negative_prompt_generator import IsulionNegativePromptGenerator
NODE_CLASS_MAPPINGS["IsulionNegativePromptGenerator"] = IsulionNegativePromptGenerator
NODE_DISPLAY_NAME_MAPPINGS["IsulionNegativePromptGenerator"] = "Isulion Negative Prompt Generator ⛔"
except ImportError as e:
print(f"Error importing Isulion nodes: {str(e)}")
# Node mappings
NODE_CLASS_MAPPINGS = {
"IsulionPromptGenerator": IsulionPromptGenerator,
"IsulionOllamaGenerate": OllamaGenerate,
# ... rest of the mappings ...
}
# Display name mappings
NODE_DISPLAY_NAME_MAPPINGS = {
"IsulionPromptGenerator": "Isulion Prompt Generator ✨",
"IsulionOllamaGenerate": "Isulion Ollama Generate 🤖",
# ... rest of the mappings ...
}
except Exception as e:
print(f"Error initializing Isulion nodes: {str(e)}")
+35
View File
@@ -0,0 +1,35 @@
from ollama import Client
class OllamaGenerate:
def __init__(self):
pass
@classmethod
def INPUT_TYPES(cls):
return {
"required": {
"prompt": ("STRING", {
"multiline": True,
"default": "What is Art?"
}),
"url": ("STRING", {
"multiline": False,
"default": "http://127.0.0.1:11434"
}),
"model": ((), {}),
},
}
RETURN_TYPES = ("STRING",)
RETURN_NAMES = ("response",)
FUNCTION = "ollama_generate"
CATEGORY = "Isulion/Core"
def ollama_generate(self, prompt, url, model):
client = Client(host=url)
response = client.generate(
model=model,
prompt=prompt,
keep_alive="0m"
)
return (response['response'],)
+27
View File
@@ -0,0 +1,27 @@
import random
class IsulionPromptGenerator:
@classmethod
def INPUT_TYPES(s):
return {
"required": {
"prompt": ("STRING", {"default": "", "multiline": True}),
},
"optional": {
"seed": ("INT", {"default": 0, "min": 0, "max": 0xffffffffffffffff}),
}
}
RETURN_TYPES = ("STRING", "INT",)
RETURN_NAMES = ("prompt", "seed",)
FUNCTION = "generate"
CATEGORY = "Isulion/Core"
def generate(self, prompt, seed=0):
if seed is not None and seed > 0:
random.seed(seed)
else:
seed = random.randint(0, 0xffffffffffffffff)
random.seed(seed)
return (prompt, seed)