<turbo-stream action="append" target="posts_list"><template>    <div class="postbit" id="312962" data-post-id="312962">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="restlessronin" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/restlessronin/120/24826_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  restlessronin
                    <span class="op-star" title="Thread Starter">
                      <img alt="OP" class="op-star-icon" src="/assets/thread-icons/thread-icon-thread-starter-df91e872.png" />
                    </span>
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>I have released v0.5.3 with support for cancel’ing an <a href="https://github.com/restlessronin/openai_ex/issues/69" rel="noopener nofollow ugc">ongoing streaming chat completion request</a>. This seems necessary for any production use of interactive chat.</p>
<p>The streaming api had to be changed so that a task pid for cancellation could be returned. I took the opportunity to also return the response status and headers in addition to the streaming body.</p>
<p>The user guide has been updated to reflect the new API return value. The use of the request cancellation API is shown in detail in the <a href="https://hexdocs.pm/openai_ex/streaming_orderbot.html" rel="noopener nofollow ugc">Streaming Orderbot</a> sample.</p>
<p>The cancellation API has only been tested on OpenAI, not on any proxied models.</p>
<p>Enjoy the new functionality in the New Year <img src="https://forum.elixirforum.com/images/emoji/apple/tada.png?v=15" title=":tada:" class="emoji" alt=":tada:" loading="lazy" width="20" height="20"></p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="312962" data-batch-url="/posts/batch_likers">
                        0
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/openai-ex-openai-api-client-library/55353/72">Post #71</a>
	                </div>
	            </div>
              <div id="likers-container-312962" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="312962"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #71"></div>
  </section>
</div>
    <div class="postbit" id="313285" data-post-id="313285">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="restlessronin" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/restlessronin/120/24826_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  restlessronin
                    <span class="op-star" title="Thread Starter">
                      <img alt="OP" class="op-star-icon" src="/assets/thread-icons/thread-icon-thread-starter-df91e872.png" />
                    </span>
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>I have released v0.5.6. Changes since v0.5.3 are</p>
<ul>
<li>Allow configuration of <a href="https://github.com/restlessronin/openai_ex/issues/48" rel="noopener nofollow ugc">receive timeout</a> (previous fix was wrong)</li>
<li>Allow <a href="https://github.com/restlessronin/openai_ex/issues/76" rel="noopener nofollow ugc">configuration of named Finch instance</a>. This enables custom Finch pools</li>
<li>Updated documentation.</li>
</ul> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="313285" data-batch-url="/posts/batch_likers">
                        1
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/openai-ex-openai-api-client-library/55353/73">Post #72</a>
	                </div>
	            </div>
              <div id="likers-container-313285" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="313285"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #72"></div>
  </section>
</div>
    <div class="postbit" id="313414" data-post-id="313414">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="hubertlepicki" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/hubertlepicki/120/6822_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  hubertlepicki
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>I just tested 0.5.6 and works for me!</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="313414" data-batch-url="/posts/batch_likers">
                        1
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/openai-ex-openai-api-client-library/55353/74">Post #73</a>
	                </div>
	            </div>
              <div id="likers-container-313414" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="313414"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #73"></div>
  </section>
</div>
    <div class="postbit" id="313611" data-post-id="313611">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="restlessronin" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/restlessronin/120/24826_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  restlessronin
                    <span class="op-star" title="Thread Starter">
                      <img alt="OP" class="op-star-icon" src="/assets/thread-icons/thread-icon-thread-starter-df91e872.png" />
                    </span>
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>The library is getting fairly stable, and I’m now looking towards strict SemVer compliance  and an eventual 1.0 release. Before I do that, I would like to add any missing major functionality.</p>
<p>A few things that come to mind are</p>
<ol>
<li>Production use. The original use-case for the library was Livebook, which is an interactive use-case. But there’s no reason why it can’t be used in production (especially after the last 2 updates on finch pooling and request cancellation). If you’re not using it for production because it’s missing something you need (possibly <a href="https://github.com/restlessronin/openai_ex/issues/70" rel="noopener nofollow ugc">this</a>), please let me know.</li>
<li>Full typespecs, including return types. I have not missed this personally, but I’m open to adding these if it’s a usage deal breaker for anyone.</li>
<li>Matching FQN names to those in the official python library (a small nit, but one I’d like to fix).</li>
<li>Partial auto-generation from the OpenAPI spec (would also help with 2 &amp; 3). I would like to head towards a manually tuned, auto generated library, where the tuning would be retained between generations.</li>
<li>Anything else I might have missed.</li>
</ol>
<p>If anyone has any thoughts on any of these, please let me know, either on this thread or a s a github issue.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="313611" data-batch-url="/posts/batch_likers">
                        1
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/openai-ex-openai-api-client-library/55353/75">Post #74</a>
	                </div>
	            </div>
              <div id="likers-container-313611" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="313611"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #74"></div>
  </section>
</div>
    <div class="postbit" id="315096" data-post-id="315096">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="rched" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/rched/120/33391_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  rched
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>Any plans to add support for Microsoft Azure’s OpenAI service?</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="315096" data-batch-url="/posts/batch_likers">
                        2
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/openai-ex-openai-api-client-library/55353/76">Post #75</a>
	                </div>
	            </div>
              <div id="likers-container-315096" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="315096"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #75"></div>
  </section>
</div>
    <div class="postbit" id="315554" data-post-id="315554">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="restlessronin" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/restlessronin/120/24826_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  restlessronin
                    <span class="op-star" title="Thread Starter">
                      <img alt="OP" class="op-star-icon" src="/assets/thread-icons/thread-icon-thread-starter-df91e872.png" />
                    </span>
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p><a class="mention" href="/u/rched" rel="nofollow">@rched</a> I haven’t used the Azure service myself, but my understanding is that the parameters are not identical to the OpenAI version. Correct me if I’m wrong, but I believe that the model name is embedded in the URL path, rather than being passed as a parameter.</p>
<p>If that’s the case, then I don’t currently have plans to support it. That could change if there’s a lot of demand for it. But I suspect that it’s more likely that Azure will start using the OpenAI v1 API instead. Then it should just be a matter of setting the base_url to point to azure instead of OpenAI.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="315554" data-batch-url="/posts/batch_likers">
                        1
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/openai-ex-openai-api-client-library/55353/77">Post #76</a>
	                </div>
	            </div>
              <div id="likers-container-315554" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="315554"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #76"></div>
  </section>
</div>
    <div class="postbit" id="315900" data-post-id="315900">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="rched" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/rched/120/33391_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  rched
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p><a class="mention" href="/u/restlessronin" rel="nofollow">@restlessronin</a> I’ve only recently started working with Azure’s OpenAI service so I am by no means an expert. That said it looks to me that Azure tries to conform to the OpenAI API as much as possible. There are three main differences that I’ve come across so far. These are unlikely to be “fixed” by Azure because they stem from more fundamental differences between the two services. The main differences I’ve found are:</p>
<ol>
<li>On Azure you call the API for a specific deployment. That deployment is for a specific model and has a unique URL. This means the model can’t be set as part of the request payload. This does seem to be solvable using the <code>base_url</code> setting you mentioned.</li>
<li>Authentication is slightly different. Instead of expecting an <code>Authorization</code> header Azure expects an <code>api-key</code> header with the value being just the API key.</li>
<li>Lastly I believe Azure requires the request URL to contain a query parameter specifying the API version you would like to use. Here is an example URL for the chat completions endpoint: <code>https://dummycorp.openai.azure.com/openai/deployments/dummy-gpt-4-deployment/chat/completions?api-version=2023-12-01-preview"</code></li>
</ol>
<p>It looks like it wouldn’t take too much work to support these differences in Openai_ex.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="315900" data-batch-url="/posts/batch_likers">
                        1
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/openai-ex-openai-api-client-library/55353/78">Post #77</a>
	                </div>
	            </div>
              <div id="likers-container-315900" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="315900"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #77"></div>
  </section>
</div>
    <div class="postbit" id="315938" data-post-id="315938">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="restlessronin" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/restlessronin/120/24826_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  restlessronin
                    <span class="op-star" title="Thread Starter">
                      <img alt="OP" class="op-star-icon" src="/assets/thread-icons/thread-icon-thread-starter-df91e872.png" />
                    </span>
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p><a class="mention" href="/u/rched" rel="nofollow">@rched</a> could you please point me at official documentation that clearly specifies the differences you mention, so I have a reference I can use for any potential changes?</p>
<p>Points that I’m considering while making a decision</p>
<ol>
<li>A lot of 3rd party LLM models / model sources now implement the OpenAI chat completions API to provide API access. It would be best to enforce conformity with the actual API instead of making exceptions that create multiple flavors of API.</li>
<li>The long term goal is to track the OpenAI API with automatically generated wrappers from the OpenAPI spec, which then have manual tuning auto-applied. I’d prefer not to have exceptions that have to be separately tracked.</li>
<li>I would be Ok with having some extra API on top of / beside the existing API, rather than modifying the current API to special case Azure. It’s not clear how to achieve that.</li>
</ol> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="315938" data-batch-url="/posts/batch_likers">
                        0
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/openai-ex-openai-api-client-library/55353/79">Post #78</a>
	                </div>
	            </div>
              <div id="likers-container-315938" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="315938"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #78"></div>
  </section>
</div>
    <div class="postbit" id="315961" data-post-id="315961">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="rched" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/rched/120/33391_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  rched
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p><a class="mention" href="/u/restlessronin" rel="nofollow">@restlessronin</a> you can find the completions API documentation here: <a href="https://learn.microsoft.com/en-us/azure/ai-services/openai/reference" class="inline-onebox" rel="noopener nofollow ugc">Azure OpenAI image and audio REST API reference (2024-10-21) - Microsoft Foundry | Microsoft Learn</a>.</p>
<p>As far as I can tell Azure does conform to the OpenAI API, in fact it sounds like they work with OpenAI on developing the API, so I think it should still be possible to use the automatically generated wrappers. Azure also provides their own <a href="https://github.com/Azure/azure-rest-api-specs/blob/main/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2023-09-01-preview/inference.json" rel="noopener nofollow ugc">OpenAPI specs</a> for their full API if that’s helpful.</p>
<p>This <a href="https://github.com/raulchedrese/openai_ex/commit/7f47c177b931536258466befe2b9e83dad6e5260" rel="noopener nofollow ugc">commit</a> shows what was necessary to get a successful response from Azure with Openai_ex. A possible solution might be to add a couple of configurable settings. One for api <code>type</code> that would be <code>openai</code> by default but could be <code>azure</code>. A second for <code>api_version</code>  that would be empty by default but if set would be appended to requests as a query parameter. These changes along with the base url config should be all that’s necessary to add basic support for Azure.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="315961" data-batch-url="/posts/batch_likers">
                        1
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/openai-ex-openai-api-client-library/55353/80">Post #79</a>
	                </div>
	            </div>
              <div id="likers-container-315961" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="315961"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #79"></div>
  </section>
</div>
    <div class="postbit" id="316004" data-post-id="316004">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="restlessronin" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/restlessronin/120/24826_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  restlessronin
                    <span class="op-star" title="Thread Starter">
                      <img alt="OP" class="op-star-icon" src="/assets/thread-icons/thread-icon-thread-starter-df91e872.png" />
                    </span>
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p><a class="mention" href="/u/rched" rel="nofollow">@rched</a></p>
<aside class="quote no-group" data-username="rched" data-post="78" data-topic="55353">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/rched/48/33391_2.png" class="avatar"> rched:</div>
<blockquote>
<p>Authentication is slightly different. Instead of expecting an <code>Authorization</code> header Azure expects an <code>api-key</code> header with the value being just the API key.</p>
</blockquote>
</aside>
<p>It appears that the second authorization method mentioned <a href="https://learn.microsoft.com/en-us/azure/ai-services/openai/reference#authentication" rel="noopener nofollow ugc">here (Microsoft Entra ID)</a>, results in an API call that’s identical to the OpenAI call. You just have to use the Entra Id token in place of your OpenAI api key in <code> OpenaiEx.new(apikey)</code>. You would not have to make any changes in the library code.</p>
<p>The second change in your commit changes the actual URL path. It may be possible to maintain a static mapping of OpenAI URLs to Azure (or other 3rd party) URLs which is applied before the API call. I’m not terribly keen to do this, but will consider it, if it’s possible to keep the existing call signatures undisturbed.</p>
<p>If MS has their own separate OpenAPI spec, instead of re-using the OpenAI one, that’s a sign that they intend to go their own way in the future. In that case, it may be better to create a separate azureai_ex library right now, instead of forcing this one to perform double duty.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="316004" data-batch-url="/posts/batch_likers">
                        0
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/openai-ex-openai-api-client-library/55353/81">Post #80</a>
	                </div>
	            </div>
              <div id="likers-container-316004" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="316004"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #80"></div>
  </section>
</div>
</template></turbo-stream><turbo-stream action="replace" target="load-more-container"><template><div id="load-more-container" class="load-more-container">
    <a class="load-more-button" data-turbo-stream="true" href="/topics/55353/load_more?page=9">Load more posts (55 remaining)</a>
</div></template></turbo-stream>