Outlines not working without H3s

Right now I’m working on a bulk import for creating content for multiple blogs.
The process currently requires a lot of clicks.

The idea is you click import, have a csv file of keyword, category, blog url and create all content for all your blogs using 1 article creator task.

Then run another task to upload those posts with correctly assigned blog.

Once this is done I will circle back on the outlines :slight_smile:

Great Job on CSV import. Looking forward to outlines! :+1:

1 Like

Checking in … have you been able to make any progress with the outlines? I have a project on hold until this is done.

Yes I have been thinking about it recently on how best to structure it.
Will get some code laid down this month for it.
I’m thinking to extend it so it works h2-h3 and even h4.

Expanding scm outline code.

First allow h2-h4. So an extra level of headings.

Example

Actually its possible with this rewrite that we make it support unlimited headings, ie from h1-h6.

Note that we can skip some h3, and the code should be able to handle it.

SCM needs to parse the outline to create a tree of all items so that we can preserve hierarchy.

Parsed, it looks like this in a tree.

The app is capable of correctly sorting the outline and attaching each element as children.

So here we have a h2 > h3 > h4

Its important we parse it as a tree because we always need to know how far up or down the tree we are to provide the correct h2,h3 and h4 macros.

Once we have the outline parsed into a traversable tree we can use more complex outline macros.

I am playing around with this template structure as the first draft.

We can specify the exact output and ai macro that should be sent on each leaf of that parsed tree.

Right now the important one is for h2_no_children as it allows just a h2 by itself to use a different macro.

Because we have have parsed the outline as a tree it should be easy to read a h2 leaf and if it has no children apply just the h2_no_children prompt.

This is all being tested right now, more details to come.

Currently testing the new ai_outline_prompts.

Also rewriting all the prompts so they produce less errors.

The old outline tag will still work however all current longform templates will be re-written to use the new ai_outline_prompts.

The h2 prompts have also been upgraded to always insert content before the next h3.

You will no longer have h2 > h3 which is blank like this:

image

Instead…

Feature is complete!

To attach content to H2 that doesn’t have any children use.

  <prompt_h2_no_children>
    <h2>%h2%</h2>
    [write an answer about %h2% in language %language%. 
    Use html <p></p> tags. Don't use html attributes. Start with a paragraph.
    {Insert a html <ul><li> bullet list or a <ol><li> numbered list||||}. 
    The topic of the article is %keyword%.]
  </prompt_h2_no_children>

For any other H2, you can use normal prompt h2

  <prompt_h2>
    <h2>%h2%</h2>
    [write a short introductory paragraph about %h2% in language %language%. 
    Use html <p></p> tags. Don't use html attributes. Start with a paragraph. 
    The topic of the article is %keyword%.]
  </prompt_h2>

The new outlines are inside ai_outline_prompts

<ai_outline_prompts>

  <prompt_h2>
    <h2>%h2%</h2>
    [write a short introductory paragraph about %h2% in language %language%. 
    Use html <p></p> tags. Don't use html attributes. Start with a paragraph. 
    The topic of the article is %keyword%.]
  </prompt_h2>
  
  <prompt_h2_no_children>
    <h2>%h2%</h2>
    [write an answer about %h2% in language %language%. 
    Use html <p></p> tags. Don't use html attributes. Start with a paragraph.
    {Insert a html <ul><li> bullet list or a <ol><li> numbered list||||}. 
    The topic of the article is %keyword%.]
  </prompt_h2_no_children>
  
  <prompt_h3_no_children>
    <h3>%h3%</h3>
    [write an answer about %h2%, %h3% in language %language%. 
    Use html <p></p> tags. Don't use html attributes. Start with a paragraph.
    {Insert a html <ul><li> bullet list or a <ol><li> numbered list||||}. 
    The topic of the article is %keyword%.]
  </prompt_h3_no_children>
  
</ai_outline_prompts>

To use these new prompts you must load them from the list.

FYI: Old outlines still work if you have them loaded, but you can re-select these new templates to get more control.

So can we use user macros inside the outline? I don’t see any user macros in your examples…

FOR EXAMPLE:

<prompt_h2>
%writeH2section% = [Write a section about %h2%]
%filter1% = [Summarize %writeH2section% into 1 paragraph]
%filter2% = [openai alt1|Llama3.1: Bold important words from %filter1%]
%finaldraft% = [openai alt1|Phi3.5: Fix Grammar and Humanize %filter2%]

%finaldraft%
</prompt_h2>

Remember, that was the whole point of this feature request … to be able to run Macro filters at the point the outline was being created … to fix AI issues, etc.

See my previous posts in this thread for reference.

Not yet, it was just an improvement to allow h2/h2_no_children and to correctly customize the output so that no h2/h3/hx is missing.

The ability to create and run macros outside of the user macro box and inside outlines will be added in a new feature request.

okay … thank you … just waiting on enabling macros in the outline loop … this is the last thing that’s holding us up.

1 Like

Understood, will look into enabling macro parsing.