|
7 | 7 | </span><span id=__span-0-7><a id=__codelineno-0-7 name=__codelineno-0-7 href=#__codelineno-0-7></a> <span class=n>_task_result_ir</span><span class=o>=</span><span class=kc>None</span><span class=p>,</span>
|
8 | 8 | </span><span id=__span-0-8><a id=__codelineno-0-8 name=__codelineno-0-8 href=#__codelineno-0-8></a><span class=p>)</span>
|
9 | 9 | </span></code></pre></div> <div class="doc doc-contents "> <p class="doc doc-class-bases"> Bases: <code><span title=bloqade.analog.task.base.CustomRemoteTaskABC>CustomRemoteTaskABC</span></code></p> <div class="doc doc-children"> <div class="doc doc-object doc-function"> <h3 id=bloqade.analog.task.exclusive.ExclusiveRemoteTask.pull class="doc doc-heading"> <span class="doc doc-object-name doc-function-name">pull</span> <a href=#bloqade.analog.task.exclusive.ExclusiveRemoteTask.pull class=headerlink title="Permanent link">¶</a></h3> <div class="language-python doc-signature highlight"><pre><span></span><code><span id=__span-0-1><a id=__codelineno-0-1 name=__codelineno-0-1 href=#__codelineno-0-1></a><span class=nf>pull</span><span class=p>(</span><span class=n>poll_interval</span><span class=o>=</span><span class=mi>20</span><span class=p>)</span>
|
10 |
| -</span></code></pre></div> <div class="doc doc-contents "> <p>Blocking pull to get the task result. poll_interval is the time interval to poll the task status. Please ensure that it is relatively large, otherwise the server could get overloaded with queries.</p> <details class=quote> <summary>Source code in <code>src/bloqade/analog/task/exclusive.py</code></summary> <div class="language-python highlight"><table class=highlighttable><tr><td class=linenos><div class=linenodiv><pre><span></span><span class=normal><a href=#__codelineno-0-250>250</a></span> |
| 10 | +</span></code></pre></div> <div class="doc doc-contents "> <p>Blocking pull to get the task result. poll_interval is the time interval to poll the task status. Please ensure that it is relatively large, otherwise the server could get overloaded with queries.</p> <details class=quote> <summary>Source code in <code>src/bloqade/analog/task/exclusive.py</code></summary> <div class="language-python highlight"><table class=highlighttable><tr><td class=linenos><div class=linenodiv><pre><span></span><span class=normal><a href=#__codelineno-0-249>249</a></span> |
| 11 | +<span class=normal><a href=#__codelineno-0-250>250</a></span> |
11 | 12 | <span class=normal><a href=#__codelineno-0-251>251</a></span>
|
12 | 13 | <span class=normal><a href=#__codelineno-0-252>252</a></span>
|
13 | 14 | <span class=normal><a href=#__codelineno-0-253>253</a></span>
|
|
32 | 33 | <span class=normal><a href=#__codelineno-0-272>272</a></span>
|
33 | 34 | <span class=normal><a href=#__codelineno-0-273>273</a></span>
|
34 | 35 | <span class=normal><a href=#__codelineno-0-274>274</a></span>
|
35 |
| -<span class=normal><a href=#__codelineno-0-275>275</a></span> |
36 |
| -<span class=normal><a href=#__codelineno-0-276>276</a></span></pre></div></td><td class=code><div><pre><span></span><code><span id=__span-0-250><a id=__codelineno-0-250 name=__codelineno-0-250></a><span class=k>def</span><span class=w> </span><span class=nf>pull</span><span class=p>(</span><span class=bp>self</span><span class=p>,</span><span class=n>poll_interval</span><span class=p>:</span><span class=nb>float</span><span class=o>=</span><span class=mi>20</span><span class=p>):</span> |
37 |
| -</span><span id=__span-0-251><a id=__codelineno-0-251 name=__codelineno-0-251></a><span class=w> </span><span class=sd>"""</span> |
38 |
| -</span><span id=__span-0-252><a id=__codelineno-0-252 name=__codelineno-0-252></a><span class=sd> Blocking pull to get the task result.</span> |
39 |
| -</span><span id=__span-0-253><a id=__codelineno-0-253 name=__codelineno-0-253></a><span class=sd> poll_interval is the time interval to poll the task status.</span> |
40 |
| -</span><span id=__span-0-254><a id=__codelineno-0-254 name=__codelineno-0-254></a><span class=sd> Please ensure that it is relatively large, otherwise</span> |
41 |
| -</span><span id=__span-0-255><a id=__codelineno-0-255 name=__codelineno-0-255></a><span class=sd> the server could get overloaded with queries.</span> |
42 |
| -</span><span id=__span-0-256><a id=__codelineno-0-256 name=__codelineno-0-256></a><span class=sd> """</span> |
43 |
| -</span><span id=__span-0-257><a id=__codelineno-0-257 name=__codelineno-0-257></a> |
44 |
| -</span><span id=__span-0-258><a id=__codelineno-0-258 name=__codelineno-0-258></a> <span class=k>while</span> <span class=kc>True</span><span class=p>:</span> |
45 |
| -</span><span id=__span-0-259><a id=__codelineno-0-259 name=__codelineno-0-259></a> <span class=k>if</span> <span class=bp>self</span><span class=o>.</span><span class=n>_task_result_ir</span><span class=o>.</span><span class=n>task_status</span> <span class=ow>is</span> <span class=n>QuEraTaskStatusCode</span><span class=o>.</span><span class=n>Unsubmitted</span><span class=p>:</span> |
46 |
| -</span><span id=__span-0-260><a id=__codelineno-0-260 name=__codelineno-0-260></a> <span class=k>raise</span> <span class=ne>ValueError</span><span class=p>(</span><span class=s2>"Task ID not found."</span><span class=p>)</span> |
47 |
| -</span><span id=__span-0-261><a id=__codelineno-0-261 name=__codelineno-0-261></a> |
48 |
| -</span><span id=__span-0-262><a id=__codelineno-0-262 name=__codelineno-0-262></a> <span class=k>if</span> <span class=bp>self</span><span class=o>.</span><span class=n>_task_result_ir</span><span class=o>.</span><span class=n>task_status</span> <span class=ow>in</span> <span class=p>[</span> |
49 |
| -</span><span id=__span-0-263><a id=__codelineno-0-263 name=__codelineno-0-263></a> <span class=n>QuEraTaskStatusCode</span><span class=o>.</span><span class=n>Completed</span><span class=p>,</span> |
50 |
| -</span><span id=__span-0-264><a id=__codelineno-0-264 name=__codelineno-0-264></a> <span class=n>QuEraTaskStatusCode</span><span class=o>.</span><span class=n>Partial</span><span class=p>,</span> |
51 |
| -</span><span id=__span-0-265><a id=__codelineno-0-265 name=__codelineno-0-265></a> <span class=n>QuEraTaskStatusCode</span><span class=o>.</span><span class=n>Failed</span><span class=p>,</span> |
52 |
| -</span><span id=__span-0-266><a id=__codelineno-0-266 name=__codelineno-0-266></a> <span class=n>QuEraTaskStatusCode</span><span class=o>.</span><span class=n>Unaccepted</span><span class=p>,</span> |
53 |
| -</span><span id=__span-0-267><a id=__codelineno-0-267 name=__codelineno-0-267></a> <span class=n>QuEraTaskStatusCode</span><span class=o>.</span><span class=n>Cancelled</span><span class=p>,</span> |
54 |
| -</span><span id=__span-0-268><a id=__codelineno-0-268 name=__codelineno-0-268></a> <span class=p>]:</span> |
55 |
| -</span><span id=__span-0-269><a id=__codelineno-0-269 name=__codelineno-0-269></a> <span class=k>return</span> <span class=bp>self</span> |
56 |
| -</span><span id=__span-0-270><a id=__codelineno-0-270 name=__codelineno-0-270></a> |
57 |
| -</span><span id=__span-0-271><a id=__codelineno-0-271 name=__codelineno-0-271></a> <span class=n>status</span> <span class=o>=</span> <span class=bp>self</span><span class=o>.</span><span class=n>status</span><span class=p>()</span> |
58 |
| -</span><span id=__span-0-272><a id=__codelineno-0-272 name=__codelineno-0-272></a> <span class=k>if</span> <span class=n>status</span> <span class=ow>in</span> <span class=p>[</span><span class=n>QuEraTaskStatusCode</span><span class=o>.</span><span class=n>Completed</span><span class=p>,</span> <span class=n>QuEraTaskStatusCode</span><span class=o>.</span><span class=n>Partial</span><span class=p>]:</span> |
59 |
| -</span><span id=__span-0-273><a id=__codelineno-0-273 name=__codelineno-0-273></a> <span class=bp>self</span><span class=o>.</span><span class=n>_task_result_ir</span> <span class=o>=</span> <span class=bp>self</span><span class=o>.</span><span class=n>_http_handler</span><span class=o>.</span><span class=n>fetch_results</span><span class=p>(</span><span class=bp>self</span><span class=o>.</span><span class=n>_task_id</span><span class=p>)</span> |
60 |
| -</span><span id=__span-0-274><a id=__codelineno-0-274 name=__codelineno-0-274></a> <span class=k>return</span> <span class=bp>self</span> |
61 |
| -</span><span id=__span-0-275><a id=__codelineno-0-275 name=__codelineno-0-275></a> |
62 |
| -</span><span id=__span-0-276><a id=__codelineno-0-276 name=__codelineno-0-276></a> <span class=n>time</span><span class=o>.</span><span class=n>sleep</span><span class=p>(</span><span class=n>poll_interval</span><span class=p>)</span> |
| 36 | +<span class=normal><a href=#__codelineno-0-275>275</a></span></pre></div></td><td class=code><div><pre><span></span><code><span id=__span-0-249><a id=__codelineno-0-249 name=__codelineno-0-249></a><span class=k>def</span><span class=w> </span><span class=nf>pull</span><span class=p>(</span><span class=bp>self</span><span class=p>,</span> <span class=n>poll_interval</span><span class=p>:</span> <span class=nb>float</span> <span class=o>=</span> <span class=mi>20</span><span class=p>):</span> |
| 37 | +</span><span id=__span-0-250><a id=__codelineno-0-250 name=__codelineno-0-250></a><span class=w> </span><span class=sd>"""</span> |
| 38 | +</span><span id=__span-0-251><a id=__codelineno-0-251 name=__codelineno-0-251></a><span class=sd> Blocking pull to get the task result.</span> |
| 39 | +</span><span id=__span-0-252><a id=__codelineno-0-252 name=__codelineno-0-252></a><span class=sd> poll_interval is the time interval to poll the task status.</span> |
| 40 | +</span><span id=__span-0-253><a id=__codelineno-0-253 name=__codelineno-0-253></a><span class=sd> Please ensure that it is relatively large, otherwise</span> |
| 41 | +</span><span id=__span-0-254><a id=__codelineno-0-254 name=__codelineno-0-254></a><span class=sd> the server could get overloaded with queries.</span> |
| 42 | +</span><span id=__span-0-255><a id=__codelineno-0-255 name=__codelineno-0-255></a><span class=sd> """</span> |
| 43 | +</span><span id=__span-0-256><a id=__codelineno-0-256 name=__codelineno-0-256></a> |
| 44 | +</span><span id=__span-0-257><a id=__codelineno-0-257 name=__codelineno-0-257></a> <span class=k>while</span> <span class=kc>True</span><span class=p>:</span> |
| 45 | +</span><span id=__span-0-258><a id=__codelineno-0-258 name=__codelineno-0-258></a> <span class=k>if</span> <span class=bp>self</span><span class=o>.</span><span class=n>_task_result_ir</span><span class=o>.</span><span class=n>task_status</span> <span class=ow>is</span> <span class=n>QuEraTaskStatusCode</span><span class=o>.</span><span class=n>Unsubmitted</span><span class=p>:</span> |
| 46 | +</span><span id=__span-0-259><a id=__codelineno-0-259 name=__codelineno-0-259></a> <span class=k>raise</span> <span class=ne>ValueError</span><span class=p>(</span><span class=s2>"Task ID not found."</span><span class=p>)</span> |
| 47 | +</span><span id=__span-0-260><a id=__codelineno-0-260 name=__codelineno-0-260></a> |
| 48 | +</span><span id=__span-0-261><a id=__codelineno-0-261 name=__codelineno-0-261></a> <span class=k>if</span> <span class=bp>self</span><span class=o>.</span><span class=n>_task_result_ir</span><span class=o>.</span><span class=n>task_status</span> <span class=ow>in</span> <span class=p>[</span> |
| 49 | +</span><span id=__span-0-262><a id=__codelineno-0-262 name=__codelineno-0-262></a> <span class=n>QuEraTaskStatusCode</span><span class=o>.</span><span class=n>Completed</span><span class=p>,</span> |
| 50 | +</span><span id=__span-0-263><a id=__codelineno-0-263 name=__codelineno-0-263></a> <span class=n>QuEraTaskStatusCode</span><span class=o>.</span><span class=n>Partial</span><span class=p>,</span> |
| 51 | +</span><span id=__span-0-264><a id=__codelineno-0-264 name=__codelineno-0-264></a> <span class=n>QuEraTaskStatusCode</span><span class=o>.</span><span class=n>Failed</span><span class=p>,</span> |
| 52 | +</span><span id=__span-0-265><a id=__codelineno-0-265 name=__codelineno-0-265></a> <span class=n>QuEraTaskStatusCode</span><span class=o>.</span><span class=n>Unaccepted</span><span class=p>,</span> |
| 53 | +</span><span id=__span-0-266><a id=__codelineno-0-266 name=__codelineno-0-266></a> <span class=n>QuEraTaskStatusCode</span><span class=o>.</span><span class=n>Cancelled</span><span class=p>,</span> |
| 54 | +</span><span id=__span-0-267><a id=__codelineno-0-267 name=__codelineno-0-267></a> <span class=p>]:</span> |
| 55 | +</span><span id=__span-0-268><a id=__codelineno-0-268 name=__codelineno-0-268></a> <span class=k>return</span> <span class=bp>self</span> |
| 56 | +</span><span id=__span-0-269><a id=__codelineno-0-269 name=__codelineno-0-269></a> |
| 57 | +</span><span id=__span-0-270><a id=__codelineno-0-270 name=__codelineno-0-270></a> <span class=n>status</span> <span class=o>=</span> <span class=bp>self</span><span class=o>.</span><span class=n>status</span><span class=p>()</span> |
| 58 | +</span><span id=__span-0-271><a id=__codelineno-0-271 name=__codelineno-0-271></a> <span class=k>if</span> <span class=n>status</span> <span class=ow>in</span> <span class=p>[</span><span class=n>QuEraTaskStatusCode</span><span class=o>.</span><span class=n>Completed</span><span class=p>,</span> <span class=n>QuEraTaskStatusCode</span><span class=o>.</span><span class=n>Partial</span><span class=p>]:</span> |
| 59 | +</span><span id=__span-0-272><a id=__codelineno-0-272 name=__codelineno-0-272></a> <span class=bp>self</span><span class=o>.</span><span class=n>_task_result_ir</span> <span class=o>=</span> <span class=bp>self</span><span class=o>.</span><span class=n>_http_handler</span><span class=o>.</span><span class=n>fetch_results</span><span class=p>(</span><span class=bp>self</span><span class=o>.</span><span class=n>_task_id</span><span class=p>)</span> |
| 60 | +</span><span id=__span-0-273><a id=__codelineno-0-273 name=__codelineno-0-273></a> <span class=k>return</span> <span class=bp>self</span> |
| 61 | +</span><span id=__span-0-274><a id=__codelineno-0-274 name=__codelineno-0-274></a> |
| 62 | +</span><span id=__span-0-275><a id=__codelineno-0-275 name=__codelineno-0-275></a> <span class=n>time</span><span class=o>.</span><span class=n>sleep</span><span class=p>(</span><span class=n>poll_interval</span><span class=p>)</span> |
63 | 63 | </span></code></pre></div></td></tr></table></div> </details> </div> </div> </div> </div> </div> <div class="doc doc-object doc-class"> <h2 id=bloqade.analog.task.exclusive.HTTPHandlerABC class="doc doc-heading"> <span class="doc doc-object-name doc-class-name">HTTPHandlerABC</span> <a href=#bloqade.analog.task.exclusive.HTTPHandlerABC class=headerlink title="Permanent link">¶</a></h2> <div class="doc doc-contents "> <div class="doc doc-children"> <div class="doc doc-object doc-function"> <h3 id=bloqade.analog.task.exclusive.HTTPHandlerABC.fetch_results class="doc doc-heading"> <span class="doc doc-object-name doc-function-name">fetch_results</span> <span class="doc doc-labels"> <small class="doc doc-label doc-label-abstractmethod"><code>abstractmethod</code></small> </span> <a href=#bloqade.analog.task.exclusive.HTTPHandlerABC.fetch_results class=headerlink title="Permanent link">¶</a></h3> <div class="language-python doc-signature highlight"><pre><span></span><code><span id=__span-0-1><a id=__codelineno-0-1 name=__codelineno-0-1 href=#__codelineno-0-1></a><span class=nf>fetch_results</span><span class=p>(</span><span class=n>task_id</span><span class=p>)</span>
|
64 | 64 | </span></code></pre></div> <div class="doc doc-contents "> <p>Fetch the task results from the AirTable.</p> <p><span class=doc-section-title>Parameters:</span></p> <table> <thead> <tr> <th>Name</th> <th>Type</th> <th>Description</th> <th>Default</th> </tr> </thead> <tbody> <tr class=doc-section-item> <td> <code>task_id</code> </td> <td> <code><span title=str>str</span></code> </td> <td> <div class=doc-md-description> <p>The task id to be queried.</p> </div> </td> <td> <em>required</em> </td> </tr> </tbody> </table> <p>returns response: The response from the AirTable. used for error handling</p> <details class=quote> <summary>Source code in <code>src/bloqade/analog/task/exclusive.py</code></summary> <div class="language-python highlight"><table class=highlighttable><tr><td class=linenos><div class=linenodiv><pre><span></span><span class=normal><a href=#__codelineno-0-50>50</a></span>
|
65 | 65 | <span class=normal><a href=#__codelineno-0-51>51</a></span>
|
|
0 commit comments