error correction
This commit is contained in:
+86
-47
@@ -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)}")
|
||||
|
||||
@@ -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'],)
|
||||
@@ -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)
|
||||
Reference in New Issue
Block a user