Cannot get array of objects from Transform to Structured Data node

Hello, I am fairly new to Make. I am trying to transform generation into structured data. I have a response that contains many bible_entry_row objects. And I define the output as Array(objects), however, I ever only get one of the rows and the iterator following the node doesn’t recognize it as an array. Not sure what I am doing wrong as this same set up is working fine in other scenarios.

Hi @olkaid, from the looks of it you DO have only 1 result (1 bundle in the last photo). Can you show a little bit more of the whole scenario ? I don’t understand if it’s the same chatgpt module or different, are you generating an array first and then asking it to structure? It’s weird.

Sure, here is the full scenario. You can ignore the first two as all that does is query the airtable doc to get the past generations to avoid duplicates (right now it’s empty)

So we generate about 3-5 table entries for the quotes in the first chatgpt module and try to transform that in the second module. The first picture above shows how I am defining the structured data. I explicitly set an Array (objects), and we can see from pic #2 that it does indeed generate more than just one.
Any ideas? Thanks for your help

@olkaid, I can’t seem to troubleshoot chatGPT module parameters. I personally don’t think they’re stable and use conventional methods. What if you asked in your prompt to provide this kind of structure :

#start data
title1/title2/title3/title4*
data1/data2/data3/data4*
data1/data2/data3/data4*
#end data

Then use split() function to narrow down to data table, and then split by * to get each row, and split by / to get each element of a row. So instead of 2nd chatgpt module we’ll directly use this input in the iterator :

split(first(split(last(split(text;#start data));#end data));*)

and then in airtable reference these :

data 1 = get(split(iteratorValue;/);1)
data 2 = get(split(iteratorValue;/);2)
data 3 = get(split(iteratorValue;/);3)
data 4 = get(split(iteratorValue;/);4)

This will work, but is less flexible than your initial solution.