Outline Loop does not work for H2 tags that do not have H3s under them. SCM seems to skip over them and does not generate a section for “H2 only” subtopics.
Not all articles have H2s with H3s underneath them. In fact, some articles might not have H3s at all. When AI’s create outlines, they don’t always include H3s either under every single H2.
Most articles vary with having H2s and H3s where H3s are optional.
then you are hurting your SEO very badly as google prioritizes H2 keywords over H3s. Besides, most AIs will not create outlines this way. Normally its a variation of both, but not always.
I was wondering why there were missing paragraphs. Can this be fixed?
Can you fix SCM logic?? … so that SCM doesn’t skip H2s that don’t have H3s. The default shouldn’t be that it breaks or it skips.
I understand that %ai_outline% is just input for the LOOP. However, it has a big effect on what comes OUT of the outline LOOP.
What I don’t understand is how to control and filter what comes out of the loop. Unfortunately, there is only 1 shot at output from the loop. Within the Macro Box, I can test the AI output and if it fails to meet the quality of what I need, I can send it back to AI to fix it in the next Macro. After a few “macro filters”, the output is near perfect. However, once I’m in the loop, whatever comes out from the AI is in the final article … unless I link the whole article to another article creator task. But I can’t fix or build it at the LOOP “ITEM” level.
For example, the subheading in the loop often gets repeated sometimes once, twice or even 3 times before writing commences, even if I ask the AI not to repeat it. And it looks terrible, and needs to be manually edited every single time. If I had a way to set macros within the loop mechanism prior to output, I could make SCM test and filter properly prior to output same way I do in the filter box.
SEE:
Perhaps you can give me an example of just how to create simple H2s in an outline loop without H3s? When using your example and creating an H2 with main keyword and listing all subtopics as H3s … I get H3s in the output instead of H2s. And maybe you can help figure out how to get SCM to stop repeating the same subheading 2-3 times. (see above)
After your update, I still could not get the H2 tags to complete any sections if there were no H3s underneath them. However, the H3s did not print unless I actually put them in there.
Could you ever make it possible that advanced users set AI macros inside the AI Prompt window for the reasons I pointed out in my previous Oct 26 comment??
This way we could apply macro filters WITHIN the outline loop itself. Currently, there is no way to do this.
let’s give this some in-depth thought. Maybe we can put our heads together to make thus ultimately flexible/powerful like we did with the webhook idea. Being able to run AI filters makes all the difference in getting high-quality article outputs. I’ve been doing alot of testing.
Yes agreed, will require a new tag or maybe some other method.
Given any h2/h3 outline…
<h2>Tokyo</h2>
<h3>Food</h3>
<h3>Hotels</h3>
We generate a list of h2/h3 that we want to generate a prompt for
Tokyo
Tokyo Food
Tokyo Hotels
For items 1 - 4, we can bring in the initial article keyword as support
eg tokyo holiday ideas
Tokyo + Tokyo holiday ideas
Tokyo Food
Tokyo Hotels
As I understand, what you want is the ability to chain prompts together right?
Maybe allow h3_section_xxx and keep it in order so prompts can chain downwards.
The only problem is you can’t have just a H2 with/without content in it. Has to be all or nothing. But maybe thats not a bad thing?
But the Outline tag will then produce this.
<h2>Tokyo</h2>
[write something about tokyo + article keyword]
<h3>Food</h3>
[write something about tokyo - food]
[rewrite %h3_section%]
[rewrite again %h3_section%]
<h3>Hotels</h3>
[write something about tokyo - hotels]
[rewrite %h3_section%]
[rewrite again %h3_section%]
Technically we are doing recursion which is just a [prompt [inside prompt]] but nesting [prompts] like that seems a confusing and terrible idea, which is why I don’t allow it inside the ai prompt area and I force it inside the user macro area.
Okay, we’re talking about 2 different topics now … so let’s break it down.
Allowing H2s to generate sections that do not have H3s.
Finding a way nest AI prompts inside the Outline Loop.
STARTING WITH #1 …
Is it possible in your codebase, to allow H2 sections to generate that do not have an H3? As I previously stated, not every article will have H3s for every H2 … and nor should they. The best solution I can think of to this is if you can allow H2s to generate sections that do not have H3s.
Currently, in SCM the above outline would generate a section for each item, except for Bird Habits. In your codebase, can you make it so it would include Bird Habits, even though it does not have any H3s underneath?
==========================
IN REGARDS TO #2 (above):
Instead of “nesting prompts” inside the outline loop which would get complex, would it be possible to allow advanced users the freedom to set user macros (either with/without AI prompts) inside the TOP “AI Prompts” Box where the Outline Loop resides? I think this would be the easiest and most flexible/powerful solution. If you need it for your codebase, Maybe within special delimiters like “{{{” and “}}}”
AI Prompts: EXAMPLE
<outline>
<h2>%outline_h2%</h2> <-- would only print when looping H2 Tag
<h3>%outline_h3%</h3> <-- would only print when looping H3 tag if exists
{{{
%writesection% = [Write a section about %outline_h2%, %outline_h3%]
%filter1% = [Summarize %writesection% into 1 paragraph]
%filter2% = [openai alt1|Llama3.1: Bold important words from %filter1%]
%finaldraft = [openai alt1|Phi3.5: Fix Grammar and Humanize %filter2%]
}}}
%finaldraft%
</outline>
If this is possible, it might be the easiest solution and no nesting required. This would allow us to have far more control over the final output of the outline contents.
However instead of extra {{{ }}} I might just enclose it into another <prompts> tag.
Because there is essentially another user macros list embedded in an outline, not sure if the current parser can handle it without some major rework.
The current parser does recursion already in its algo, so it might require some extra bit of work to make sure the prompts are correctly worked out and the right macros are available.
Please see above about H2 sections always being generated.
It might mean we need to 2 seperate prompts one for h2, and one for h2/h3
Can you programmatically look to see if the “NEXT ITEM” is H2 or H3?
If (CURRENT_ITEM = H3), then create current section.
If (CURRENT_ITEM = H2 and NEXT_ITEM = H2), then create current section.
If (CURRENT_ITEM = H2 and NEXT_ITEM = H3), then don't create current section.
Or, BETTER YET …
as you proposed, I think splitting H2 prompts and H3 prompts is an ever BETTER idea …
SOMETHING LIKE …
<outline>
<SCM_H2_EMPTY_PROMPTS> <-- executes when CURRENT_ITEM = H2 Tag AND NEXT ITEM = H2 tag
<h2>%outline_h2%</h2>
%writeH2section% = [Write a section about %outline_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%
</SCM_H2_EMPTY_PROMPTS>
<SCM_H2_FULL_PROMPTS> <-- executes when CURRENT_ITEM = H2 Tag AND NEXT ITEM = H3 tag
<h2>%outline_h2%</h2>
%writeH2intro% = [Write an introduction sentence about %outline_h2%]
%finaldraft% = [openai alt1|Phi3.5: Fix Grammar and Humanize %writeH2intro%]
%finaldraft%
</SCM_H2_FULL_PROMPTS>
<SCM_H3_PROMPTS> <-- would only execute when looping H3 tag, if exists
<h3>%outline_h3%</h3>
%writeH3section% = [Write a section about %outline_h2%, %outline_h3%]
%filter1% = [Summarize %writeH3section% into 1 paragraph]
%filter2% = [openai alt1|Llama3.1: Bold important words from %filter1%]
%finaldraft% = [openai alt1|Phi3.5: Fix Grammar and Humanize %filter2%]
%finaldraft%
</SCM_H3_PROMPTS>
</outline>
This is even better proposal than my previous post … because it gives user full control over what happens in each of the 3 scenarios you discussed.
Notice that < SCM_H2_FULL_PROMPTS > allows us to create an introduction to H2 sections that has H3s underneath. Something you couldn’t offer in the current < “/outline” > setup … but that most human-written articles do have.
Lastly, you can change the <SCM_H2/H3_PROMPTS> tags to whatever you want … they are for illustration purposes. Just be aware that < "PROMPTS" > tag is overused when users create actual AI prompts so use something more unique like <SCM_H3_PROMPTS>