TensorFlow .NET (Comment ça fonctionne pour les développeurs)
L'apprentissage automatique (ML) a révolutionné diverses industries, de la santé à la finance, en permettant une prise de décision intelligente et une automatisation. TensorFlow, le cadre open-source de ML et d'apprentissage profond de Google, a été à la pointe de cette révolution. Avec TensorFlow.NET, les développeurs .NET peuvent exploiter la puissance de TensorFlow dans l'écosystème C#. Dans cet article, nous allons explorer TensorFlow.NET, ses fonctionnalités, ses avantages et ses applications pratiques dans le développement en C#. Nous apprendrons également à propos d'une bibliothèque de génération de PDF appelée IronPDF de Iron Software avec un exemple pratique.
Comprendre TensorFlow.NET
TensorFlow.NET est une liaison .NET pour TensorFlow, permettant aux développeurs d'utiliser les fonctionnalités de TensorFlow directement au sein des couches d'application C# et .NET. Développé par la communauté et maintenu par l'organisation SciSharp, TensorFlow.NET offre une intégration transparente des capacités d'apprentissage machine et de réseaux neuronaux de TensorFlow avec la polyvalence de la plateforme .NET. Il permet aux développeurs C# de construire des réseaux neuronaux, d'entraîner des modèles et de déployer des modèles ML en utilisant les API système et les outils étendus de TensorFlow.
Fonctionnalités clés de TensorFlow.NET
- Compatibilité TensorFlow :
TensorFlow.NEToffre une compatibilité totale avec les API et opérations de TensorFlow, y compris la manipulation de tenseurs, les couches de réseaux neuronaux, les fonctions de perte, les optimisateurs et les utilitaires pour le prétraitement et l'évaluation des données. - Haute Performance :
TensorFlow.NETutilise le moteur d'exécution de graphes de calcul efficace de TensorFlow et ses noyaux optimisés pour offrir une inférence et un apprentissage machine hautement performants sur CPU et GPU. - Intégration Facile :
TensorFlow.NETs'intègre parfaitement aux applications et bibliothèques .NET existantes, permettant aux développeurs de tirer parti des capacités de TensorFlow sans quitter l'environnement de développement C# familier. - Portabilité du Modèle :
TensorFlow.NETpermet aux développeurs d'importer des modèles TensorFlow pré-entraînés et d'exporter des modèles entraînés pour l'inférence dans d'autres environnements basés sur TensorFlow, tels que Python ou les appareils mobiles. - Flexibilité et Extensibilité :
TensorFlow.NEToffre la flexibilité de personnaliser et d'étendre les modèles d'apprentissage machine en utilisant les fonctionnalités du langage C#, comme LINQ (Language Integrated Query) pour la manipulation de données et les paradigmes de programmation fonctionnelle pour la composition de modèles. - Soutien Communautaire et Documentation :
TensorFlow.NETbénéficie d'une communauté active de contributeurs qui fournissent une documentation, des tutoriels et des exemples pour aider les développeurs à se lancer dans l'apprentissage machine dans le monde C# avec TensorFlow.
Exemples pratiques avec TensorFlow.NET
Explorons quelques scénarios pratiques où TensorFlow.NET peut être utilisé pour construire et déployer des modèles d'apprentissage machine en C# :
-
Chargement et utilisation des modèles pré-entraînés :
// Load a pre-trained TensorFlow model var model = TensorFlowModel.LoadModel("model.pb"); // Perform inference on input data var input = new float[,] { { 1.0f, 2.0f, 3.0f } }; var output = model.Predict(input);// Load a pre-trained TensorFlow model var model = TensorFlowModel.LoadModel("model.pb"); // Perform inference on input data var input = new float[,] { { 1.0f, 2.0f, 3.0f } }; var output = model.Predict(input);' Load a pre-trained TensorFlow model Dim model = TensorFlowModel.LoadModel("model.pb") ' Perform inference on input data Dim input = New Single(, ) { { 1.0F, 2.0F, 3.0F } } Dim output = model.Predict(input)$vbLabelText $csharpLabel -
Entraînement de modèles personnalisés :
// Create a neural network model using TensorFlow.NET APIs var input = new Input(Shape.Scalar); var output = new Dense(1, Activation.ReLU).Forward(input); // Compile the model with loss function and optimizer algorithms var model = new Model(input, output); model.Compile(optimizer: new SGD(), loss: Losses.MeanSquaredError); // Train the model with training data model.Fit(x_train, y_train, epochs: 10, batchSize: 32);// Create a neural network model using TensorFlow.NET APIs var input = new Input(Shape.Scalar); var output = new Dense(1, Activation.ReLU).Forward(input); // Compile the model with loss function and optimizer algorithms var model = new Model(input, output); model.Compile(optimizer: new SGD(), loss: Losses.MeanSquaredError); // Train the model with training data model.Fit(x_train, y_train, epochs: 10, batchSize: 32);' Create a neural network model using TensorFlow.NET APIs Dim input As New Input(Shape.Scalar) Dim output = (New Dense(1, Activation.ReLU)).Forward(input) ' Compile the model with loss function and optimizer algorithms Dim model As New Model(input, output) model.Compile(optimizer:= New SGD(), loss:= Losses.MeanSquaredError) ' Train the model with training data model.Fit(x_train, y_train, epochs:= 10, batchSize:= 32)$vbLabelText $csharpLabel -
Évaluation et déploiement :
// Evaluate the trained model on test data var evaluation = model.Evaluate(x_test, y_test); // Export the trained model for deployment model.SaveModel("trained_model.pb");// Evaluate the trained model on test data var evaluation = model.Evaluate(x_test, y_test); // Export the trained model for deployment model.SaveModel("trained_model.pb");' Evaluate the trained model on test data Dim evaluation = model.Evaluate(x_test, y_test) ' Export the trained model for deployment model.SaveModel("trained_model.pb")$vbLabelText $csharpLabel
Plus d'exemples de TensorFlow peuvent être trouvés sur la page des Exemples TensorFlow.NET.
// Use static TensorFlow
using static Tensorflow.Binding;
namespace IronPdfDemos
{
public class TensorFlow
{
public static void Execute()
{
// Create a TensorFlow constant
var hello = tf.constant("Hello, TensorFlow!");
Console.WriteLine(hello);
}
}
}
// Use static TensorFlow
using static Tensorflow.Binding;
namespace IronPdfDemos
{
public class TensorFlow
{
public static void Execute()
{
// Create a TensorFlow constant
var hello = tf.constant("Hello, TensorFlow!");
Console.WriteLine(hello);
}
}
}
' Use static TensorFlow
Imports Tensorflow.Binding
Namespace IronPdfDemos
Public Class TensorFlow
Public Shared Sub Execute()
' Create a TensorFlow constant
Dim hello = tf.constant("Hello, TensorFlow!")
Console.WriteLine(hello)
End Sub
End Class
End Namespace
Exemple de sortie Hello TensorFlow

Avantages de l'utilisation de TensorFlow.NET
- Intégration transparente :
TensorFlow.NETapporte la puissance de TensorFlow à l'écosystème .NET, permettant aux développeurs C# de tirer parti des techniques et algorithmes d'apprentissage machine de pointe dans leurs applications. - Performance et Évolutivité :
TensorFlow.NETutilise le moteur d'exécution optimisé de TensorFlow pour offrir des calculs d'apprentissage machine performants, le rendant adapté à la gestion de grands ensembles de données et de modèles complexes. - Environnement de Développement Familier : L'API
TensorFlow.NETpermet aux développeurs de construire et déployer des modèles d'apprentissage machine en utilisant des fonctionnalités et outils de développement C# familiers, réduisant la courbe d'apprentissage pour adopter l'apprentissage machine dans les applications C#. - Interopérabilité et Portabilité :
TensorFlow.NETfacilite l'interopérabilité avec d'autres environnements basés sur TensorFlow, permettant une intégration transparente des modèles d'apprentissage machine basés sur C# avec Python, TensorFlow Serving et TensorFlow Lite. - Développement dirigé par la Communauté :
TensorFlow.NETbénéficie d'une communauté active de contributeurs et utilisateurs qui fournissent support, retours et contributions au projet, assurant sa croissance et amélioration continues.
Licence TensorFlow.NET
C'est un package open-source sous licence Apache qui peut être utilisé librement. En savoir plus sur la licence sur la page de la licence TensorFlow.NET.
Présentation d'IronPDF

IronPDF est une bibliothèque PDF C# puissante qui permet aux développeurs de créer, éditer et signer des PDFs directement à partir d'entrées HTML, CSS, d'images et de JavaScript. C'est une solution de qualité commerciale avec des performances élevées et une faible empreinte mémoire. Voici quelques caractéristiques clés :
- Conversion HTML en PDF :
IronPDFpeut convertir des fichiers HTML, des chaînes HTML et des URLs en PDFs. Par exemple, vous pouvez rendre une page web sous forme de PDF en utilisant le moteur de rendu PDF Chrome. - Support Multi-Plateforme :
IronPDFfonctionne sur diverses plateformes .NET, y compris .NET Core, .NET Standard et .NET Framework. Il est compatible avec Windows, Linux, et macOS. - Édition et signature : Vous pouvez définir des propriétés, ajouter des mesures de sécurité (mots de passe et autorisations) et même appliquer des signatures numériques à vos PDF.
- Modèles de page et paramètres : Personnalisez vos PDF en ajoutant des en-têtes, des pieds de page et des numéros de page, et en ajustant les marges.
IronPDFsupporte également les mises en page réactives et les tailles de papier personnalisées. - Conformité aux Normes :
IronPDFadhère aux normes PDF telles que PDF/A et PDF/UA. Il prend en charge l'encodage de caractères UTF-8 et gère les actifs comme les images, CSS et polices.
Générer des documents PDF en utilisant TensorFlow.NET et IronPDF
Tout d'abord, créez un projet Visual Studio et sélectionnez le modèle Console App ci-dessous.

Fournissez le nom et l'emplacement du projet.

Sélectionnez la version .NET requise à l'étape suivante et cliquez sur le bouton Créer.
Installez IronPDF à partir du package NuGet depuis le gestionnaire de package Visual Studio.

Installez les packages TensorFlow.NET et TensorFlow.Keras, un package indépendant utilisé pour exécuter des modèles.

using IronPdf;
using static Tensorflow.Binding;
namespace IronPdfDemos
{
public class Program
{
public static void Main()
{
// Instantiate Cache and ChromePdfRenderer
var renderer = new ChromePdfRenderer();
// Prepare HTML content for the PDF
var content = "<h1>Demonstrate TensorFlow with IronPDF</h1>";
content += "<h2>Enable Eager Execution</h2>";
content += "<p>tf.enable_eager_execution();</p>";
// Enable eager execution mode in TensorFlow
tf.enable_eager_execution();
// Define tensor constants
content += "<h2>Define Tensor Constants</h2>";
var a = tf.constant(5);
var b = tf.constant(6);
var c = tf.constant(7);
// Perform various tensor operations
content += "<h2>Various Tensor Operations</h2>";
var add = tf.add(a, b);
var sub = tf.subtract(a, b);
var mul = tf.multiply(a, b);
var div = tf.divide(a, b);
content += $"<p>var add = tf.add(a, b);</p>";
content += $"<p>var sub = tf.subtract(a, b);</p>";
content += $"<p>var mul = tf.multiply(a, b);</p>";
content += $"<p>var div = tf.divide(a, b);</p>";
// Output tensor values to HTML content
content += "<h2>Access Tensor Values</h2>";
content += $"<p>{a.numpy()} + {b.numpy()} = {add.numpy()}</p>";
content += $"<p>{a.numpy()} - {b.numpy()} = {sub.numpy()}</p>";
content += $"<p>{a.numpy()} * {b.numpy()} = {mul.numpy()}</p>";
content += $"<p>{a.numpy()} / {b.numpy()} = {div.numpy()}</p>";
// Perform additional operations
var mean = tf.reduce_mean(tf.constant(new[] { a, b, c }));
var sum = tf.reduce_sum(tf.constant(new[] { a, b, c }));
content += "<h2>Additional Operations</h2>";
content += $"<p>mean = {mean.numpy()}</p>";
content += $"<p>sum = {sum.numpy()}</p>";
// Perform matrix multiplication
var matrix1 = tf.constant(new float[,] { { 1, 2 }, { 3, 4 } });
var matrix2 = tf.constant(new float[,] { { 5, 6 }, { 7, 8 } });
var product = tf.matmul(matrix1, matrix2);
content += "<h2>Matrix Multiplications</h2>";
content += "<p>Multiplication Result:</p>";
content += $"<p>product = {product.numpy()}</p>";
// Render HTML content to PDF
var pdf = renderer.RenderHtmlAsPdf(content);
// Save PDF to file
pdf.SaveAs("tensorflow.pdf");
}
}
}
using IronPdf;
using static Tensorflow.Binding;
namespace IronPdfDemos
{
public class Program
{
public static void Main()
{
// Instantiate Cache and ChromePdfRenderer
var renderer = new ChromePdfRenderer();
// Prepare HTML content for the PDF
var content = "<h1>Demonstrate TensorFlow with IronPDF</h1>";
content += "<h2>Enable Eager Execution</h2>";
content += "<p>tf.enable_eager_execution();</p>";
// Enable eager execution mode in TensorFlow
tf.enable_eager_execution();
// Define tensor constants
content += "<h2>Define Tensor Constants</h2>";
var a = tf.constant(5);
var b = tf.constant(6);
var c = tf.constant(7);
// Perform various tensor operations
content += "<h2>Various Tensor Operations</h2>";
var add = tf.add(a, b);
var sub = tf.subtract(a, b);
var mul = tf.multiply(a, b);
var div = tf.divide(a, b);
content += $"<p>var add = tf.add(a, b);</p>";
content += $"<p>var sub = tf.subtract(a, b);</p>";
content += $"<p>var mul = tf.multiply(a, b);</p>";
content += $"<p>var div = tf.divide(a, b);</p>";
// Output tensor values to HTML content
content += "<h2>Access Tensor Values</h2>";
content += $"<p>{a.numpy()} + {b.numpy()} = {add.numpy()}</p>";
content += $"<p>{a.numpy()} - {b.numpy()} = {sub.numpy()}</p>";
content += $"<p>{a.numpy()} * {b.numpy()} = {mul.numpy()}</p>";
content += $"<p>{a.numpy()} / {b.numpy()} = {div.numpy()}</p>";
// Perform additional operations
var mean = tf.reduce_mean(tf.constant(new[] { a, b, c }));
var sum = tf.reduce_sum(tf.constant(new[] { a, b, c }));
content += "<h2>Additional Operations</h2>";
content += $"<p>mean = {mean.numpy()}</p>";
content += $"<p>sum = {sum.numpy()}</p>";
// Perform matrix multiplication
var matrix1 = tf.constant(new float[,] { { 1, 2 }, { 3, 4 } });
var matrix2 = tf.constant(new float[,] { { 5, 6 }, { 7, 8 } });
var product = tf.matmul(matrix1, matrix2);
content += "<h2>Matrix Multiplications</h2>";
content += "<p>Multiplication Result:</p>";
content += $"<p>product = {product.numpy()}</p>";
// Render HTML content to PDF
var pdf = renderer.RenderHtmlAsPdf(content);
// Save PDF to file
pdf.SaveAs("tensorflow.pdf");
}
}
}
Imports IronPdf
Imports Tensorflow.Binding
Namespace IronPdfDemos
Public Class Program
Public Shared Sub Main()
' Instantiate Cache and ChromePdfRenderer
Dim renderer = New ChromePdfRenderer()
' Prepare HTML content for the PDF
Dim content = "<h1>Demonstrate TensorFlow with IronPDF</h1>"
content &= "<h2>Enable Eager Execution</h2>"
content &= "<p>tf.enable_eager_execution();</p>"
' Enable eager execution mode in TensorFlow
tf.enable_eager_execution()
' Define tensor constants
content &= "<h2>Define Tensor Constants</h2>"
Dim a = tf.constant(5)
Dim b = tf.constant(6)
Dim c = tf.constant(7)
' Perform various tensor operations
content &= "<h2>Various Tensor Operations</h2>"
Dim add = tf.add(a, b)
Dim [sub] = tf.subtract(a, b)
Dim mul = tf.multiply(a, b)
Dim div = tf.divide(a, b)
content &= $"<p>var add = tf.add(a, b);</p>"
content &= $"<p>var sub = tf.subtract(a, b);</p>"
content &= $"<p>var mul = tf.multiply(a, b);</p>"
content &= $"<p>var div = tf.divide(a, b);</p>"
' Output tensor values to HTML content
content &= "<h2>Access Tensor Values</h2>"
content &= $"<p>{a.numpy()} + {b.numpy()} = {add.numpy()}</p>"
content &= $"<p>{a.numpy()} - {b.numpy()} = {[sub].numpy()}</p>"
content &= $"<p>{a.numpy()} * {b.numpy()} = {mul.numpy()}</p>"
content &= $"<p>{a.numpy()} / {b.numpy()} = {div.numpy()}</p>"
' Perform additional operations
Dim mean = tf.reduce_mean(tf.constant( { a, b, c }))
Dim sum = tf.reduce_sum(tf.constant( { a, b, c }))
content &= "<h2>Additional Operations</h2>"
content &= $"<p>mean = {mean.numpy()}</p>"
content &= $"<p>sum = {sum.numpy()}</p>"
' Perform matrix multiplication
Dim matrix1 = tf.constant(New Single(, ) {
{ 1, 2 },
{ 3, 4 }
})
Dim matrix2 = tf.constant(New Single(, ) {
{ 5, 6 },
{ 7, 8 }
})
Dim product = tf.matmul(matrix1, matrix2)
content &= "<h2>Matrix Multiplications</h2>"
content &= "<p>Multiplication Result:</p>"
content &= $"<p>product = {product.numpy()}</p>"
' Render HTML content to PDF
Dim pdf = renderer.RenderHtmlAsPdf(content)
' Save PDF to file
pdf.SaveAs("tensorflow.pdf")
End Sub
End Class
End Namespace
Explication du code
Décomposons l'extrait de code :
-
Déclarations d'importation :
Le code commence par importer les bibliothèques nécessaires. En particulier :
using IronPdf; // This imports the IronPDF package, which is used for working with PDF files. using static Tensorflow.Binding; // This imports the TensorFlow library, specifically the .NET standard binding.using IronPdf; // This imports the IronPDF package, which is used for working with PDF files. using static Tensorflow.Binding; // This imports the TensorFlow library, specifically the .NET standard binding.Imports IronPdf ' This imports the IronPDF package, which is used for working with PDF files. Imports Tensorflow.Binding ' This imports the TensorFlow library, specifically the .NET standard binding.$vbLabelText $csharpLabel -
Exécution enthousiaste :
La ligne
tf.enable_eager_execution();active le mode d'exécution impatiente de TensorFlow. En exécution eager, les opérations sont évaluées immédiatement, ce qui facilite le débogage et l'interaction avec les tenseurs. -
Définir les constantes du tenseur :
Le code définit trois constantes de tenseurs :
a,betc. Celles-ci sont initialisées avec les valeurs 5, 6, et 7, respectivement. -
Diverses opérations sur les tenseurs :
Les opérations de tenseurs suivantes sont effectuées :
var add = tf.add(a, b); // Adds a and b. var sub = tf.subtract(a, b); // Subtracts b from a. var mul = tf.multiply(a, b); // Multiplies a and b. var div = tf.divide(a, b); // Divides a by b.var add = tf.add(a, b); // Adds a and b. var sub = tf.subtract(a, b); // Subtracts b from a. var mul = tf.multiply(a, b); // Multiplies a and b. var div = tf.divide(a, b); // Divides a by b.Dim add = tf.add(a, b) ' Adds a and b. Dim [sub] = tf.subtract(a, b) ' Subtracts b from a. Dim mul = tf.multiply(a, b) ' Multiplies a and b. Dim div = tf.divide(a, b) ' Divides a by b.$vbLabelText $csharpLabel -
Accéder aux valeurs du tenseur :
Les résultats des opérations de tenseurs sont inclus dans le contenu HTML :
content += $"<p>{a.numpy()} + {b.numpy()} = {add.numpy()}</p>"; content += $"<p>{a.numpy()} - {b.numpy()} = {sub.numpy()}</p>"; content += $"<p>{a.numpy()} * {b.numpy()} = {mul.numpy()}</p>"; content += $"<p>{a.numpy()} / {b.numpy()} = {div.numpy()}</p>";content += $"<p>{a.numpy()} + {b.numpy()} = {add.numpy()}</p>"; content += $"<p>{a.numpy()} - {b.numpy()} = {sub.numpy()}</p>"; content += $"<p>{a.numpy()} * {b.numpy()} = {mul.numpy()}</p>"; content += $"<p>{a.numpy()} / {b.numpy()} = {div.numpy()}</p>";content += $"<p>{a.numpy()} + {b.numpy()} = {add.numpy()}</p>" content += $"<p>{a.numpy()} - {b.numpy()} = {[sub].numpy()}</p>" content += $"<p>{a.numpy()} * {b.numpy()} = {mul.numpy()}</p>" content += $"<p>{a.numpy()} / {b.numpy()} = {div.numpy()}</p>"$vbLabelText $csharpLabel -
Opérations supplémentaires :
Le code calcule la moyenne et la somme des constantes
[a, b, c]. -
Multiplications matricielles :
Il effectue une multiplication matricielle entre
matrix1etmatrix2et affiche le résultat. -
Génération de PDF :
ChromePdfRendereretRenderHtmlAsPdfdeIronPDFsont utilisés pour restituer la chaîne HTML en un document PDF.
Sortie

Licence IronPDF
IronPDF nécessite une licence pour fonctionner. Plus d'informations sur les licences peuvent être trouvées sur la page Licences IronPDF. Placez la clé dans le fichier appSettings.json comme indiqué ci-dessous.
{
"IronPdf.License.LicenseKey": "The Key Here"
}
Conclusion
En conclusion, TensorFlow.NET permet aux développeurs C# d'explorer le monde de l'apprentissage machine et de l'intelligence artificielle avec la polyvalence et la productivité de l'écosystème .NET. Que vous construisiez des applications intelligentes, des outils d'analyse prédictive ou des systèmes de prise de décision automatisée, TensorFlow.NET fournit un cadre puissant et flexible pour libérer le potentiel de l'apprentissage machine en C#. Avec la bibliothèque IronPDF de Iron Software, les développeurs peuvent acquérir des compétences avancées pour développer des applications modernes.
Questions Fréquemment Posées
Comment puis-je intégrer l'apprentissage automatique dans mon application C# ?
Vous pouvez utiliser TensorFlow.NET, une bibliothèque .NET pour TensorFlow, qui vous permet de construire, entraîner et déployer des modèles d'apprentissage automatique au sein de votre application C#. Elle offre une compatibilité totale avec les puissantes API de TensorFlow.
Quelles sont les caractéristiques clés de TensorFlow.NET ?
TensorFlow.NET offre des caractéristiques telles qu'une compatibilité complète avec les API de TensorFlow, des performances élevées grâce au moteur de calcul de TensorFlow, une intégration facile avec les systèmes .NET, la portabilité des modèles et un fort soutien de la communauté.
Comment puis-je convertir du HTML en PDF dans une application .NET ?
Vous pouvez utiliser IronPDF pour convertir du HTML en PDF dans une application .NET. IronPDF permet la conversion des entrées HTML, CSS et JavaScript en documents PDF, offrant une compatibilité multiplateforme et des capacités avancées de manipulation de PDF.
TensorFlow.NET peut-il être utilisé pour importer des modèles depuis Python ?
Oui, TensorFlow.NET prend en charge la portabilité des modèles, vous permettant d'importer des modèles créés dans des environnements comme Python et de les utiliser dans vos applications .NET.
Quel est le potentiel de la combinaison de TensorFlow.NET et IronPDF ?
En combinant TensorFlow.NET et IronPDF, les développeurs peuvent créer des applications intelligentes capables d'effectuer des calculs complexes d'apprentissage automatique et de présenter les résultats dans des documents PDF bien formatés, améliorant ainsi les processus de documentation et de rapports.
TensorFlow.NET est-il adapté au développement multiplateforme ?
Oui, TensorFlow.NET peut être utilisé dans des environnements .NET multiplateformes, permettant aux développeurs de créer des applications compatibles avec divers systèmes d'exploitation.
Comment puis-je éditer et signer des PDF dans une application C# ?
IronPDF fournit des fonctionnalités pour éditer et signer des documents PDF au sein d'une application C#, permettant une manipulation et une gestion robustes des PDF.
Quel soutien est disponible pour les développeurs utilisant TensorFlow.NET ?
TensorFlow.NET est soutenu par une communauté robuste et une documentation complète, facilitant pour les développeurs la recherche de ressources et d'exemples pour les aider dans leur processus de développement.
Comment TensorFlow.NET améliore-t-il l'environnement de développement C# ?
TensorFlow.NET améliore l'environnement de développement C# en intégrant les capacités d'apprentissage automatique de TensorFlow, permettant aux développeurs de tirer parti de toute la puissance de TensorFlow sans quitter l'écosystème .NET.
Où les développeurs peuvent-ils trouver des exemples pratiques d'utilisation d'IronPDF ?
Les développeurs peuvent trouver des exemples pratiques d'utilisation d'IronPDF sur la page de documentation d'IronPDF et via divers ressources en ligne et forums communautaires dédiés à la manipulation de PDF en .NET.




