From 55c22f30e13e7b5e080db340ec30d90ef670a40b Mon Sep 17 00:00:00 2001 From: Nick Walton Date: Mon, 18 Nov 2019 17:12:45 -0700 Subject: [PATCH] update --- aidungeon/story/__init__.py | 0 aidungeon/console_play.py => console_play.py | 31 +++++++++++++------ {aidungeon => generator}/__init__.py | 0 .../generator => generator}/gpt2/.gitignore | 0 .../generator => generator}/gpt2/LICENSE | 0 .../generator => generator/gpt2}/__init__.py | 0 .../gpt2/download_model.py | 0 .../gpt2/gpt2_generator.py | 6 ++-- .../gpt2/models/.gitignore | 0 .../gpt2/requirements.txt | 0 .../gpt2 => generator/gpt2/src}/__init__.py | 0 .../gpt2/src/encoder.py | 0 .../generator => generator}/gpt2/src/model.py | 0 .../gpt2/src/sample.py | 2 +- .../generator => generator}/simple/.gitignore | 0 .../gpt2/src => generator/simple}/__init__.py | 0 .../simple/finetune.py | 0 install.sh | 2 +- .../generator/simple => other}/__init__.py | 0 {aidungeon/other => other}/cacher.py | 0 {aidungeon/other => story}/__init__.py | 0 {aidungeon/story => story}/story_data.yaml | 0 {aidungeon/story => story}/story_manager.py | 3 +- {aidungeon/story => story}/utils.py | 0 24 files changed, 27 insertions(+), 17 deletions(-) delete mode 100644 aidungeon/story/__init__.py rename aidungeon/console_play.py => console_play.py (55%) rename {aidungeon => generator}/__init__.py (100%) rename {aidungeon/generator => generator}/gpt2/.gitignore (100%) rename {aidungeon/generator => generator}/gpt2/LICENSE (100%) rename {aidungeon/generator => generator/gpt2}/__init__.py (100%) rename {aidungeon/generator => generator}/gpt2/download_model.py (100%) rename {aidungeon/generator => generator}/gpt2/gpt2_generator.py (95%) rename {aidungeon/generator => generator}/gpt2/models/.gitignore (100%) rename {aidungeon/generator => generator}/gpt2/requirements.txt (100%) rename {aidungeon/generator/gpt2 => generator/gpt2/src}/__init__.py (100%) rename {aidungeon/generator => generator}/gpt2/src/encoder.py (100%) rename {aidungeon/generator => generator}/gpt2/src/model.py (100%) rename {aidungeon/generator => generator}/gpt2/src/sample.py (98%) rename {aidungeon/generator => generator}/simple/.gitignore (100%) rename {aidungeon/generator/gpt2/src => generator/simple}/__init__.py (100%) rename {aidungeon/generator => generator}/simple/finetune.py (100%) rename {aidungeon/generator/simple => other}/__init__.py (100%) rename {aidungeon/other => other}/cacher.py (100%) rename {aidungeon/other => story}/__init__.py (100%) rename {aidungeon/story => story}/story_data.yaml (100%) rename {aidungeon/story => story}/story_manager.py (99%) rename {aidungeon/story => story}/utils.py (100%) diff --git a/aidungeon/story/__init__.py b/aidungeon/story/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/aidungeon/console_play.py b/console_play.py similarity index 55% rename from aidungeon/console_play.py rename to console_play.py index 0438bab..89520f1 100644 --- a/aidungeon/console_play.py +++ b/console_play.py @@ -1,11 +1,22 @@ -from aidungeon.story.story_manager import * -from aidungeon.generator.gpt2.gpt2_generator import * -from aidungeon.story.story_manager import * - +from story.story_manager import * +from generator.gpt2.gpt2_generator import * CRED_FILE = "./AI-Adventure-2bb65e3a4e2f.json" +def console_print(text, width=75): + last_newline = 0 + i = 0 + while i < len(text): + if text[i] == "\n": + last_newline = 0 + elif last_newline > width: + text = text[:i] + "\n" + text[i:] + else: + last_newline += 1 + i += 1 + + def play_unconstrained(): generator = GPT2Generator() prompt = get_story_start("knight") @@ -14,8 +25,8 @@ def play_unconstrained(): story_manager.start_new_story(prompt, context=context) print("\n") - print(context) - print(str(story_manager.story)) + console_print(context) + console_print(str(story_manager.story)) while True: action = input("> ") @@ -26,14 +37,14 @@ def play_unconstrained(): action = "\n> " + action + "\n" action = remove_profanity(action) - #action = first_to_second_person(action) - + # action = first_to_second_person(action) + result = story_manager.act(action) if player_died(result): - print(result + "\nGAME OVER") + console_print(result + "\nGAME OVER") break else: - print(result) + console_print(result) if __name__ == '__main__': diff --git a/aidungeon/__init__.py b/generator/__init__.py similarity index 100% rename from aidungeon/__init__.py rename to generator/__init__.py diff --git a/aidungeon/generator/gpt2/.gitignore b/generator/gpt2/.gitignore similarity index 100% rename from aidungeon/generator/gpt2/.gitignore rename to generator/gpt2/.gitignore diff --git a/aidungeon/generator/gpt2/LICENSE b/generator/gpt2/LICENSE similarity index 100% rename from aidungeon/generator/gpt2/LICENSE rename to generator/gpt2/LICENSE diff --git a/aidungeon/generator/__init__.py b/generator/gpt2/__init__.py similarity index 100% rename from aidungeon/generator/__init__.py rename to generator/gpt2/__init__.py diff --git a/aidungeon/generator/gpt2/download_model.py b/generator/gpt2/download_model.py similarity index 100% rename from aidungeon/generator/gpt2/download_model.py rename to generator/gpt2/download_model.py diff --git a/aidungeon/generator/gpt2/gpt2_generator.py b/generator/gpt2/gpt2_generator.py similarity index 95% rename from aidungeon/generator/gpt2/gpt2_generator.py rename to generator/gpt2/gpt2_generator.py index 291b158..aa2c20b 100644 --- a/aidungeon/generator/gpt2/gpt2_generator.py +++ b/generator/gpt2/gpt2_generator.py @@ -1,9 +1,9 @@ -from aidungeon.story.utils import * +from story.utils import * import warnings warnings.filterwarnings("ignore") import os import tensorflow as tf -from aidungeon.generator.gpt2.src import sample, encoder, model +from generator.gpt2.src import sample, encoder, model import json import numpy as np @@ -18,7 +18,7 @@ class GPT2Generator: self.top_p = top_p self.model_name = "model_v1" - self.model_dir = "aidungeon/generator/gpt2/models" + self.model_dir = "generator/gpt2/models" self.checkpoint_path = os.path.join(self.model_dir, self.model_name) models_dir = os.path.expanduser(os.path.expandvars(self.model_dir)) diff --git a/aidungeon/generator/gpt2/models/.gitignore b/generator/gpt2/models/.gitignore similarity index 100% rename from aidungeon/generator/gpt2/models/.gitignore rename to generator/gpt2/models/.gitignore diff --git a/aidungeon/generator/gpt2/requirements.txt b/generator/gpt2/requirements.txt similarity index 100% rename from aidungeon/generator/gpt2/requirements.txt rename to generator/gpt2/requirements.txt diff --git a/aidungeon/generator/gpt2/__init__.py b/generator/gpt2/src/__init__.py similarity index 100% rename from aidungeon/generator/gpt2/__init__.py rename to generator/gpt2/src/__init__.py diff --git a/aidungeon/generator/gpt2/src/encoder.py b/generator/gpt2/src/encoder.py similarity index 100% rename from aidungeon/generator/gpt2/src/encoder.py rename to generator/gpt2/src/encoder.py diff --git a/aidungeon/generator/gpt2/src/model.py b/generator/gpt2/src/model.py similarity index 100% rename from aidungeon/generator/gpt2/src/model.py rename to generator/gpt2/src/model.py diff --git a/aidungeon/generator/gpt2/src/sample.py b/generator/gpt2/src/sample.py similarity index 98% rename from aidungeon/generator/gpt2/src/sample.py rename to generator/gpt2/src/sample.py index 893d301..5879d11 100644 --- a/aidungeon/generator/gpt2/src/sample.py +++ b/generator/gpt2/src/sample.py @@ -1,6 +1,6 @@ import tensorflow as tf -from aidungeon.generator.gpt2.src import model +from generator.gpt2.src import model def penalize_used(logits, output): diff --git a/aidungeon/generator/simple/.gitignore b/generator/simple/.gitignore similarity index 100% rename from aidungeon/generator/simple/.gitignore rename to generator/simple/.gitignore diff --git a/aidungeon/generator/gpt2/src/__init__.py b/generator/simple/__init__.py similarity index 100% rename from aidungeon/generator/gpt2/src/__init__.py rename to generator/simple/__init__.py diff --git a/aidungeon/generator/simple/finetune.py b/generator/simple/finetune.py similarity index 100% rename from aidungeon/generator/simple/finetune.py rename to generator/simple/finetune.py diff --git a/install.sh b/install.sh index d074848..db2b7c4 100755 --- a/install.sh +++ b/install.sh @@ -5,6 +5,6 @@ if [ -d "$MODEL_DIRECTORY" ]; then else echo "Installing AIDungeon" - gsutil -m cp -r gs://aidungeon2model/model_v1 ./aidungeon/generator/gpt2/models + gsutil -m cp -r gs://aidungeon2model/model_v1 ./generator/gpt2/models pip install -r requirements.txt fi diff --git a/aidungeon/generator/simple/__init__.py b/other/__init__.py similarity index 100% rename from aidungeon/generator/simple/__init__.py rename to other/__init__.py diff --git a/aidungeon/other/cacher.py b/other/cacher.py similarity index 100% rename from aidungeon/other/cacher.py rename to other/cacher.py diff --git a/aidungeon/other/__init__.py b/story/__init__.py similarity index 100% rename from aidungeon/other/__init__.py rename to story/__init__.py diff --git a/aidungeon/story/story_data.yaml b/story/story_data.yaml similarity index 100% rename from aidungeon/story/story_data.yaml rename to story/story_data.yaml diff --git a/aidungeon/story/story_manager.py b/story/story_manager.py similarity index 99% rename from aidungeon/story/story_manager.py rename to story/story_manager.py index 51dedd4..d2f829a 100644 --- a/aidungeon/story/story_manager.py +++ b/story/story_manager.py @@ -1,5 +1,4 @@ -from aidungeon.story.utils import * -from aidungeon.other.cacher import * +from story.utils import * import json diff --git a/aidungeon/story/utils.py b/story/utils.py similarity index 100% rename from aidungeon/story/utils.py rename to story/utils.py