IRONSOFTWAREHOME
MISES À JOUR POUR LES DÉVELOPPEURS

TensorFlow .NET (Comment ça fonctionne pour les développeurs)

Jacob Mellor, Directeur technique @ Team Iron
Jacob Mellor
Updated: 21 avril 2026

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

  1. Compatibilité TensorFlow : TensorFlow.NET offre 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.
  2. Haute Performance : TensorFlow.NET utilise 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.
  3. Intégration Facile : TensorFlow.NET s'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.
  4. Portabilité du Modèle : TensorFlow.NET permet 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.
  5. Flexibilité et Extensibilité : TensorFlow.NET offre 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.
  6. Soutien Communautaire et Documentation : TensorFlow.NET bé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# :

  1. 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);
  2. 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);
  3. É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");

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);
        }
    }
}

Exemple de sortie Hello TensorFlow

TensorFlow .NET (Comment cela fonctionne pour les développeurs) : Figure 1 - Sortie de l'application console

Avantages de l'utilisation de TensorFlow.NET

  1. Intégration transparente : TensorFlow.NET apporte 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.
  2. Performance et Évolutivité : TensorFlow.NET utilise 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.
  3. Environnement de Développement Familier : L'API TensorFlow.NET permet 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#.
  4. Interopérabilité et Portabilité : TensorFlow.NET facilite 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.
  5. Développement dirigé par la Communauté : TensorFlow.NET bé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

TensorFlow .NET (Comment cela fonctionne pour les développeurs) : Figure 2 - 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 :

  1. Conversion HTML en PDF : IronPDF peut 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.
  2. Support Multi-Plateforme : IronPDF fonctionne sur diverses plateformes .NET, y compris .NET Core, .NET Standard et .NET Framework. Il est compatible avec Windows, Linux, et macOS.
  3. É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.
  4. 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. IronPDF supporte également les mises en page réactives et les tailles de papier personnalisées.
  5. Conformité aux Normes : IronPDF adhè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.

TensorFlow .NET (Comment cela fonctionne pour les développeurs) : Figure 3 - Projet Visual Studio

Fournissez le nom et l'emplacement du projet.

TensorFlow .NET (Comment cela fonctionne pour les développeurs) : Figure 4 - Configuration 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.

TensorFlow .NET (Comment cela fonctionne pour les développeurs) : Figure 5 - TensorFlow.NET

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

TensorFlow .NET (Comment cela fonctionne pour les développeurs) : Figure 6 - Installer le package TensorFlow.Keras

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");
        }
    }
}

Explication du code

Décomposons l'extrait de code :

  1. 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.
  2. 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.

  3. Définir les constantes du tenseur :

    Le code définit trois constantes de tenseurs : a, b et c. Celles-ci sont initialisées avec les valeurs 5, 6, et 7, respectivement.

  4. 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.
  5. 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>";
  6. Opérations supplémentaires :

    Le code calcule la moyenne et la somme des constantes [a, b, c].

  7. Multiplications matricielles :

    Il effectue une multiplication matricielle entre matrix1 et matrix2 et affiche le résultat.

  8. Génération de PDF :

    ChromePdfRenderer et RenderHtmlAsPdf de IronPDF sont utilisés pour restituer la chaîne HTML en un document PDF.

Sortie

TensorFlow .NET (Comment cela fonctionne pour les développeurs) : Figure 7 - Sortie PDF

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"
}
JSON

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.

Jacob Mellor, Directeur technique @ Team Iron
Directeur technique

Jacob Mellor est directeur de la technologie chez Iron Software et un ingénieur visionnaire pionnier de la technologie C# PDF. En tant que développeur à l'origine de la base de code centrale d'Iron Software, il a façonné l'architecture des produits de l'entreprise depuis sa création, la transformant aux côtés du PDG Cameron Rimington en une entreprise de plus de 50 personnes au service de la NASA, de Tesla et d'agences gouvernementales mondiales.

...
Lire la suite

Articles connexes

Key in blue circle

Obtenez votre clé d'essai de 30 jours instantanément.

Your trial license will be sent to your email address

Aucune restriction. 100 % débloqué. Pas de carte bancaire.

OR
bullet_checkedAucune carte de crédit ou création de compte requiseAucune restriction. 100 % débloqué. Pas de carte bancaire.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Réservez votre Démonstration en direct gratuite
Booking Badge

De confiance par des millions d'ingénieurs dans le monde entier

Logos des clients d'Iron Software
Obtenez Votre Consultation sans Engagement
Remplissez le formulaire ci-dessous ou envoyez un email à sales@ironsoftware.com
Vos informations seront toujours gardées confidentielles.
De confiance par des millions d'ingénieurs dans le monde entier
Logos des clients d'Iron Software
Obtenez votre clé d'essai 30 jours gratuitement.
Aucune carte de crédit ou création de compte requise
Bibliothèque C# NuGet pour PDF
Installer avec NuGet

Version : 2026.9

PM > Install-Package IronPdf
nuget.org/packages/IronPdf/
  1. Dans l'explorateur de solutions, faites un clic droit sur Références, Gestion des packages NuGet
  2. Sélectionnez Parcourir et recherchez « IronPDF »
  3. Sélectionnez le package et installez
C# PDF DLL
Télécharger DLL

Version : 2026.9

ou téléchargez l'installateur Windows ici.

  1. Téléchargez et décompressez IronPDF à un emplacement tel que ~/Libs dans votre répertoire de solution
  2. Dans l'explorateur de solutions Visual Studio, faites un clic droit sur Références. Sélectionnez Parcourir, « IronPDF.dll »

Licences à partir de 999 $