I Forced a Bot To Watch Every TNG and DS9 Episode and Write One of Its Own

You may have seen “I forced a bot to watch” posts where someone claims to have “forced a bot” to read or watch hours of video and written it’s own script. Those weren’t real but in recent history it has become possible to do it for real in a pretty convincing way with OpenAI’s GPT-2 system.

This is an unbroken, unedited sample of GPT-2 ‘fine-tuned’ on all the TNG and DS9 scripts. Note that television scripts have have distinct formatting and style and all of that is copied perfectly by the bot. It even *almost* gets understands page numbers (in the first example – 28, 28, 28A).

UPDATE

Go to this post for better examples. Right now they are all Olive Garden themed… but may do a later post with a straightforward attempt to create realistic episodes.

28   EXT. PLAZA/SURFACE - DAY (OPTICAL)
 
    Data and Worf as before.
 
                    DATA
                (puzzled)
            You left him there? He left him
            there?
 
                    WORF
            Yes. He had been there for
            hours... then decided that I
            was going to kill him.
 
    Data frowns, he can't figure out how to phrase what
    he did...
 
                    DATA
            I do not understand.
 
                    WORF
            You knew?
 
                    DATA
            I was afraid.
 
    They exchange a look... Data thinking quickly, is
    back to the source...
 
                    DATA
                (continuing)
            I could have programmed some
            medical bank monitors to monitor you
            for a pulse response when you
            could enter Klingon memory.
 
                    WORF
            We would have --
 
        STAR TREK: "The House... " - REV. 08/10/94 - ACT FOUR       45.
 
28   CONTINUED:
 
                    DATA
            But I was afraid that it would
            disrupt my memory.
 
                    PICARD
            I'll tell you what I have to do.
 
    They look at him and then Picard EXITS. Data sits in
    command.
 
                                           CUT TO:
 
28A  INT. WORF'S QUARTERS
 
    The room is DARK and distant. Worf is struggling to
    regain his senses as Picard ENTERS.
 
                    WORF
            Captain... everything I saw is
            gone... everything.
 
    Worf regards him for a moment... then he starts to fight
    it off... he stops in surprise... he doesn't know how
    all this is going to impact his relationship with
    him... he's uncertain what to do... he glances at the
    wall panel and frowns, surprised at the way he sees
    Worf... he glances around the room and tries to
    find a way to fight it off-kilter... it's pretty
    night... Worf hits the wall panel and it OFF.
 
                    WORF
            I was... heading somewhere.
 
                    PICARD
            Worf... what's the matter?
 
    Worf decides to break for a moment... he EXITS.

That was one the first scenes I generated that impressed me, though it cheats a bit with by being mysterious enough that it’s hard to rate how coherent it is. But you could almost see as one of the more moody and experimental character-focused episodes in Season 7 TNG. Earlier networks could copy the formatting of a TV script but they totally fell apart when you tried to actually understand the content. Even which characters were present in a scene did not stay consistent from line to line. GPT-2 handles this amazingly keeping track of not just characters but subject of conversation in a scene.

Here are some more samples chosen mostly for the humor:

                   DAX
            I think we're lucky this was 
            just a bad batch of 
            equipment.

                    KIRA
            I'm glad you think that.

                    DAX
            I'm glad we're lucky.

                    KIRA
            Okay.  I'm going to let you use 
            the Bajoran storage bin to backup 
            your data on this trip.

    And with that, Kira heads off down the Corridor.  We 
    HOLD on a thoughtful Dax.

19   INT. OPS

    Kira and Dax EXIT the turbolift, followed by Sisko, who 
    goes to the Transporter Room in frustration.

             DEEP SPACE: "The Wire" - 03/01/94 - ACT ONE            12.

19   CONTINUED:

                    KIRA
            It's not working.

                    DAX
            I'm having trouble retuning the 
            transceiver.  The adaptors 
            won't work.

                    KIRA
            Maybe they should replace us by 
            rentals.

                    DAX
            With what?

                    KIRA
            With your arms.

                    DAX
            With your hands.

                    KIRA
            Your arms.

                    DAX
            You're lifting your arms.

                    KIRA
            My arms.

                    DAX
                (the hurtiest)
            Your arms.  They're my hands.

    Kira takes a beat, looks down at her arms for a moment.

                    KIRA
            They're your hands.
                (a beat)
            You know what I see when I get 
            this...

                    DAX
                (laughing and crying)
            Kira, you never told anyone about 
            your arms.

             DEEP SPACE: "The Wire" - 03/01/94 - ACT ONE            13.

19   CONTINUED: (2)

                    KIRA
            When you get to the wormhole, you 
            should see them grow into shape-
            shifters.  And you'd be right... 
            because their arms are like that... 
            closer than you can get.  They 
            grip off your arm.  Bad dreams.

                    DAX

            I thought you weren't going to talk 
            about me.

                    KIRA
            I told myself I was not.  But when 
            the time comes... I want to figure 
            out what we're doing and what we 
            are.  I always figure it out.

    Dax looks at her own hands.  Kira's too fast for her 
    good measure.

                    KIRA
            I'm holding all the cards.  I'm 
            playing them all.  I'm a prisoner 
            in here.  I can't be happier.

                    DAX
            You seem like you've got a lot.

                    KIRA
            You have me all.

    Kira takes one last look at her hands.  Kira can't help 
    her enthusiasm.  Her hand.  Kira takes another step toward the 
    desk.

                    KIRA
            You're not going to hurt me.

                    DAX
            You're not.  And that's a 
            good thing.

This is from a later batch where I stripped out some of the very repetitive content in the scripts before training — mostly headers and footers that repeat the exact same information every page. Another sample that was weirdly hands and arms themed:

42   INT. ENGINEERING

    Geordi and Data at their respective consoles.

                    GEORDI
            We're ready when you are, Data.

                    DATA
            I will prepare enough data for your
            desire, Commander.

                    GEORDI
            Good. Data, what was the vessel
            in which the shuttle was
            launched?

                    DATA
            The vessel was slightly more
            complex than the starship I
            estimate, sir. It chose a
            specific set of coordinates to
            target the specific
            nodes on the Enterprise-D.

                    GEORDI
            And it didn't work. That's
            your fault, Data.

                    DATA
            I fault is very fault, sir.
            I should have realized that.

                    GEORDI
            If you had, the Enterprise-C
            could have taken out a few more
            nodes...

                    DATA
            I do not believe we could have
             survived the attempt on the
            shuttle, sir.

       STAR TREK: "The Loss" - REV. 10/10/90 - ACT FOUR       51.

42   CONTINUED:

                    GEORDI
            I know Data, it would have been
            difficult for you to break into
            hands and legs and grab a few
            nodes... I've never run into a
            shuttle in my life that didn't
            get that lucky.

    Geordi looks down at his hands and arms, frowning.

                    GEORDI
            What are you so angry about?

                    DATA
            My heart... and possibly my entire
            psychology.

                    GEORDI
            That's not good.

                    DATA
            I am angry that Starfleet has
            let you down, Commander.

                    GEORDI
            I know... but I was relieved
            that no one tried to destroy
            my shuttle.
INT. DATA'S QUARTERS

    Data, still in his Starfleet uniform, is sitting at a desk
    working at the computer. The door CHIMES.

                    DATA
            Enter.

    The door OPENS and Geordi ENTERS.

                    GEORDI
            Data, what are you doing here?

                    DATA
                (stands)
            This is my quarters.

    He looks at the desk for a beat, then EXITS.

                    DATA
                (continuing)
            You are here to examine my
            computer.

                    GEORDI
            Computer, is there anything I can
            do about your...
            computer?

                    DATA
            Computer, are you aware of what I
            have just said?

                    GEORDI
                (nods)
            In case you're wondering... I've
            told you something before...

                    DATA
            I have never spoken to my computer
            before.

                    GEORDI
            That can't possibly be the case...

    Data shakes his head.

                    DATA
            I have been trying, but I
            have been unable.

                    GEORDI
            Why?

                    DATA
            I have been trying for over
            three, four nights.

                    GEORDI
            It must be a pretty long night.

                    DATA
            As long as it is not.

                    GEORDI
            And what does it feel like?

                    DATA
            I have been experiencing a
            sustained, transient, and
            unsteady increase in the
            emotional neurotransmitter-like
            activity in my cerebral cortex.
            The same as if I were completely
            offered a cup of tea, or a
            coffee, or an air horn.

                    GEORDI
            That sounds like someone who
            has been through a lot.

    Data nods.

I experimented with mixing other TV show scripts, the complete set of Frasier in this case. GPT-2 learns very quickly never to mix characters and language from the shows — too well, I wish it would mix them! But I swear the samples trained with some Frasier feel more like a sitcom:

ANGLE ON MAIN VIEWER (OPTICAL)

ANGLE ON MAIN VIEWER (OPTICAL)

    Riker's face...

                    RIKER
            Captain, I am detecting a Class-M
            planet with high radiation
            unaffected by the sun.

                    PICARD
            Which planet did you detect?

                    RIKER
            Class-M.
                (beat)
            I'm sure it looked like a Class-
            M planet...
                (beat)
            What is it?

                    PICARD
            A small planet with low surface
            radiation.

                    RIKER
                (laughs)
            Not class-M.

Here’s another one that feels more like a sitcom, in particular, the repeated dialog lines are something I see a lot in the post-Frasier samples.

======== SAMPLE 15 ========
                    KIRA
                (to Dax, explaining)
            Dax, we were just talking about you.  
            I realize you're upset about
            me, but I've always looked
            good in a tuxedo.
 
                    DAX
            I don't look good in a tuxedo.  
            I've always looked good in a
            clutch, Benjamin.  And I'm glad to
            say, I haven't seen you since I left
            the homeworld.
 
                    KIRA
                (smiles)
            I know you're upset, but I've
            always looked good in a chiffo
            uniform.
 
                    DAX
            And I'm glad to see you've never worn
            it anymore.
 
                    KIRA
            I've never looked good in a chiffo
            uniform.
 
                    DAX
            Well, I've seen you look good in
            it all... when you're wearing
            anyone else's tux.
 
                    KIRA
                (smiles)
            I never look good in a chiffo
            uniform.
 
                    DAX
                (smiles)
            I'm glad you said you were going to
            be happy at the Bajoran wedding.
 
                    KIRA
                (smiles)
            I'm glad you said that.
 
    Dax smiles and they walk off.
 
                    DAX
                (re: the wedding)
            I suppose I'll have to mention it
            to someone.
 
                    KIRA
            I'm not planning to.
 
                    DAX
            Who's next?
 
                    KIRA
            My husband.
                (a beat)
            I guess he'll be staying with us
            this year.
 
                    DAX
            He'll probably be staying with us
            this year.
 
                    KIRA
            I know.  I just got here last
            night.
 
                    DAX
            I mean it's just a question of...
            who?
 
                    KIRA
                (beat)
            I'm still not sure.  I've got a
            surprise planned for the next few
            weeks.  Besides, it sounds like
            somebody's going to need a place to
            keep me warm.
 
                    DAX
            I'm sure they will.
 
                    KIRA
            I'm sure they will.
 
                    DAX
            Now what about you... are you sure
            you don't want to stay with me for
            a while?
 
                    KIRA
                (re: the wedding)
            I have a job to do... I'm a
            pretty gal...
 
                    DAX
                (reacts)
            I hear you're married...
 
                    KIRA
            That's right.
 
                    DAX
            And what about Jake?
 
                    KIRA
            He's leaving Starfleet.
 
                    DAX
            A few weeks ago he was sent back
            to the Institute.
 
                    KIRA
                (reacts)
            He's gone?
 
                    DAX
            He's been living on the station
            all his life...
 
                    KIRA
                (beat)
   
 
======== SAMPLE 16 ========

This sample is as long as you can get right now the limit on the output is about 1000 words in the tiny version of GPT-2 that OpenAI let’s us play with. It would still be possible to create an entire script by taking the output from one sample and using it a ‘prompt’ to generate the next sample, over and over until you have a complete script. Since the scripts do clear structure like page and act numbers it should eventually get to ACT 5 or stick an ending on there. Maybe a project for the future.

Update 1

Olive Garden Star Trek Mashup

Update 2

Link to some complete Star Trek scripts (where I keep generating until it literally says THE END on a line).

Leave a Reply

Proudly powered by WordPress | Theme: Baskerville 2 by Anders Noren.

Up ↑