web
You’re offline. This is a read only version of the page.
close
Skip to main content

Notifications

Announcements

Community site session details

Community site session details

Session Id :
Power Platform Community / Forums / Power Apps / Power App collection -...
Power Apps
Answered

Power App collection - show in gallery question

(0) ShareShare
ReportReport
Posted on by 42

Hi all,

 

I have a collection called 'colChat' and a button with onSelect calling a custom connector that utilises GPT-3.5-turbo api.

The onSelect code is like this:

 

 

Set(
 varResponse,
 'GPT-35-Turbo-API-Connector'.GPT35TURBO(
 "gpt-3.5-turbo",
 Collect(
 colChat,
 {
 role: "user",
 content: TextInput1.Text
 //content: Concatenate(enfPr, TextInput1.Text)
 }
 )
 )
);

Collect(
 colChat,
 First(varResponse.choices).message
);

 

 

colChat is the data source for a gallery where the user sees his own prompt as well as api's response. I want to concatenate a string called enfPr with the users prompt (which is typed in TextInput1 textbox) but in that case the user also sees the enfPr string in the gallery. Is there anyway this can be avoided? 

 

I could alternatively write the api call like this if it could help:

 

{role: "user", content: enfPr},
{role: "user", content: TextInput1.Text}
 

 

I hope what i wrote is making sense... Thanks a lot in advance.

Categories:
I have the same question (0)
  • Verified answer
    leonsig93 Profile Picture
    229 on at

    Are you just trying to get rid of the enfPr part of your string once you have what you need?

     

    If that's the case, you could try using Split if you have a natural consistent break point between the enfPr and the text from TextInput1.

     

    So it would look something like:

     

    Last(Split(YourConcantenatedValue, "Separator")).Value

     

     

    Split would cut it in half and create a two row table and then you use Last to retrieve the second piece without the enfPr (which would be the first). So you still have the concatenated value created, but just take what you need.

     

    EDIT - Forgot to add .Value at the end there

  • Verified answer
    Ts01 Profile Picture
    42 on at

    Hey there,

     

    Thanks for getting back. What i want is to pass the concatenated string to the api call but only store the TextInput part of it in the collection. I am not sure i understand where to use the split you proposed.

  • Verified answer
    leonsig93 Profile Picture
    229 on at

    You would use the function inside your gallery where you are displaying colChat.

     

    I also think I misunderstood, but if the "enfPr" is static then you would want to use the Mid function instead. If not use the Split like I mentioned before.

     

    So leave your OnSelect as is:

    Set(
     varResponse,
     'GPT-35-Turbo-API-Connector'.GPT35TURBO(
     "gpt-3.5-turbo",
     Collect(
     colChat,
     {
     role: "user",
     content: Concatenate(enfPr, TextInput1.Text)
     }
     )
     )
    );
    
    Collect(
     colChat,
     First(varResponse.choices).message
    );

     

    Then in the gallery that you are displaying colChat, go to whatever control you are using to display the info. In my case I used a Label. I created a field called content like yours and a second one to show only the TextInput. 

     

    leonsig93_1-1682800785216.png

     

    On the Label that I'm displaying the TextInput, I set the Text property to this:

    Mid(ThisItem.Concatenated, 6)

     

    This breaks up the concatenated string you created for the call. The 6 tells it to keep everything after the last 'r' of erfPr. If you do it this way you are still going to store the concatenated value in colChat, but you only show them the TextInput.

     

  • Ts01 Profile Picture
    42 on at

    No, enfPr is a variable not static. You got it right in the first place. Thank you so much.

     

    I am so so sorry but by mistake i clicked "Accept as solution" in my own post... Is there anyway i can undo that?

  • leonsig93 Profile Picture
    229 on at

    I'm not sure if there is a way to unmark something as a solution, but don't worry about it! All that matters is that we got you the answer you were looking for 👍🏼👍🏼

  • Ts01 Profile Picture
    42 on at

    Thank you so much.

  • mark_fleet Profile Picture
    6 on at

    Along the same lines, hoping someone can help.  I am getting an error when trying to use the code below.  Says the number of arguments is wrong, received 2, expecte 0-1.  
    Set(
    varResponse,
    'GPT_Test'.ChatAPI("gpt-4-32k",Collect(colChat,
    {
    role:"user",
    content:TextInput2
    }
    ))
    );
    Reset(TextInput2)

     

    This code is for the OnSelect button that takes the inputted text from TextInput2, calls gpt-4 via api, then i collect the response to display colChat.  GPT_Test is my custom connector which i have tested and works fine.

    Can someone help me?

  • leonsig93 Profile Picture
    229 on at

    First just checking I have this correct:

     

    Set(
     varResponse,
     'GPT_Test'.ChatAPI(
     "gpt-4-32k",
     Collect(
     colChat,
     {
     role:"user",
     content:TextInput2
     }
     )
     )
    );
    Reset(TextInput2)

     

    So a couple things:

    • Add .Text to your line content: TextInput2, otherwise it won't pull whatever was inputted.
      • So it should now be -> content: TextInput2.Text
    • The error message is making me think you don't have enough variables set up in your flow. It usually says that when you are passing too much to the Power Automate flow so double check and make sure you have your flow set up correctly.
      • For example, "gpt-4-32k"  variable #1
      • Your Collect function is variable #2, hence the received 2 part of your message
      • So in your flow you should be asking for two variables from PowerApps

    Check and see if that works, if not definitely grab some screenshots of your flow if you can so we can figure out what's going on.

     

  • mark_fleet Profile Picture
    6 on at

    I am not using a power automate flow but a custom connector in power apps.  Here is the request and response of the connector as an example:

     

    REQUEST

    URLhttps://msmanaged-na.azure-apim.net/apim/gpt-5ftest-5fe5e1fd276b03232e-5f58172779bbf487ab/7f961c9073...

    Method: post

    Header: {
    "Authorization": "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6Ii1LSTNROW5OUjdiUm9meG1lWm9YcWJIWkdldyIsImtpZCI6Ii1LSTNROW5OUjdiUm9meG1lWm9YcWJIWkdldyJ9.eyJhdWQiOiJodHRwczovL2FwaWh1Yi5henVyZS5jb20iLCJpc3MiOiJodHRwczovL3N0cy53aW5kb3dzLm5ldC8wZTE2MDliMC01ZTdmLTQ3MjItODYxMS1jN2YzMDY3Y2ViZGMvIiwiaWF0IjoxNjg2MDYzMDk1LCJuYmYiOjE2ODYwNjMwOTUsImV4cCI6MTY4NjA2ODUxOSwiYWNyIjoiMSIsImFpbyI6IkFUUUF5LzhUQUFBQStzVHVSWXdGZDdUd1k5a3FNOC81MVpIWHhUV05tcHZkQmNrT2twRHZTUnkrQUxHSWlEUXp2WEw5WnRHcGUyamwiLCJhbXIiOlsicHdkIl0sImFwcGlkIjoiN2RmMGExMjUtZDNiZS00Yzk2LWFhNTQtNTkxZjgzZmY1NDFjIiwiYXBwaWRhY3IiOiIyIiwiZmFtaWx5X25hbWUiOiJGbGVldCIsImdpdmVuX25hbWUiOiJNYXJrIiwiaXBhZGRyIjoiMjA4LjEyNy4yNDUuMTYyIiwibmFtZSI6IkZsZWV0IGpyLCBNYXJrIiwib2lkIjoiYjU3NTE1NjEtM2ZkZS00OTdiLTlhZmEtMGUxYTQyOWZlYTkzIiwib25wcmVtX3NpZCI6IlMtMS01LTIxLTg2OTAxNjkxMC0xNjYwNzg5NDAtNjIxNjk2MjE0LTczMzIzOCIsInB1aWQiOiIxMDAzN0ZGRTg2NzUwQzM0IiwicmgiOiIwLkFRY0FzQWtXRG45ZUlrZUdFY2Z6Qm56cjNGODhCZjZTTmhSUHJ2THVOUHdJSEs0SEFCby4iLCJzY3AiOiJ1c2VyX2ltcGVyc29uYXRpb24iLCJzdWIiOiI1NVZTbzRqdG02OTIxd0FRTFFXaU9NUWpJVER4YkxUYUpIX0VwV01sSkJzIiwidGlkIjoiMGUxNjA5YjAtNWU3Zi00NzIyLTg2MTEtYzdmMzA2N2NlYmRjIiwidW5pcXVlX25hbWUiOiJNYXJrLkZsZWV0anJAQk5TRi5jb20iLCJ1cG4iOiJNYXJrLkZsZWV0anJAQk5TRi5jb20iLCJ1dGkiOiI1WkFCRURxaVdFZV9nZURqczdSMEFRIiwidmVyIjoiMS4wIn0.Qy6ArhuyN4E6QYD9r8RVrZsaxiQPlQ1gZg4alpPFpw1rq8oIOF1D2S4vpZFrPB7r5gA3MUGHjCz9q3UIysnep0PYSWOnOhaO1HCWcLwa_Bl-QBhxtghXmMyYHsjp-ONM7rGhsindZpaRHJfNPNq-JPAuC-8wNSwXxrEi672vS0UMndJjYcNGOwuZ45KBTZoR_TXhoZAsNff7Yoj-KVElscNov63OHW1GoJTal6EGFYPX9bbC-o4LpmPZLsOkNdF33OpViDBGzyvg_k2WPzeRUS0Uo7yLnsSCd9jyRrlkZ7uR0TbrfQE_h5sPp-IRi78DHx7SpYtsmg4lhrRpzqx7OA",
    "Content-Type": "application/json",
    "api-key": "(removed for security)"
    }

     

    Body:

    {
    "messages": [
    {
    "role": "user",
    "content": "How are you?"
    }
    ]
    }

    Schema validation:

    Validation succeeded

     

    RESPONSE

    Status: (200)

    Headers:

    {
    "apim-request-id": "2ee9abb3-cbb4-4940-afef-ef0f614c85b0",
    "azureml-model-group": "online",
    "azureml-model-session": "aoai-gpt4-05222023-2",
    "cache-control": "no-cache, must-revalidate",
    "content-length": "398",
    "content-type": "application/json",
    "date": "Tue, 06 Jun 2023 14:57:34 GMT",
    "openai-model": "gpt-4-32k",
    "openai-processing-ms": "3893.9762",
    "strict-transport-security": "max-age=31536000; includeSubDomains; preload",
    "vary": "Origin",
    "x-accel-buffering": "no",
    "x-content-type-options": "nosniff",
    "x-ms-apihub-cached-response": "false",
    "x-ms-apihub-obo": "false",
    "x-ms-client-request-id": "2ee9abb3-cbb4-4940-afef-ef0f614c85b0",
    "x-ms-region": "South Central US",
    "x-request-id": "a7e5ded4-54d7-4eda-a0d6-98e0464341b4"
    }

    Body:

    {
    "id": "chatcmpl-7OSPiRKmIb8ZNz0FId2WgxBIpyBPM",
    "object": "chat.completion",
    "created": 1686063450,
    "model": "gpt-4-32k",
    "choices": [
    {
    "index": 0,
    "finish_reason": "stop",
    "message": {
    "role": "assistant",
    "content": "As an AI, I do not have emotions or feelings, but I am here and ready to assist you with any questions or tasks you have!"
    }
    }
    ],
    "usage": {
    "completion_tokens": 29,
    "prompt_tokens": 11,
    "total_tokens": 40
    }
    }

    Schema validation:

    Validation succeeded

  • leonsig93 Profile Picture
    229 on at

    Ah my mistake.

    Based on the error message, my guess is that it has to do with your Body. You list 'message' and then inside of that have 'role' and 'content'. Any chance you may need to concatenate the fields into a single argument/string called message?

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

Forum hierarchy changes are complete!

In our never-ending quest to improve we are simplifying the forum hierarchy…

Ajay Kumar Gannamaneni – Community Spotlight

We are honored to recognize Ajay Kumar Gannamaneni as our Community Spotlight for December…

Leaderboard > Power Apps

#1
WarrenBelz Profile Picture

WarrenBelz 765 Most Valuable Professional

#2
Michael E. Gernaey Profile Picture

Michael E. Gernaey 343 Super User 2025 Season 2

#3
Power Platform 1919 Profile Picture

Power Platform 1919 272

Last 30 days Overall leaderboard