Considérant en fait et en droit :
1.
Devant le Président du Tribunal civil de l'arrondissement de la Glâne, H.Z._ et F.Z._ ont introduit le 11 juillet 2011 une requête de preuve à futur qu'ils dirigeaient contre l'architecte X._ et contre plusieurs entreprises de construction.
L'expert désigné par le Président a établi un rapport et plusieurs rapports complémentaires.
Par décision du 26 septembre 2016, le Président a clos la procédure et réglé le sort des frais. Parmi d'autres dispositions, il a alloué des dépens au montant de 12'000 fr., TVA par 960 fr. en sus, à l'architecte X._, à la charge des requérants H.Z._ et F.Z._ « sous réserve d'une autre répartition dans le procès principal au fond ».
2.
Usant du recours, l'architecte X._ a saisi le Tribunal cantonal pour réclamer que la mention « sous réserve d'une autre répartition dans le procès principal au fond » fût éliminée du dispositif de la décision.
Invités à prendre position, les intimés Z._ ont déclaré s'en remettre à justice.
La Ire Cour d'appel civil du Tribunal cantonal a statué le 4 août 2017. Elle a accueilli le recours et éliminé la mention que la recourante contestait dans le dispositif de la décision attaquée. Au motif que les intimés n'avaient aucune responsabilité dans le libellé adopté par le Président du Tribunal civil, corrigé par la Cour, celle-ci retient que dans la procédure de recours, ces plaideurs ne sont pas « parties succombantes » aux termes de l'<ref-law>, et qu'ils n'ont donc pas à assumer les frais de cette procédure. La Cour impute les frais judiciaires à l'Etat sur la base de l'<ref-law>, et elle n'alloue pas de dépens.
3.
Agissant par la voie du recours constitutionnel, X._ requiert le Tribunal fédéral de réformer l'arrêt de la Cour d'appel en ce sens qu'en conséquence du résultat de la procédure cantonale de recours, les intimés Z._ soient condamnés à lui verser des dépens au montant de 992 fr.25.
Les intimés concluent au rejet du recours constitutionnel.
4.
Devant la Cour d'appel, la contestation ne portait que sur les dépens de la procédure de preuve à futur alloués à la recourante; en conséquence, la valeur litigieuse déterminée conformément à l'<ref-law> est égale au montant de ces dépens, soit 12'960 fr. (<ref-ruling>). Elle n'atteint pas le minimum de 30'000 fr. dont dépend la recevabilité du recours ordinaire en matière civile selon l'<ref-law>; par suite, l'arrêt de la Cour d'appel n'est susceptible que du recours constitutionnel subsidiaire selon l'<ref-law>.
5.
Invoquant l'art. 9 Cst., la recourante reproche à la Cour d'appel une application prétendument arbitraire de l'<ref-law>.
Une décision est arbitraire, donc contraire à cette disposition constitutionnelle, lorsqu'elle viole gravement une norme ou un principe juridique clair et indiscuté, ou contredit d'une manière choquante le sentiment de la justice et de l'équité. Le Tribunal fédéral ne s'écarte de la solution retenue par l'autorité cantonale de dernière instance que si sa décision apparaît insoutenable, en contradiction manifeste avec la situation effective, adoptée sans motifs objectifs ou en violation d'un droit certain. En outre, il ne suffit pas que les motifs de la décision soient insoutenables; il faut encore que celle-ci soit arbitraire dans son résultat. Il ne suffit d'ailleurs pas non plus qu'une solution différente de celle retenue par l'autorité cantonale puisse être tenue pour également concevable ou apparaisse même préférable (<ref-ruling> consid. 4.3 p. 380; <ref-ruling> consid. 2.1 p. 168; <ref-ruling> consid. 3.2.5 p. 339).
6.
Selon la jurisprudence, la partie qui succombe à l'issue d'une procédure de recours est d'abord celle qui a pris des conclusions dans cette procédure et qui subit leur rejet (<ref-ruling> consid. 6b p. 3). Il s'agit aussi de la partie qui n'a pas pris de conclusions, en s'abstenant ou en omettant de procéder, ou en déclarant s'en remettre à justice, si la procédure de recours aboutit à l'annulation ou à la réforme d'une décision que cette partie a sollicitée et obtenue devant l'autorité précédente (<ref-ruling> consid. 2b et 2c p. 93; <ref-ruling>). En revanche, lorsque la procédure de recours aboutit seulement à redresser une erreur que la partie intimée n'a en aucune manière provoquée, et que cette partie ne s'est pas opposée à la correction, ladite partie n'est pas réputée succomber et il ne lui incombe pas d'assumer les frais et dépens de cette procédure (arrêt 5A_932/2016 du 24 juillet 2017, consid. 2.2.4, avec références à de nombreux précédents).
Dans la procédure de preuve à futur, les intimés n'ont pas contesté qu'ils dussent assumer les dépens à allouer aux parties citées. Ils n'ont pas réclamé que le dispositif de la décision concernant ces dépens comprît la mention « sous réserve d'une autre répartition dans le procès principal au fond », ni aucune autre mention semblable. Le Président du Tribunal civil a inséré cette mention de sa propre initiative. Devant la Cour d'appel, les intimés ne se sont pas opposés à la correction réclamée par la recourante. Au regard de ces circonstances et de la jurisprudence ci-mentionnée, la Cour a jugé sans violer l'art. 9 Cst. que les intimés ne sont pas « parties succombantes » aux termes de l'<ref-law>, et qu'ils n'ont donc pas à indemniser la recourante, par le versement de dépens, des frais que celle-ci a exposés pour saisir le Tribunal cantonal.
7.
Le recours constitutionnel se révèle privé de fondement, ce qui conduit à son rejet. A titre de partie qui succombe devant le Tribunal fédéral, son auteur doit acquitter l'émolument à percevoir par ce tribunal et les dépens auxquels ses adverses parties peuvent prétendre.


par ces motifs, le Tribunal fédéral prononce :
1.
Le recours est rejeté.
2.
La recourante acquittera un émolument judiciaire de 1'000 francs.
3.
La recourante versera aux intimés, créanciers solidaires, une indemnité de 1'500 fr. à titre de dépens.
4.
Le présent arrêt est communiqué aux parties et au Tribunal cantonal du canton de Fribourg.
Lausanne, le 8 mars 2018
Au nom de la Ire Cour de droit civil
du Tribunal fédéral suisse
La présidente : Kiss
Le greffier : Thélin